• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
June 18, 2025, 00:24:07 am

Login with username, password and session length
Links
  Thmmy.gr portal
   Forum
   Downloads
   Ενεργ. Λογαριασμού
   Επικοινωνία
  
  Χρήσιμα links
   Σελίδα τμήματος
   Βιβλιοθήκη Τμήματος
   Elearning
   Φοιτητικά fora
   Πρόγραμμα Λέσχης
   Πρακτική Άσκηση
   Ηλεκτρονική Εξυπηρέτηση Φοιτητών
   Διανομή Συγγραμμάτων
   Ψηφιακό Καταθετήριο Διπλωματικών
   Πληροφορίες Καθηγητών
   Instagram @thmmy.gr
   mTHMMY
  
  Φοιτητικές Ομάδες
   ACM
   Aristurtle
   ART
   ASAT
   BEAM
   BEST Thessaloniki
   EESTEC LC Thessaloniki
   EΜΒ Auth
   IAESTE Thessaloniki
   IEEE φοιτητικό παράρτημα ΑΠΘ
   SpaceDot
   VROOM
   Panther
  
Πίνακας Ελέγχου
Welcome, Guest. Please login or register.
June 18, 2025, 00:24:07 am

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Πρακτική Άσκηση ΤΗΜΜΥ 201...
by chris_p30
[Today at 00:22:48]

[Μεταφορά και Διανομή ΗΕ]...
by Nikos_313
[Today at 00:10:29]

Ισραήλ - Ιράν: Πόλεμος στ...
by Katarameno
[June 17, 2025, 21:32:50 pm]

