Καλησπέρα θα ηθέλα να ρωτησω δυο πράγματα πρωτον πως κλείνει το πρόγραμμα με τέλος προγράμματος και δίπλα το όνομα του ή σκέτο τέλος προγράμματος????και μια ακόμα ερώτηση έστω οτι έχω έναν πίνακα Α με Ν στοιχεία και θέλω να αντιστρέψω τα συμμετρικά του στοιχεία η εντολή για ι απο 1 μέχρι Ν/2 μπορεί να χρησιμοποιηθεί στο πρόγραμμα???
1. σκέτο ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
2. ναι
Καλημέρα σε όλους
για το δεύτερο δεν θα ήταν καλύτερα Για ι από 1 μέχρι Νdiv2 (και όχι /2) ?? αν χρησιμοποιηθεί ο δείκτης ι σε πίνακας δεν πρέπει να έχει ακέραια τιμή ?? οπότε γενικά καλύτερα το div Θα έβαζα εγώ για να είμαι ήσυχος
Αν καποιος το γράψει N/2 και δηλώσει το ι ακέραιο θα το πιάσουν σωστό στο τέλος????γιατι το N/2 θεωρείται πραγματικη τιμή
Δεν θεωρείται μόνο πραγματική τιμή αλλά και σαν αποτέλεσμα μπορεί να βγει πραγματική
Πχ 15/2=7.5 και θέση 7.5 δεν υπάρχει
Ναι μπορεί να βγεί πραγματικός αριθμός αλλά απο την άλλη το ι ξεκινάει με 1 και αυξάνεται με βήμα 1 οπότε το ι κανονικά δεν παίρνει πραγματική τιμή
Σωστά, αλλά θα πρέπει να δηλωθεί σαν πραγματική μεταβλητή, κάτι που απαγορεύεται γιατί είναι δείκτης πίνακα
Το παρακάτω τμήμα κώδικα είναι ολόσωστο και το i δεν χρειάζεται να δηλωθεί σαν πραγματική μεταβλητή:
Για i από 1 μέχρι N/2
Γράψε Α[i]
Τέλος_Επανάληψης
Η εξήγηση θα φανεί αν γράψουμε το παραπάνω τμήμα κώδικα με μια Όσο:
i <- 1
Όσο i <= N/2 Επανάλαβε
Γράψε Α[i]
i <- i + 1
Τέλος_Επανάληψης
εκεί φαίνεται ότι η μεταβλητή i δεν παίρνει ποτέ την τιμή του άνω άκρου της επανάληψης αλλά συγκρίνεται μαζί της άρα δεν υπάρχει κανένα πρόβλημα εφόσον ξεκινάμε από ακέραιο και το βήμα είναι ακέραιος
Όλα αυτά ισχύουν εφόσον η ισότητα 2 = 2.0 βγάζει Αληθής, σε περίπτωση που το i πέσει ακριβώς στο N/2 επειδή αυτό θα είναι ακέραιος.
Παράθεση από: evry στις 24 Μαρ 2017, 03:18:08 ΜΜ
Το παρακάτω τμήμα κώδικα είναι ολόσωστο και το i δεν χρειάζεται να δηλωθεί σαν πραγματική μεταβλητή:
Για i από 1 μέχρι N/2
Γράψε Α[i]
Τέλος_Επανάληψης
Η εξήγηση θα φανεί αν γράψουμε το παραπάνω τμήμα κώδικα με μια Όσο:
i <- 1
Όσο i <= N/2 Επανάλαβε
Γράψε Α[i]
i <- i + 1
Τέλος_Επανάληψης
εκεί φαίνεται ότι η μεταβλητή i δεν παίρνει ποτέ την τιμή του άνω άκρου της επανάληψης αλλά συγκρίνεται μαζί της άρα δεν υπάρχει κανένα πρόβλημα εφόσον ξεκινάμε από ακέραιο και το βήμα είναι ακέραιος
Όλα αυτά ισχύουν εφόσον η ισότητα 2 = 2.0 βγάζει Αληθής, σε περίπτωση που το i πέσει ακριβώς στο N/2 επειδή αυτό θα είναι ακέραιος.
Τι λες τώρα;;;;😀😱
Δεν το είχα σκεφτεί ποτέ!
Εφόσον μιλάμε για μεταβλητή που θα χρησιμοποοιηθεί ως δείκτης πίνακα, αρκεί να τηρούνται τα εξής:
1) μεταβλητή ΔΗΛΩΜΕΝΗ ακέραια
2) τιμή θετική
3) τιμή <= Ν (μέγεθος πίνακα)
Σε σχέση με το ζητούμενο της αρχικής ερώτηση τώρα, όπως είπε και ο Εύρης, εφόσον:
1) η μεταβλητή i έχει δηλωθεί ακέραια
2) η (αρχική) τιμή ΑΠΟ της ΓΙΑ (που ισοδυναμεί με την αρχικοποίηση του i) είναι ΑΚΕΡΑΙΑ
3) η τιμή του βήματος της ΓΙΑ (που ισοδυναμεί με την αύξηση του i) είναι ΑΚΕΡΑΙΑ
ΔΕΝ υδίσταται ΚΑΝΕΝΑ πρόβλημα αφού:
1) η τιμή του ΜΕΧΡΙ αφορά μόνο στη συνθήκη συνέχειας του "ΟΣΟ"
2) η σύγκριση αριθμητικών τιμών ΜΠΟΡΕΙ να περιλαμβάνει ΤΟΣΟ ακέραιες ΟΣΟ και πραγματικές τιμές