Καλημέρα. Μπορεί να γίνει εκχώρηση μεταβλητής ακέραιου τύπου σε μεταβλητή πραγματικού τύπου;
Η απάντησή μπορεί να είναι προφανής απο τη μια (λόγω θέσεων μνήμης) , επίσης η ΓΛΩΣΣΑ αναφέρει πως
"Η μεταβλητή αριστερά του τελεστή εκχώρησης πρέπει να είναι ίδιου τύπου με την έκφραση στα δεξιά του. Η μόνη εξαίρεση είναι ότι ακέραιες εκφράσεις επιτρέπεται να εκχωρηθούν σε πραγματικές μεταβλητές.
αλλά θα ήθελα να μου πείτε αν συμφωνεί και το βιβλίο με αυτά.
Ευχαριστώ.
Αν και δεν το έχω δει στις οδηγίες διδασκαλίας κατά την γνώμη μου είναι σωστό, όπως συμβαίνει και στις γλώσσες προγραμματισμού.
Αφού "ακέραιες εκφράσεις επιτρέπεται να εκχωρηθούν σε πραγματικές μεταβλητές"
και έφραση είναι (στην αριθμητική της εκδοχή) μια σειρά πράξεων, ή μία αριθμητική μεταβλητή, ή μία αριθμητική σταθερή
έπεται ότι ακέραιες μεταβλητές (οι τιμές τους για την ακρίβεια) μπορούν να εκχωρηθούν σε πραγματικές μεταβλητές (μόνο που θα αποθηκευτούν με τη μορφή πραγματικού, δλδ με υποδιαστολή κλπ)
δοκίμασε αυτό:
ΠΡΟΓΡΑΜΜΑ test
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: x
ΠΡΑΓΜΑΤΙΚΕΣ: y
ΑΡΧΗ
x <- 5
y <- x
ΓΡΑΨΕ x, y
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
Ναι μια τέτοια περίπτωση δεν έχει αναφερθεί ποτέ σε οδηγίες, ίσως γιατί μέχρι και πριν δυο χρόνια η ΓΛΩΣΣΑ ήταν υποτιμημένη καθώς μεγαλύτερη βαρύτητα είχαν οι αλγόριθμοι, εκεί που υπήρχε περισσότερη ελευθερία στις μεταβλητές.
σωστό ή λάθος στην εντολή εκχώρησης!! (Βοήθεια σας παρακαλώ!)
Μια λογική μεταβλητή μπορεί να λάβει αλφαριθμητικη τιμή και το αντίστροφο μια αλφαριθμητικη τιμή μπορεί να πάρει μια λογική τιμή .
Μια σταθερά μπορεί να χρησιμοποιηθεί στον δεξί μέλος μια εντολής εκχώρησης , ένα δεν μπορεί να χρησιμοποιηθεί στο δεξί μέλος μια σταθερά σε μια εντολή εκχώρησης
Το αποτέλεσμα μια πράξης δεν μπορεί να εκχωρηθεί σε μια σταθερά
Μεγάλο σφάλμα του βιβλίου που κάνουμε τα στραβά μάτια χρόνια. 2023 και η "αναθεωρημένη" έκδοση δε το διόρθωσε όπως όλα τα υπόλοιπα.
Τυπικά by the book εδώ, θα πρέπει
πραγ <- ακέραια * 1.0
πράγμα που είναι ανόητο.
Φαντάζομαι πως οι συγγραφείς βέβαια είχαν στο νου τους να εξηγήσουν πως
ΑΚΕΡΑΙΕΣ <- ΧΑΡΑΚΤΗΡΕΣ δε γίνεται κτλ, αλλά τους ξέφυγε αυτή η λεπτομέρεια.
Για να καταλάβεις δες το αλφάβητο. Πού είναι η άνω κάτω τελεία κι οι αγκύλες του πίνακα;
Υπάρχουν γενικά θέματα με το βιβλίο.
Παράθεση από: KGeorge στις 30 Απρ 2023, 05:12:54 ΜΜ σωστό ή λάθος στην εντολή εκχώρησης!! (Βοήθεια σας παρακαλώ!)
Μια λογική μεταβλητή μπορεί να λάβει αλφαριθμητικη τιμή και το αντίστροφο μια αλφαριθμητικη τιμή μπορεί να πάρει μια λογική τιμή .
Μια σταθερά μπορεί να χρησιμοποιηθεί στον δεξί μέλος μια εντολής εκχώρησης , ένα δεν μπορεί να χρησιμοποιηθεί στο δεξί μέλος μια σταθερά σε μια εντολή εκχώρησης
Το αποτέλεσμα μια πράξης δεν μπορεί να εκχωρηθεί σε μια σταθερά
Μια λογική μεταβλητή μπορεί να λάβει αλφαριθμητικη τιμή (Λάθος)
αλφαριθμητικη τιμή μπορεί να πάρει μια λογική τιμή (Λάθος)
Μια σταθερά μπορεί να χρησιμοποιηθεί στον δεξί μέλος μια εντολής εκχώρησης (Σωστό)
Το αποτέλεσμα μια πράξης δεν μπορεί να εκχωρηθεί σε μια σταθερά (Σωστό)