[Ψηφιακά Ολοκληρωμένα Κυκ...
by tzortzis
[June 17, 2025, 21:25:42 pm]

[Εφ.Θερμοδυναμική] Γενικέ...
by PAPARI69
[June 17, 2025, 20:59:13 pm]

[Γραφική] Λυμένα θέματα
by okanpala
[June 17, 2025, 18:56:22 pm]

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[June 17, 2025, 14:25:00 pm]

Αντικατάστασης πυκνωτή σε...
by george14
[June 17, 2025, 13:58:20 pm]

Πότε θα βγει το μάθημα; -...
by tzortzis
[June 17, 2025, 13:19:53 pm]

Αποτελέσματα Εξεταστικής ...
by george14
[June 17, 2025, 12:08:25 pm]

[ΨEE] Γενικές απορίες και...
by Juror8
[June 17, 2025, 12:06:57 pm]

[Οργάνωση Υπολογιστών] Γε...
by RAFI
[June 16, 2025, 22:46:54 pm]

[Σ.Π.Η.Ε.] Γενικές απορίε...
by Nikos_313
[June 16, 2025, 19:49:00 pm]

[ΘΤΠΑ] Γενικές απορίες κα...
by Nikos_313
[June 16, 2025, 16:56:56 pm]

[Αρχές Οικονομίας] Να επι...
by _Trob
[June 16, 2025, 13:28:21 pm]

[Σ.Α.Π.Γ.] Εργασία 2025
by Nikos_313
[June 16, 2025, 12:13:45 pm]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[June 16, 2025, 01:56:37 am]

[Σ.Π.Η.Ε.] Παλιά θέματα -...
by nmpampal
[June 15, 2025, 06:43:15 am]

Το thmmy.gr στο instagram...
by Mr Watson
[June 15, 2025, 00:50:23 am]

[Λογισμός ΙΙ] Απορίες σε...
by el mariachi
[June 14, 2025, 20:47:07 pm]
Στατιστικά
Members
Total Members: 9961
Latest: Poli
Stats
Total Posts: 1426702
Total Topics: 31710
Online Today: 205
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 37
Guests: 148
Total: 185
gtapalis
Captain
sofoklhs_pizza
Akis Papanikolaou
chris_p30
engineer2030
chriskazakos
bit11
rafail zisiadis
Βασιλης
giorgosss03
christina02
κοτζακ
Nianaro
soktas
Aftzidou
kriton
gkarapip
maestros
alexlabis
ThanosV
Nikos_313
mitsos753905
chaniotism
gcheristanidhs
mpaltzak
ANDVRONTZOS
IBOURAS
Διάλεξις
spetrakis
Εμφάνιση

Νέα για πρωτοετείς
Είσαι πρωτοετής;... Καλώς ήρθες! Μπορείς να βρεις πληροφορίες εδώ. Βοήθεια για τους καινούργιους μέσω χάρτη.
Κατεβάστε εδώ το Android Application για εύκολη πρόσβαση στο forum.
Ανεβάζετε τα θέματα των εξετάσεων στον τομέα Downloads με προσοχή στα ονόματα των αρχείων!

Νέα!
Για αλλαγή του public name σας, επικοινωνήστε με έναν από τους Admins.
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 2ο Εξάμηνο > Αντικειμενοστραφής Προγραμματισμός (Moderators: chatzikys, tzortzis) > C++ Εξετασεις 2007
0 Members and 1 Guest are viewing this topic.
Pages: 1 [2] 3 Go Down Print
Author Topic: C++ Εξετασεις 2007  (Read 7301 times)
CyberCaesar
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 2493



View Profile
Re: C++ Εξετασεις 2007
« Reply #15 on: October 08, 2007, 17:58:03 pm »

για αλλες περιπτωσεις ομως???
Logged

Brain the size of a planet and I'm studying THMMY... You call that job satisfaction? Cause I don't.

"What's life? Life's easy. A quirk of matter. Nature's way of keeping meat fresh."
Johnny English
Veteran
Καταστραμμένος
******
Posts: 5981


i know nothing


View Profile
Re: C++ Εξετασεις 2007
« Reply #16 on: October 08, 2007, 18:00:31 pm »

Quote from: CyberCaesar on October 08, 2007, 17:58:03 pm
για αλλες περιπτωσεις ομως???

Αν έχεις διαφορετική ποσότητα (ή τύπο) ορισμάτων... απλώς προσθέτεις μία συνάρτηση αρχικών συνθηκών..

Αλλιώς.. ενδεχομένως μπορείς να κάνεις αλλαγές.. βάζοντας παραγόμενες κλάσεις από την 1η.. αλλά πάλι δε θα χρειαστεί να πειράξεις την compare, το οποίο είναι και ο μόνος περιορισμός.
Logged
CyberCaesar
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 2493



View Profile
Re: C++ Εξετασεις 2007
« Reply #17 on: October 08, 2007, 18:05:51 pm »

λογικο ακουγεται. αλλα δεν το σκεφτηκα ετσι....
Logged

Brain the size of a planet and I'm studying THMMY... You call that job satisfaction? Cause I don't.

"What's life? Life's easy. A quirk of matter. Nature's way of keeping meat fresh."
Ianna
Θαμώνας
****
Gender: Female
Posts: 427



View Profile
Re: C++ Εξετασεις 2007
« Reply #18 on: October 08, 2007, 18:37:14 pm »

Αν κάποιος έχει πάρει τα θέματα ας τα ανεβάσει να τα δούμε κι εμείς που δεν προλάβαμε να δώσουμε το μάθημα...thanx
Logged

The Crown Of My Work..Is What I Shall Gain..At The End Of My Days...
lekouras
Καταξιωμένος/Καταξιωμένη
***
Gender: Male
Posts: 159



View Profile
Re: C++ Εξετασεις 2007
« Reply #19 on: October 08, 2007, 21:11:26 pm »

και εγω πανω κατω σαν τον juan το εκανα ,απλα εβαζα 2 τιμες στην κλαση ,αφου 1α εβρισκα την αποδοση και το κοστος στην main().και εβαλα ως public την compare(A a,A b)

ostream &operator<(ostream &s,A b)
{
   int i;
   for(i=0;i<b.n;i++)
   {
      if(b.numbers%2==0)    --------------------------------------------------------------->εδω νομιζω θελει *( b.numbers+i) ή b.numbers(i)   %2==0
      s<"numbers["<<i<<"]= "<<b.numbers<<"\n";------------------------------->και εδω
                                                                                                          ισχυει?
   }                                                                                                     

   return s;
}
« Last Edit: October 08, 2007, 21:19:07 pm by lekouras » Logged
edenaxas
Guest
Re: C++ Εξετασεις 2007
« Reply #20 on: October 09, 2007, 12:59:33 pm »

Quote from: Juan on October 08, 2007, 17:33:16 pm
Παιδιά.. εγώ το 1ο το έκανα με μία κλάση, βάζοντας την κατάλληλη συνάρτηση αρχικών συνθηκών κάθε φορά.  Undecided

Η συνάρτηση είχε 2 μεταβλητές (Κόστος , Απόδοση) και διάλεγες τον τύπο του εργοστασίου ανάλογα με τα ορίσματα που έβαζες στις αρχικές συνθήκες..

Έτσι και η compare.. δε χρειάζεται καμία αλλαγή σε περίπτωση που προσθέσης νέο τύπο..

Λάθος..?

(Ομάδα Β πάντα ε..)

Quote
βασικα και εγω ετσι ακριβως το εκανα...
Logged
Junior
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1349


View Profile
Re: C++ Εξετασεις 2007
« Reply #21 on: October 10, 2007, 15:39:36 pm »

Είμαι σχεδόν σίγουρος ότι ο Κορτέσης στο πρώτο θέμα ήθελε να δει virtual συνάρτηση. Βέβαια πολλούς έχω ακούσει να το κάναν με άλλους τρόπους και ψιλοκάλυπταν αυτά που ζητούσε (δηλαδή να είναι μια συνάρτηση ανεξάρτητη από το είδος της παραγωγής ή του σχήματος του αγρού). Αλλά απλά νομίζω ότι δεν ήθελε αυτό...
Logged
Johnny English
Veteran
Καταστραμμένος
******
Posts: 5981


i know nothing


View Profile
Re: C++ Εξετασεις 2007
« Reply #22 on: October 10, 2007, 16:05:03 pm »

Κοίτα..

μια φορά κι έναν καιρό..

μου ζήτησαν να δω αν είναι ένας αριθμός άρτιος ή περιττός.

Εγώ δε γνώριζα τότε τον τελεστή του υπολοίπου. Οπότε ύψωσα έναν αρνητικό αριθμό στη δύναμη του αριθμού που έψαχνα να βρω τί είναι.. και είπα πως αν το αποτέλεσμα είναι θετικός.. τότε είναι άρτιος. Αλλιώς είναι περιττός.

Το αποτέλεσμα είναι σωστό. Αν το ήθελαν με τον τελεστή... ας μου το έλεγαν από πριν Wink
Logged
Junior
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1349


View Profile
Re: C++ Εξετασεις 2007
« Reply #23 on: October 10, 2007, 23:03:41 pm »

Βρεεε Χουάν!
Δεν εννοούσα αυτό! Πολύ καλή σκέψη και ολόσωστο αυτό που έκανες.
Εγώ όμως έλεγα για το 1ο θέμα. Η ομάδα Α είχε κάτι με αγρούς και η ομάδα Β αν δεν κάνω λάθος με παραγωγή ηλεκτρικής ενέργειας. Φαντάζομαι θα ήταν ίδια φιλοσοφία. Σε αυτό ήθελε να δει τη virtual... (δηλαδή πολυμορφισμό κατά το χρόνο εκτέλεσης)
Logged
edenaxas
Guest
Re: C++ Εξετασεις 2007
« Reply #24 on: October 11, 2007, 10:38:46 am »

μπορει να μου εξηγησει καποιος ποια συναρτηση κανατε virtual?
Logged
edenaxas
Guest
Re: C++ Εξετασεις 2007
« Reply #25 on: October 11, 2007, 21:11:34 pm »

Quote from: Junior on October 10, 2007, 23:03:41 pm
Βρεεε Χουάν!
Δεν εννοούσα αυτό! Πολύ καλή σκέψη και ολόσωστο αυτό που έκανες.
Εγώ όμως έλεγα για το 1ο θέμα. Η ομάδα Α είχε κάτι με αγρούς και η ομάδα Β αν δεν κάνω λάθος με παραγωγή ηλεκτρικής ενέργειας. Φαντάζομαι θα ήταν ίδια φιλοσοφία. Σε αυτό ήθελε να δει τη virtual... (δηλαδή πολυμορφισμό κατά το χρόνο εκτέλεσης)
λοιπον, ετσι οπως το σκεφτομαι δεν μπορεις να κανεις virtual συναρτηση επειδη, αν κανεις μια abstact κλαση η οποια θα κληρονομειται καθε φορα απο καποιο καινουριο συστημα παραγωγης, πρεπει να εχεις συγκεκριμενο περιορισμο στα ορισματα αυτης της κλασης, ετσι εχεις προβλημα καθως καθε συστημα εχει διαφορετκο τροπο για να υπολογιζει το κερδος/αποδοτικοτητα του(3 ή 4 ορισματα). αν προσπαθησεις να κανεις virtual και δεν εχεις συμφωνια στα ορισματα των παραγομενων, δεν μεταγλωττιζεται, ενω αν κανεις προεπιλεγμενα ορισματα, δεν εχεις σωστο πολυμορφισμο (περιοριζεις τις δυνατοτητες σου).
δευτερον, η ασκηση ελεγε οτι πρεπει να διαβαζει η main και μπλα μπλα... αρα δεν μπορεις να μην χρησιμοποιησεις ορισματα για το κοστος/αποδοτικοτητα. ετσι ωστε πχ να διαβαζει η virtual καθε παραγομενης τα στοιχεια που χρειαζεται...
με τον περιορισμο του να διαβαζεις στην Main και να δινεις τον ελεγχο καπου, και με το οτι δεν μπορεις να εχεις περιορισμενων δυνατοτητων κωδικα, ο μονος τροπος υλοποιησης που βλεπω εγω ειναι με καποιες μεταβλητες, οπως λεει o juan...
Logged
Junior
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1349


View Profile
Re: C++ Εξετασεις 2007
« Reply #26 on: October 13, 2007, 20:02:43 pm »

Η virtual συνάρτηση θα είναι η float say_area(void)
Δε χρειάζεται ορίσματα, αφού οι μεταβλητές που θα χρησιμοποιεί είναι μέλη του αντικειμένου για το οποίο καλείται.

Επειδή η main διαβάζει τις τιμές (πχ μήκος-πλάτος ή ακτίνα κυκλικού αγρού), ο constructor κάθε (παραγόμενης) κλάσης θα παίρνει ως ορίσματα αυτές τις τιμές και θα θέτει τις μεταβλητές του αντικειμένου ίσες με αυτές τις τιμές. Βέβαια θα πρέπει πρώτα να διαβάζονται οι τιμές από τη main και μετά να δημιουργούνται τα αντικείμενα.
Logged
edenaxas
Guest
Re: C++ Εξετασεις 2007
« Reply #27 on: October 14, 2007, 01:24:33 am »

Quote from: Junior on October 13, 2007, 20:02:43 pm
Η virtual συνάρτηση θα είναι η float say_area(void)
Δε χρειάζεται ορίσματα, αφού οι μεταβλητές που θα χρησιμοποιεί είναι μέλη του αντικειμένου για το οποίο καλείται.

Επειδή η main διαβάζει τις τιμές (πχ μήκος-πλάτος ή ακτίνα κυκλικού αγρού), ο constructor κάθε (παραγόμενης) κλάσης θα παίρνει ως ορίσματα αυτές τις τιμές και θα θέτει τις μεταβλητές του αντικειμένου ίσες με αυτές τις τιμές. Βέβαια θα πρέπει πρώτα να διαβάζονται οι τιμές από τη main και μετά να δημιουργούνται τα αντικείμενα.
βασικα ετσι χρησιμοποιεις τη λογικη sony και καλα χρησιμοποιω virtual ακομα και αν δεν χρειαζεται, μιας; και η συναρτηση που κανεις virtual ουσιαστικα ειναι πλεονασμος, καθως α)την ενεργεια που κανεις μπορει καλλιστα να την κανεις στην συναρτηση δομησης και β)η ουσια της υλοποιησης σου ειναι ετσι η αλλιως οι κοινες μεταβλητες σε ολες τις κλασεις τις οποιες με τον ενα ή τον αλλο τροπο τροποποιεις.anyway we'll see Cheesy
Logged
Junior
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1349


