1. Πώς υλοποιείται η δομή επιλογής στην ΓΛΩΣΣΑ Η δομή επιλογής υλοποιείται στη ΓΛΩΣΣΑ με την εντολή ΑΝ. Η εντολή ΑΝ εμφανίζεται με τρεις διαφορετικές μορφές. Την απλή εντολή ΑΝ... ΤΟΤΕ, την εντολή ΑΝ...ΤΟΤΕ..ΑΛΛΙΩΣ και τέλος την εντολή ΑΝ...ΤΟΤΕ..ΑΛΛΙΩΣ_ΑΝ. Κάθε εντολή ΑΝ πρέπει να κλείνει με ΤΕΛΟΣ_ΑΝ. (Στην ψευδογλώσσα-Αλγόριθμο, υπάρχει και η μορφή Αν συνθήκη Τότε εντολή η οποία δεν θέλει τελος_αν, αλλά εκτελεί μόνο εντολή η οποία βρίσκεται στην ίδια γραμμή με το ΑΝ και το ΤΟΤΕ. 2. Τι ονομάζονται Εμφωλευμένα ΑΝ, ποιο το πιθανό πρόβλημά τους και πώς αντιμετωπίζεται; Εμφωλευμένα ΑΝ ονομάζονται δύο ή περισσότερες εντολές της μορφής ΑΝ...ΤΟΤΕ...ΑΛΛΙΩΣ που περιέχονται η μία μέσα στην άλλη. Η χρήση εμφωλευμένων εντολών ΑΝ οδηγεί συνήθως σε πολύπλοκες δομές που αυξάνουν την πιθανότητα του λάθους καθώς και τη δυσκολία κατανόησης του προγράμματος. Πολύ συχνά οι εντολές που έχουν γραφεί με εμφωλευμένα ΑΝ, μπορούν να γραφούν πιο απλά χρησιμοποιώντας σύνθετες εκφράσεις ή την εντολή επιλογής ΑΝ ... ΤΟΤΕ ... ΑΛΛΙΩΣ_ΑΝ. 3. Πότε είναι προτιμότερη η εντολή ΕΠΙΛΕΞΕ; Στα προβλήματα με πολλές εναλλακτικές περιπτώσεις επιλογής μπορούμε να χρησιμοποιήσουμε την εντολή ΕΠΙΛΕΞΕ, η οποία εκφράζει τη δομή της πολλαπλής επιλογής. 4. Ποια η σύνταξη της δομής ΕΠΙΛΕΞΕ και ποιος ο τρόπος εκτέλεσης; ΕΠΙΛΕΞΕ <έκφραση> ΠΕΡΙΠΤΩΣΗ <λίστα_τιμών_1> <εντολές_1> ΠΕΡΙΠΤΩΣΗ <λίστα_τιμών_2> <εντολές_2> ...... ΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣ <εντολές_αλλιώς> ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ Όπου: • <έκφραση> : είναι μια μεταβλητή, η τιμή της οποίας θα ελεγχθεί με τις τιμές που δίνονται στις ΠΕΡΙΠΤΩΣΕΙΣ και ανάλογα σε ποια ΠΕΡΙΠΤΩΣΗ ανήκει θα εκτελεστούν οι αντίστοιχες εντολές ή η πράξη, που υπολογίζει την τιμή της. Δηλαδή, η <έκφραση> μπορεί να είναι: - Μεταβλητή - Αριθμητική πράξη - Συγκριτική πράξη • <λίστα_τιμών_Ν>: οι τιμές που μπορεί να πάρει μια έκφραση. Οι τιμές αυτές μπορεί να είναι διακριτές τιμές (π.χ. 1,2,3), περιοχή τιμών από…έως (π.χ. 10..15) ή να υπακούν σε μια συνθήκη (π.χ. > 20) (προσοχή χωρίς την μεταβλητή ή έκφραση ξανά και χωρίς λογικούς τελεστές) Κατά την εκτέλεση της εντολής υπολογίζεται η τιμή της έκφρασης και στη συνέχεια εκτελούνται οι εντολές που ανήκουν στην αντίστοιχη περίπτωση τιμών. Στην περίπτωση που η τιμή έκφρασης δεν αντιστοιχεί σε καμία περίπτωση, τότε εκτελούνται οι εντολές της ΠΕΡΙΠΤΩΣΗΣ_ΑΛΛΙΩΣ. Η ΠΕΡΙΠΤΩΣΗ_ΑΛΛΙΩΣ είναι προαιρετική. Η εκτέλεση του προγράμματος συνεχίζεται με την εντολή που ακολουθεί μετά το ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ. 5. Τι είναι εμφωλευμένες δομές; (σ.42) ο συνδυασμός δύο ή περισσοτέρων δομών επιλογής ή / και επανάληψης, όπου η μία περιέχεται μέσα στην άλλη 6. Τι είναι βρόχος; (σ.45) η δομή επανάληψης - μέσα στο βρόχο είναι οι εντολές που επαναλαμβάνονται 7. Ποιες είναι οι τρεις δομές επανάληψης; (σ44-46-47) (όσο, μέχρις, για). Γράψτε τη γενική μορφή τους. Τι διαφορές έχουν; ΟΣΟ: σύνθετη συνθήκη, πρώτα ελέγχει και μετά εκτελεί, ελέγχει αν θα συνεχίσει, δεν ξέρουμε από την αρχή το πλήθος των επαναλήψεων, ΜΕΧΡΙΣ_OTOY: σύνθετη συνθήκη, πρώτα εκτελεί και μετά ελέγχει γι' αυτό κάνει τουλάχιστον μια επανάληψη, ελέγχει αν θα σταματήσει, δεν ξέρουμε από την αρχή το πλήθος των επαναλήψεων, ΓΙΑ: απλή συνθήκη, πρώτα ελέγχει και μετά εκτελεί, γνωστό εξ' αρχής πλήθος επαναλήψεων) 8. Μετατρέψτε την παρακάτω εντολή ΓΙΑ σε εντολές ΟΣΟ και ΜΕΧΡΙΣ_ΟΤΟΥ για I από α μέχρι β με_βήμα γ εντολές τέλος_επανάληψης I <- α όσο Ι <= β επανάλαβε εντολές Ι <- Ι + γ τέλος_επανάληψης Ι <- α Αρχή_επανάληψης εντολές Ι <- Ι + γ μέχρις_ότου Ι > β Σημείωση: Για την μετατροπή από το όσο στο μέχρις_ότου, αν η τιμή του α δεν είναι αριθμός, αλλά αριθμητική τιμή (πχ. έχει προκύψει από κάποιο ΔΙΑΒΑΣΕ), πρέπει να προστεθεί ένα ΑΝ Ι <= β τότε ώστε να μην εκτελεστούν οι εντολές ούτε μία φορά. 9. Σχεδιάστε τα διαγράμματα ροής των παραπάνω δομών. (σ47,σ.44,σ.46) ![]() 10. Πολύ συχνά για την επίλυση των προβλημάτων απαιτείται η χρήση εμφωλευμένων βρόχων. Σε αυτή την περίπτωση ο ένας βρόχος βρίσκεται μέσα στον άλλο. Στη χρήση των εμφωλευμένων βρόχων ισχύουν συγκεκριμένοι κανόνες που πρέπει να ακολουθούνται αυστηρά για την σωστή λειτουργία των προγραμμάτων. Κανόνες στη χρήση εμφωλευμένων βρόχων. (σ.150) • Ο εσωτερικός βρόχος πρέπει να βρίσκεται ολόκληρος μέσα στον εξωτερικό. • Ο βρόχος που ξεκινάει τελευταίος, πρέπει να ολοκληρώνεται πρώτος. • Η είσοδος σε κάθε βρόχο υποχρεωτικά γίνεται από την αρχή του. • Δεν μπορεί να χρησιμοποιηθεί η ίδια μεταβλητή ως μετρητής δύο ή περισσοτέρων. 11. Να περιγραφεί με ακολουθία βημάτων το πρόβλημα του ‘πολλαπλασιασμού αλά ρωσικά’. Είσοδος: Δύο ακέραιοι Μ1 και Μ2, όπου Μ1, Μ2 ≥ 1 Έξοδος: Το γινόμενο Ρ=Μ1*Μ2 Βήμα 1: Θέσε Ρ=0 Βήμα 2: Αν Μ2>0, τότε πήγαινε στο Βήμα 3, αλλιώς πήγαινε στο Βήμα 7 Βήμα 3: Αν ο Μ2 είναι περιττός, τότε θέσε Ρ=Ρ+Μ1 Βήμα 4: Θέσε Μ1=Μ1*2 Βήμα 5: Θέσε Μ2=Μ2/2 (θεώρησε μόνο το ακέραιο μέρος) Βήμα 6: Πήγαινε στο Βήμα 2 Βήμα 7: Τύπωσε τον Ρ 12. Ποιά η πρακτική σημασία του αλγορίθμου του “πολλαπλασιασμού αλά ρωσικά” ; Πότε γίνεται χρήση αυτού του τρόπου πολλαπλασιασμού δύο ακεραίων; Χρησιμοποιείται η τεχνική αυτή στην υλοποίηση του πολλαπλασιασμού από τον επεξεργαστή, γιατί απαιτεί μόνο προσθέσεις και πολλαπλασιασμούς/διαιρέσεις με το 2 , που τους υλοποιεί με ολισθήσεις δεξιά και αριστερά, αφού χρησιμοποιεί το δυαδικό σύστημα.
|