Εξέταση C++ [Φεβρουάριος 2009]

Διδάσκοντες: Α. Αραμπατζής, Λέκτορας

Εξέταση C++ [Φεβρουάριος 2009]

Δημοσίευσηαπό laplace » 01 Δεκ 2008, 04:37

Ο μεταπτυχιακός μας είπε οτι η εξέταση στο μάθημα γίνεται κατευθείαν στον υπολογιστή με compiler κλπ.Γνωρίζει κανείς αν ισχύει αυτό? Κάποιος που έχει περάσει το μάθημα εννοώ
Τελευταία επεξεργασία από megatron και 11 Αύγ 2010, 09:07, έχει επεξεργασθεί 2 φορά/ες συνολικά
Αιτία: Προσθήκη ημερομηνίας στον τίτλο
laplace
Full Member
 
Δημοσιεύσεις: 148
Εγγραφή: 05 Φεβ 2008, 17:59

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό Stokos » 01 Δεκ 2008, 10:24

Ναι στον υπολογιστή γράφετε αλλά πρέπει να αντιγράψετε και το κώδικά σας στο χαρτί στο τέλος (και βαθμολογείται ότι είναι στο χαρτί, όχι ότι κάνατε στον υπολογιστή). Απλά σας δίνεται αυτή η δυνατότητα για να αποφύγετε μικρολαθάκια στο κώδικα π.χ. να ξεχάσετε κανένα ; καμιά παρένθεση ή να διορθώσετε και άλλα πιο σημαντικά λάθη, να επιβεβαιώσετε ότι το πρόγραμμα δουλεύει κτλ.
Stokos
 

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό laplace » 01 Δεκ 2008, 19:47

Ωραία,πολύ καλό αυτό.Ευχαριστώ για ενημέρωση.
laplace
Full Member
 
Δημοσιεύσεις: 148
Εγγραφή: 05 Φεβ 2008, 17:59

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό mpougatsas » 13 Φεβ 2009, 00:00

Έναν σχολιασμό για τα θέματα;;;
Στοιχήματα θα πέσουν;;;
Πόσο πληρώνει το να περάσουν λιγότερα από 3 άτομα, να ποντάρω μέχρι και την ψυχή μου...;;; :-\

Με λίγα λόγια...
Προσωπικά αφιέρωνα υπερβολικά πολύ χρόνο στο να ασχολούμαι με το συγκεκριμένο μάθημα, αλλά απότι φάνηκε ούτε αυτό ήταν αρκετό...
Προσωπική εκτίμηση είναι οτι το πλήθος των θεμάτων δεν σου άφηνε περιθώριο να γράψεις πάνω από 6-7 ακόμα κι αν ήσουν ο Bill Gates ξερωγώ... Θα ήθελα να δώ κάποιον εκ των επιμελητών των θεμάτων να τα λύνει σε ένα 2ωρο... :-X

Θα ήθελα να ακούσω και απόψεις άλλων πάντως... Εκφραστείτε υπεύθυνα... :D
Άβαταρ μέλους
mpougatsas
Full Member
 
Δημοσιεύσεις: 224
Εγγραφή: 21 Μαρ 2008, 12:58
Φοιτητής ΗΜΜΥ: Ναι

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό Pagouras » 13 Φεβ 2009, 00:05

mpougatsas έγραψε:Έναν σχολιασμό για τα θέματα;;;
Στοιχήματα θα πέσουν;;;
Πόσο πληρώνει το να περάσουν λιγότερα από 3 άτομα, να ποντάρω μέχρι και την ψυχή μου...;;; :-\

Με λίγα λόγια...
Προσωπικά αφιέρωνα υπερβολικά πολύ χρόνο στο να ασχολούμαι με το συγκεκριμένο μάθημα, αλλά απότι φάνηκε ούτε αυτό ήταν αρκετό...
Προσωπική εκτίμηση είναι οτι το πλήθος των θεμάτων δεν σου άφηνε περιθώριο να γράψεις πάνω από 6-7 ακόμα κι αν ήσουν ο Bill Gates ξερωγώ... Θα ήθελα να δώ κάποιον εκ των επιμελητών των θεμάτων να τα λύνει σε ένα 2ωρο... :-X