View Profile
Re: C++ Εξετασεις 2007
« Reply #28 on: October 14, 2007, 22:06:36 pm »

Δεν έχω ίδιες μεταβλητές σε όλες τις κλάσεις. Η μία παραγόμενη έχει μόνο τη μεταβλητή "ακτίνα" και η άλλη παραγόμενη μόνο τις μεταβλητές "μήκος" και "πλάτος".

Μάλλον δεν κατάλαβες τον τρόπο που δουλεύει η virtual συνάρτηση, άρα και το τι κερδίζουμε χρησιμοποιώντας την.
Με virtual συναρτήσεις δε χρειάζεται έλεγχος ούτε για ορίσματα, ούτε για "κρυφές" μεταβλητές που μου λένε τι τύπος είναι το αντικείμενο. Κάθε υλοποίηση της virtual λειτουργεί σαν να υπήρχαν αντικείμενα μόνο του τύπου για τα οποία δουλεύει.

Τελικά, κάθε αντικείμενο έχει και τις δικές του μεταβλητές και τις δικές του συναρτήσεις που δουλεύουν πάνω σε αυτές τις μεταβλητές. Όταν διαφορετικοί τύποι αντικειμένων έχουν συνάρτηση με ίδιο όνομα (δηλαδή virtual), τότε, καλώντας αυτή τη συνάρτηση δεν ξέρουμε τι θα εκτελεστεί. Εξαρτάται από τον τύπο του αντικειμένου που την καλεί!
Logged
edenaxas
Guest
Re: C++ Εξετασεις 2007
« Reply #29 on: October 15, 2007, 13:00:14 pm »

