Έστω το παρακάτω τμήμα προγράμματος, όπου η έκφραση στην ΕΠΙΛΕΞΕ είναι κλήση συνάρτησης που βρίσκει το μέσο όρο ενός πίνακα βαθμών:
ΕΠΙΛΕΞΕ ΜέσοςΌρος(ΒαθμοίΤμήματος)
ΠΕΡΙΠΤΩΣΗ 15..20
ΓΡΑΨΕ "Οι περισσότεροι μαθητές είναι άριστοι"
ΠΕΡΙΠΤΩΣΗ 10..15
ΓΡΑΨΕ "Οι περισσότεροι μαθητές είναι μέτριοι"
ΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣ
ΓΡΑΨΕ "Οι περισσότεροι μαθητές έμειναν στην ίδια"
ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ
Πόσες φορές θεωρείτε σωστό να γίνει κλήση της συνάρτησης ΜέσοςΌρος;
Η Pascal και ο Διερμηνευτής κάνουν βελτιστοποίηση και την καλούν μόνο μία.
Σε απλές περιπτώσεις μετατροπής σε πολλαπλή ΑΝ, θα καλούνταν δύο, όσες και οι ΠΕΡΙΠΤΩΣΗ,
αλλά λόγω των διαστημάτων που υπάρχουν, θα πρέπει να γίνουν 4 κλήσεις, για παράδειγμα:
ΑΝ ΜέσοςΌρος(ΒαθμοίΤμήματος) >= 15 ΚΑΙ ΜέσοςΌρος(ΒαθμοίΤμήματος) <= 20 ΤΟΤΕ
ΓΡΑΨΕ "Οι περισσότεροι μαθητές είναι άριστοι"
ΑΛΛΙΩΣ_ΑΝ ΜέσοςΌρος(ΒαθμοίΤμήματος) >= 10 ΚΑΙ ΜέσοςΌρος(ΒαθμοίΤμήματος) <= 15 ΤΟΤΕ
ΓΡΑΨΕ "Οι περισσότεροι μαθητές είναι μέτριοι"
ΑΛΛΙΩΣ
ΓΡΑΨΕ "Οι περισσότεροι μαθητές έμειναν στην ίδια"
ΤΕΛΟΣ_ΑΝ
Άρα, μία, δύο ή τέσσερις κλήσεις;
Δηλαδή, προτιμάμε να υπάρχει ακριβής μετατροπή σε ΑΝ, ή δεχόμαστε ότι η ΕΠΙΛΕΞΕ δουλεύει έτσι και αποφεύγουμε να διδάσκουμε τραβηγμένα παραδείγματα;
Μήπως αν προτιμάμε την ακριβή μετατροπή, αυτό σημαίνει ότι δεν θέλουμε πραγματική γλώσσα προγραμματισμού όπως Pascal/Python αλλά θέλουμε καθαρά εκπαιδευτική γλώσσα;
Η Περίπτωση δέχεται λίστα περιπτώσεων που οδηγεί σε ένα τμήμα κώδικα;
Πχ
.....
ΠΕΡΙΠΤΩΣΗ 1, 3,, 5
....
Επίσης δέχεται εκφράσεις με μεταβλητές;
Αν ναι τότε εκτελούνται όλες ήή μέχρι την πρώτη που θα βγει Αληθής (εντός μιας περίπτωσης)
Παράθεση από: alkisg στις 06 Απρ 2020, 11:15:09 ΠΜ
Πόσες φορές θεωρείτε σωστό να γίνει κλήση της συνάρτησης ΜέσοςΌρος;
Η γνώμη μου είναι μία, δεν είναι θέμα η μετατροπή της σε ΑΝ, αυτό είναι εκπαιδευτικού περιεχομένου.
Η συγκεκριμένη εντολή είναι μία άλλη αυτοτελής εντολή που δουλεύει με τον δικό της τρόπο.
Σαφώς μία.
Και όπως το θέτεις για την σωστή μετατροπή σε ΑΝ ... ΑΛΛΙΩΣ_ΑΝ η αποτίμηση της έκφρασης/συνάρτησης πρέπει να γίνει έξω από αυτήν.
Δεν έχει σημασία βέβαια αφού οι συναρτήσεις δεν έχουν side-effects, αλλά είναι το ισοδύναμο.