Θα ήθελα να ακούσω και απόψεις άλλων πάντως... Εκφραστείτε υπεύθυνα... :D


Αμα ειναι και το σεπτεμβρη οπως σημερα >:( ....με βλεπω του χρονου να καταληγω σε μεταφορα θερμοτητας. Πολυ λιγος χρονος για το φορτο των θεματων, και 2/3 θεματα με υλη η οποια καλυφθηκε μονο με θεωρια-ουτε στην εργασια υπηρχε κατι τετοιο, ουτε μας δωθηκε καποια ασκηση να λυσουμε για να τα εμπεδωσουμε >:(
Άβαταρ μέλους
Pagouras
Sr. Member
 
Δημοσιεύσεις: 340
Εγγραφή: 04 Απρ 2008, 11:18

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό Stokos » 13 Φεβ 2009, 00:53

Μπορείτε να μας πείτε τι θέματα έπεσαν? (και αν μπορώ θα σας πω τις λύσεις για το Σεπτέμβρη) - Γιατί εγώ πέρυσι είχα γράψει 9.5 και είχα φύγει στη μισή ώρα και "Bill Gates" δεν είμαι ;)
Stokos
 

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό mpougatsas » 13 Φεβ 2009, 01:20

Δεν αμφιβάλλω... Και εγώ σε προηγούμενα μαθήματα του συγκεκριμένου καθηγητή, είχα γράψει μεγάλους βαθμούς τελειώνοντας και σχετικά γρήγορα... ;)

Επίσης να προσθέσω ότι δεν ήταν τόσο η δυσκολία των θεμάτων (αν και απαιτούσαν να έχεις λιώσει μόνος σου, διότι εκτός από τη θεωρία δεν τα ξανάδαμε), όσο το πλήθος... Αν είχα 4 ώρες, μπορούσα να δώσω γραπτό με άριστο βαθμό... Το θέμα είναι οτι εκ των πραγμάτων χρονικά ΔΕΝ ΒΓΑΙΝΑΜΕ... :-X Άλλες φορές μπορεί να έβαζε δυσκολούτσικα σχετικά (ίδιο επίπεδο με σήμερα πχ), αλλά πάντα προλάβαινες άνετα έως πολύ άνετα... Τουλάχιστον το Σεπτέμβρη ας ελπίσουμε να επιστρέψει στα παλιά συστήματα... :-\

Τώρα για τα θέματα που ρώτησες, δεν θυμάμαι κάθε λεπτομέρεια για να τα πώ, πάντως είχε 2 κομμάτια κώδικα να βρούμε και να διορθώσουμε τα (λογικά) λάθη [στο 1ο έπρεπε να κάνουμε accessor-mutator συναρτήσεις, ωστέ να έχουμε πρόσβαση στις private μεταβλητες και στο 2ο να κάνουμε τον αποδομητή μια στοίβας να μην διαγράφει μόνο τον top pointer αλλά όλη τη στοίβα]. Μετά είχε να κάνουμε μια φίλια συνάρτηση που να δεχόταν σαν ορίσματα 2 στοίβες και θα αντέγραφε την μία στην άλλη. Είχε να υπερφορτώσουμε τον τελεστή = ωστε να επιτύχουμε το ίδιο αποτέλεσμα με πάνω και να σχολιάσουμε τί θα γινόταν αν προσπαθούσαμε να κάνουμε την ίδια εξίσωση χωρίς να έχουμε υπερφορτώσει τον τελεστή. Τέλος, είχε ένα θέμα όπου κάναμε 4 κλάσεις (καθεμμιά περιείχε από 2-3-4 μεταβλητές) με σχέσεις κληρονομικότητας μεταξύ τους, κάναμε για όλες τις accessor-mutator συναρτήσεις καθώς και print και στη συνέχεια ζητούσε αφού κάναμε μια συνδεδεμένη λίστα με στοιχεία από όλες τις κλάσεις, μετά να επεξεργαζόμασταν τη λίστα αυτή ωστέ να κάνουμε άλλες 3 που θα αποτελούνταν μόνο από κόμβους που προέρχονταν απ την ίδια κλάση... Όλο αυτό το σύστημα έπρεπε να εκμεταλεύεται τον πολυμορφισμό, καθώς είχαμε και virtual κόλπα! :D