Quote from: Junior on October 14, 2007, 22:06:36 pm
Δεν έχω ίδιες μεταβλητές σε όλες τις κλάσεις. Η μία παραγόμενη έχει μόνο τη μεταβλητή "ακτίνα" και η άλλη παραγόμενη μόνο τις μεταβλητές "μήκος" και "πλάτος".

Μάλλον δεν κατάλαβες τον τρόπο που δουλεύει η virtual συνάρτηση, άρα και το τι κερδίζουμε χρησιμοποιώντας την.
Με virtual συναρτήσεις δε χρειάζεται έλεγχος ούτε για ορίσματα, ούτε για "κρυφές" μεταβλητές που μου λένε τι τύπος είναι το αντικείμενο. Κάθε υλοποίηση της virtual λειτουργεί σαν να υπήρχαν αντικείμενα μόνο του τύπου για τα οποία δουλεύει.

Τελικά, κάθε αντικείμενο έχει και τις δικές του μεταβλητές και τις δικές του συναρτήσεις που δουλεύουν πάνω σε αυτές τις μεταβλητές. Όταν διαφορετικοί τύποι αντικειμένων έχουν συνάρτηση με ίδιο όνομα (δηλαδή virtual), τότε, καλώντας αυτή τη συνάρτηση δεν ξέρουμε τι θα εκτελεστεί. Εξαρτάται από τον τύπο του αντικειμένου που την καλεί!
χαιρω πολυ! αδερφε ξερω πως λειτουργουν οι virtual συναρτησειs
στειλε σε Pm τον ενα προχειρο κωδικα με την υλοποιηση σου...θα σου στειλω κι εγω οταν εχω χρονο
Logged
Pages: 1 [2] 3 Go Up Print
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Scribbles2 | TinyPortal © Bloc | XHTML | CSS
Loading...