ΓΛΩΣΣΑ: σύγκριση ακεραίου με πραγματικό

Ξεκίνησε από pthemis, 14 Ιαν 2013, 08:57:17 ΜΜ

« προηγούμενο - επόμενο »

pthemis

Η Γλώσσα επιτρέπει την σύγκριση μεταβλητής δηλωμένης ως ακέραιας με μεταβλητή δηλωμένη ως πραγματική. Δεδομένου ότι δεν επιτρέπεται η σύγκριση μτξ μεταβλητών διαφορετικών τύπων, τί ισχύει εδώ επίσημα; Δεν το έχω βρει πουθενά.
Ευχαριστώ

Σπύρος Δουκάκης

#1
Το θέμα είχε συζητηθεί στην ημερίδα που έγινε για το μάθημα ΑΕΠΠ με τίτλο Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον, Παρελθόν, Παρόν και Μέλλον. Στο βιβλίο που εκδόθηκε στη συνέχεια (http://goo.gl/GaNsz) γράφτηκε ότι:

Στο βιβλίο μαθητή αναφέρεται ότι «σε μια εντολή εκχώρησης η μεταβλητή και η έκφραση πρέπει να είναι του ιδίου τύπου» [Βακάλη κ.α. (2009), σ. 154]. Κάτι τέτοιο θα μπορούσε να οδηγήσει στο συμπέρασμα πως είναι αδύνατη η εκχώρηση ακεραίου αριθμού σε πραγματική μεταβλητή. Το διδακτικό πακέτο αποτυπώνει τη δυνατότητα αυτή μέσω παραδειγμάτων [Βακάλη κ.α. (2009), σ. 177, 189]. Αντίστοιχα, θα μπορούσε να θεωρηθεί πως δεν μπορεί να εκχωρηθεί η τιμή που επιστρέφει μια ακέραια συνάρτηση σε πραγματική μεταβλητή.
Πρόταση: Είναι απαραίτητο να γίνει σχετική διόρθωση ή να δοθεί κατάλληλη επεξήγηση στην περίπτωση των αριθμητικών (ακέραιων και πραγματικών) μεταβλητών, ώστε να είναι σαφές ότι μπορεί να εκχωρηθεί ακέραια τιμή/μεταβλητή σε πραγματική μεταβλητή. Το αντίθετο να μην επιτρέπεται. Η απαγόρευση αυτή κρίνεται απαραίτητη καθώς μία ακέραια μεταβλητή δεν μπορεί να αναπαραστήσει πάντα μία πραγματική τιμή. Ο μεταγλωττιστής θα μπορούσε να κάνει αυτόματη προσαρμογή τύπων, αποκόπτοντας τα δεκαδικά ψηφία μιας πραγματικής τιμής, πράγμα που όμως θα μπορούσε να προκαλέσει περισσότερη σύγχυση στα πλαίσια του μαθήματος.

Από το άρθρο:
Τσιωτάκης, Π., Στέργου, Σ., Αδαμόπουλος, Ν. & Ψαλτίδου, Α. (2010). Το διδακτικό πακέτο του μαθήματος ΑΕΠΠ. Ασάφειες και επακόλουθα προβλήματα στο Δουκάκης Σ. (Επιμ.) Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον, Παρελθόν, Παρόν και Μέλλον, Ελληνική Εταιρεία Επιστημόνων και Επαγγελματιών Πληροφορικής και Επικοινωνιών (ΕΠΥ), Αθήνα, Εκδόσεις Νέων Τεχνολογιών.

pthemis

Πάντως εγώ μιλάω μόνο για την σύγκριση. Αν δηλαδή α: ακέραιος και ρ: πραγματικός, επιτρέπεται το α>ρ; Επαναλαμβάνω στην Γλώσσα (και στην Γλωσσομάθεια) επιτρέπεται, και είναι λογικό. Αλλά σύμφωνα με την θεωρία του βιβλίου δεν θα πρέπει να επιτρέπεται

Νίκος Αδαμόπουλος