Μόνο απ το τελευταίο θέμα πιστεύω, γίνεται κατανοητό τί εννοούσα όταν μιλούσα για ΟΓΚΟ ασκήσεων... :-X
Άβαταρ μέλους
mpougatsas
Full Member
 
Δημοσιεύσεις: 224
Εγγραφή: 21 Μαρ 2008, 12:58
Φοιτητής ΗΜΜΥ: Ναι

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό Stokos » 13 Φεβ 2009, 02:22

mpougatsas έγραψε:Τώρα για τα θέματα που ρώτησες, δεν θυμάμαι κάθε λεπτομέρεια για να τα πώ, πάντως είχε 2 κομμάτια κώδικα να βρούμε και να διορθώσουμε τα (λογικά) λάθη [στο 1ο έπρεπε να κάνουμε accessor-mutator συναρτήσεις, ωστέ να έχουμε πρόσβαση στις private μεταβλητες

Ναι αυτό είναι κλασικό θέμα για C++, δε νομίζω να παίρνει παραπάνω από 2-3 λεπτά να το κάνεις.

mpougatsas έγραψε:και στο 2ο να κάνουμε τον αποδομητή μια στοίβας να μην διαγράφει μόνο τον top pointer αλλά όλη τη στοίβα].

Ε εντάξει αυτό λογικά θα το κάνατε και στο εργαστήριο όταν κάνατε για τις στοίβες... Ουσιαστικά ένα while με 3 σειρές κώδικα μέσα του και χρησιμοποιείς 2 temp μεταβλητές... Επίσης γύρω στα 4-5 λεπτά.

mpougatsas έγραψε:Μετά είχε να κάνουμε μια φίλια συνάρτηση που να δεχόταν σαν ορίσματα 2 στοίβες και θα αντέγραφε την μία στην άλλη. Είχε να υπερφορτώσουμε τον τελεστή = ωστε να επιτύχουμε το ίδιο αποτέλεσμα με πάνω και να σχολιάσουμε τί θα γινόταν αν προσπαθούσαμε να κάνουμε την ίδια εξίσωση χωρίς να έχουμε υπερφορτώσει τον τελεστή.

Τις κλάσεις που υλοποιούν τις στοίβες σας τις έδινε ή έπρεπε να τις γράψετε εσείς? Αν σας τις έδινε τότε θες γύρω στα 30 λεπτά βαριά βαριά για να το κάνεις αυτό (ουσιαστικά αποδομείς τη μια στοίβα και πέρνεις τα στοιχεία από τη μία στοίβα και τα κάνεις ένα ένα push στην άδεια). Η υπερφόρτωση είναι ενός λεπτού δουλειά αφού υλοποιήσεις τη παραπάνω συνάρτηση. Βέβαια αν δε σας έδινε την υλοποίηση της στοίβας και έπρεπε να τη κάνετε εσείς είχε αρκετή δουλειά...

mpougatsas έγραψε:Τέλος, είχε ένα θέμα όπου κάναμε 4 κλάσεις (καθεμιά περιείχε από 2-3-4 μεταβλητές) με σχέσεις κληρονομικότητας μεταξύ τους, κάναμε για όλες τις accessor-mutator συναρτήσεις καθώς και print

Πέντε λεπτά δουλειά είναι αυτό, τίποτα το ιδιαίτερο...

mpougatsas έγραψε:και στη συνέχεια ζητούσε αφού κάναμε μια συνδεδεμένη λίστα με στοιχεία από όλες τις κλάσεις, μετά να επεξεργαζόμασταν τη λίστα αυτή ωστέ να κάνουμε άλλες 3 που θα αποτελούνταν μόνο από κόμβους που προέρχονταν απ την ίδια κλάση... Όλο αυτό το σύστημα έπρεπε να εκμεταλεύεται τον πολυμορφισμό, καθώς είχαμε και virtual κόλπα! :D

