THMMY.gr

Μαθήματα Βασικού Κύκλου => Αντικειμενοστραφής Προγραμματισμός => Topic started by: SaLaSaR on October 07, 2007, 15:31:24 pm



Title: [C++] 3o θεμα 2003
Post by: SaLaSaR on October 07, 2007, 15:31:24 pm
Γεια σας παίδες, το 3ο θεμα του 2003 με την εκτυπωση το έχει κάνει κανείς;Μπορεί κανεις να το κάνει μια επεξήγηση τι κάνει αυτή η εντολή *(int *)p και η κάτω *(((int *)p)+1); :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D


Title: Re: C++ 3o θεμα 2003
Post by: filmst_r on October 07, 2007, 15:59:25 pm
Ρίξε μια ματια εδώ:
http://www.thmmy.gr/smf/index.php?topic=10698.0 (http://www.thmmy.gr/smf/index.php?topic=10698.0)

(Ευχαριστούμε edenaxas!!! :))


Title: Re: C++ 3o θεμα 2003
Post by: larry-4- on October 07, 2007, 19:40:01 pm
η τρίτη άσκηση έχει λάθη στα νούμερα όχι στα σχολία ανεβάζω την σωστη, όπως τα εκτυπώνει και ο compiler.
και αυτό διότι δεν έλαβε υπόψη του την αφαίρεση t-l και την πρόσθεση t+l


Title: Re: C++ 3o θεμα 2003
Post by: l0v3null on October 07, 2007, 21:27:51 pm
εμενα δε μου φανηκε τπτ περιεργο,...μαλιστα οντως κι εγω το ετρεξα και βγηκαν τα αναμενομενα....?!?


Title: Re: C++ 3o θεμα 2003
Post by: jeffaldo on October 07, 2007, 21:53:44 pm
η τρίτη άσκηση έχει λάθη στα νούμερα όχι στα σχολία ανεβάζω την σωστη, όπως τα εκτυπώνει και ο compiler.
και αυτό διότι δεν έλαβε υπόψη του την αφαίρεση t-l και την πρόσθεση t+l
κ εμενα ετσι την εβγαλε


Title: Re: C++ 3o θεμα 2003
Post by: filmst_r on October 07, 2007, 22:32:16 pm
Νομίζω οτί απλά υπάρχει ένα μπέρδεμα όσον αφορά τη συνάρτηση δόμησης της C: στα θέματα οι πράξεις που γίνονται είναι οι k=t+l και  m=t-l ενώ στις λύσεις του edenaxas είναι οι k=t+1 και m=t-1. Δεν τα έτρεξα αλλά αυτό πρέπει να ναι...
(Λογικό το μπέρδεμα τόσο που μοιάζουν το l και το 1 :P)

Και για να σιγουρευτώ οτί κατάλαβα σωστά, όταν έχουμε κληρονομικότητα, οι μεταβλητές της παράγωγης τάξης αποθηκεύονται με την παρακάτω σειρά;;;;
|1η_βασική::1η_μεταβλητή_1ης_βασικής|
|1η_βασική::2η_μεταβλητή_1ης_βασικής|
(...)
|1η_βασική::n-ή_μεταβλητή_1ης_βασικής|
(...)
|n-ή_βασική::1η_μεταβλητή_n-ής_βασικής|
(...)
|n-ή_βασική::n-ή_μεταβλητή_n-ής_βασικής|   
(...)
|παράγωγη::1η_μεταβλητή_παράγωγης|
(...)
|παράγωγη::n-ή_μεταβλητή_παράγωγης|

Μπορεί κανείς να το επιβεβαιώσει;;;; (Αν βγάλει άκρη απ'αυτό που έγραψα... ::))


Title: Re: C++ 3o θεμα 2003
Post by: SaLaSaR on October 07, 2007, 22:56:34 pm
Thanks ρε παιδες 8) 8) 8) 8) 8) 8)


Title: Re: C++ 3o θεμα 2003
Post by: Dr. Gonzo on October 08, 2007, 01:29:19 am
(Ευχαριστούμε edenaxas!!! :))

Th@nx++ ! :) :)


Title: Re: C++ 3o θεμα 2003
Post by: edenaxas on October 08, 2007, 01:58:25 am
Νομίζω οτί απλά υπάρχει ένα μπέρδεμα όσον αφορά τη συνάρτηση δόμησης της C: στα θέματα οι πράξεις που γίνονται είναι οι k=t+l και  m=t-l ενώ στις λύσεις του edenaxas είναι οι k=t+1 και m=t-1. Δεν τα έτρεξα αλλά αυτό πρέπει να ναι...
(Λογικό το μπέρδεμα τόσο που μοιάζουν το l και το 1 :P)

Και για να σιγουρευτώ οτί κατάλαβα σωστά, όταν έχουμε κληρονομικότητα, οι μεταβλητές της παράγωγης τάξης αποθηκεύονται με την παρακάτω σειρά;;;;
|1η_βασική::1η_μεταβλητή_1ης_βασικής|
|1η_βασική::2η_μεταβλητή_1ης_βασικής|
(...)
|1η_βασική::n-ή_μεταβλητή_1ης_βασικής|
(...)
|n-ή_βασική::1η_μεταβλητή_n-ής_βασικής|
(...)
|n-ή_βασική::n-ή_μεταβλητή_n-ής_βασικής|   
(...)
|παράγωγη::1η_μεταβλητή_παράγωγης|
(...)
|παράγωγη::n-ή_μεταβλητή_παράγωγης|

Μπορεί κανείς να το επιβεβαιώσει;;;; (Αν βγάλει άκρη απ'αυτό που έγραψα... ::))
σωστα..!


Title: Re: C++ 3o θεμα 2003
Post by: filmst_r on October 08, 2007, 03:00:06 am
Νομίζω οτί απλά υπάρχει ένα μπέρδεμα όσον αφορά τη συνάρτηση δόμησης της C: στα θέματα οι πράξεις που γίνονται είναι οι k=t+l και  m=t-l ενώ στις λύσεις του edenaxas είναι οι k=t+1 και m=t-1. Δεν τα έτρεξα αλλά αυτό πρέπει να ναι...
(Λογικό το μπέρδεμα τόσο που μοιάζουν το l και το 1 :P)

Και για να σιγουρευτώ οτί κατάλαβα σωστά, όταν έχουμε κληρονομικότητα, οι μεταβλητές της παράγωγης τάξης αποθηκεύονται με την παρακάτω σειρά;;;;
|1η_βασική::1η_μεταβλητή_1ης_βασικής|
|1η_βασική::2η_μεταβλητή_1ης_βασικής|
(...)
|1η_βασική::n-ή_μεταβλητή_1ης_βασικής|
(...)
|n-ή_βασική::1η_μεταβλητή_n-ής_βασικής|
(...)
|n-ή_βασική::n-ή_μεταβλητή_n-ής_βασικής|   
(...)
|παράγωγη::1η_μεταβλητή_παράγωγης|
(...)
|παράγωγη::n-ή_μεταβλητή_παράγωγης|

Μπορεί κανείς να το επιβεβαιώσει;;;; (Αν βγάλει άκρη απ'αυτό που έγραψα... ::))
σωστα..!

Ευχαριστώ και πάλι, δεν υπήρχε περίπτωση να βγάλω άκρη χωρίς τη λύση και τις επεξηγήσεις σου...!!
 ;)


Title: Re: C++ 3o θεμα 2003
Post by: MoYrMoYr on February 21, 2008, 13:30:25 pm
Να εκφράσω και εγώ την απορία μου σε αυτά τα θέματα?στο πρώτο θέμα μας λέει να φτιάξουμε μια κλάση Β ως public παραγώμενη γιατί το παιδί που έχει ανεβάσει τις λύσεις έχει κάνει το εξής..class B:virtual public A? έλεγε πουθενά να είναι εικονική? :-\


Title: Re: C++ 3o θεμα 2003
Post by: Fotelis on February 21, 2008, 15:42:50 pm
Δες στις σημειώσεις του κορτέση σελ 97 "Δυναμικές βασικές κλάσεις". Εχει ίδιο παράδειγμα.


Title: Re: C++ 3o θεμα 2003
Post by: MoYrMoYr on February 21, 2008, 15:59:06 pm
ναι το είδα..αλλά πότε κάναμε εμείς κάτι τέτοιο για να το κάνουμε σε αυτό το πρόβλημα?δηλ αν το κάναμε χωρίς virtual  θα ήταν λάθος ε? ::)


Title: Re: [C++] 3o θεμα 2003
Post by: Schumacher on September 02, 2008, 19:00:17 pm
Στο 3 θέμα 2003 θα μπορούσε κάποιος να μου εξηγήσει την εντολή d=(A*)&c;Λογικά πριν το & είναι κάποια μετατροπη...Μπορεί κάποιος να βοηθήσει,που μπορουμε να βρούμε την σύνταξη τροποποιητών;Ευχαριστώ προκαταβολικά..