Εδώ ουσιαστικά ζητούσε πλήρη υλοποίηση της συνδεδεμένης λίστας και μερικές εφαρμογές πάνω στη κλάση που θα φτιάξετε οπότε όντως έχει αρκετή δουλεία... 2++ ώρες υπολογίζω...

---

Δε θέλω να κάνω το δικηγόρο του διαβόλου σε καμία περίπτωση αλλά εμένα μου φαίνεται ότι θα χρειαστώ περίπου 2:30 για να λύσω αυτά τα θέματα... Βέβαια εγώ είμαι και μεγαλύτερο έτος και έχω ασχοληθεί λίγο παραπάνω με προγραμματισμό, οπότε κάποιος 2οετής σίγουρα θα χρειαζόταν 3 ώρες και ίσως και παραπάνω, δηλ. τσίμα τσίμα του έφτανε ο χρόνος όπως λέτε και εσείς...
Τελευταία επεξεργασία από Stokos και 13 Φεβ 2009, 02:28, έχει επεξεργασθεί 1 φορά/ες συνολικά
Stokos
 

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό mpougatsas » 13 Φεβ 2009, 02:27

Εκεί καταλήγω... Όπως είπες, εσύ που έχεις περάσει και το μάθημα με 9,5 ήθελες κοντά 3 ώρες...

Εμείς είχαμε ένα 2ωρο... :-X Επίσης εκεί που μιλάς για 5λεπτά, πράγματι, το να το σκεφτείς ήταν γελοίο, πιο πολύ χρόνο ήθελε να γράψεις όλο το κατεβατό... :D
Άβαταρ μέλους
mpougatsas
Full Member
 
Δημοσιεύσεις: 224
Εγγραφή: 21 Μαρ 2008, 12:58
Φοιτητής ΗΜΜΥ: Ναι

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό Stokos » 13 Φεβ 2009, 02:32

Για 5 λεπτά μιλάω μόνο στις accessor-mutator που είναι μια σειρά κώδικας:

Κώδικας: Επιλογή όλων
!Accessor
double getVar() {return var;}
!Mutator
void putVar(double content) {var = content;}


και επίσης στο delete που είναι 3 σειρές κώδικα:

Κώδικας: Επιλογή όλων
NodeType *temp,*temp2
temp = start_pointer;
while(temp!=NULL) {temp2=temp; temp=temp->next; delete temp2;}


Edit: Έκανες post 2:27 και σου απάντησα 2:32 ακριβώς 5 λεπτά :P
Stokos
 

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό thanasis90 » 15 Φεβ 2009, 15:02

Να σε ρωτήσω κάτι άκυρο γιατί στην αποδόμιση της στοίβας χρησιμοποιείς έναν pointer παραπάνω αφού δεν σε ενδιαφέρει να κρατήσεις τον TopPtr μετά?

NodeType *temp2
while( start_pointer!=NULL) {temp2= start_pointer; start_pointer= start_pointer->next; delete temp2;}

Αυτό δεν αρκεί?
thanasis90
Newbie
 
Δημοσιεύσεις: 9
Εγγραφή: 24 Φεβ 2008, 17:19

Re: Εξεταστική στη C++ 2008-2009

Δημοσίευσηαπό Stokos » 15 Φεβ 2009, 17:55

thanasis90 έγραψε:Να σε ρωτήσω κάτι άκυρο γιατί στην αποδόμιση της στοίβας χρησιμοποιείς έναν pointer παραπάνω αφού δεν σε ενδιαφέρει να κρατήσεις τον TopPtr μετά?

NodeType *temp2
while( start_pointer!=NULL) {temp2= start_pointer; start_pointer= start_pointer->next; delete temp2;}

Αυτό δεν αρκεί?


Ε ναι το ίδιο πράγμα είναι ακριβώς.
Stokos
 

Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 7 επισκέπτες