Άσκηση-01 (Απάντηση)
Πίνακας τιμών των μεταβλητών
Άσκηση-02 (Απάντηση)
Πίνακας τιμών των μεταβλητών
Άσκηση-03 (Απάντηση)
Πίνακας τιμών των μεταβλητών
Άσκηση-04 (Απάντηση)
Διάγραμμα Ροής
Άσκηση – 05 (Απάντηση)
Άσκηση-06 (Απάντηση)
Πίνακας τιμών των μεταβλητών
Μεταβλητές
Ακέραιες: k, l
Λογικές: b, c, d
Άσκηση-07 (Απάντηση)
α) drinking
β) drinking
γ) water
δ) health
ε) gives you
Άσκηση-08 (Απάντηση)
α) Για να εκτυπώσει “Beetle” πρέπει να εκτελεστεί η αντίστοιχη εντολή Εκτύπωσε.
Για να συμβεί αυτό πρέπει η συνθήκη x mod 2 = 0 να είναι Αληθής και η συνθήκη x div 2 = 4 να είναι Ψευδής.
Η πρώτη συνθήκη είναι Αληθής για: x=0, 2, 4, 6, 8, 10, 12, 14, 16, 18, ….
Η δεύτερη συνθήκη είναι Ψευδής για όλους τους ακεραίους εκτός των x= 8, 9, 10, 11 για τις οποίες είναι Αληθής, δηλαδή για x= 0, 1, 2, 3, 4, 5, 6, 7, 12, 13, 14, 15, 16, 17, 18, 19, …
Παρατηρώ ότι και οι δύο συνθήκες είναι ισχύουν ταυτόχρονα για: x= 0, 2, 4, 6, 14, 16, 18, 20, ….
β) Για να εκτυπώσει “Dog” πρέπει να εκτελεστεί η αντίστοιχη εντολή Εκτύπωσε.
Για να συμβεί αυτό πρέπει η συνθήκη x mod 2 = 0 να είναι Ψευδής και η x div 2 = 4 να είναι Ψευδής .
Η πρώτη συνθήκη είναι Ψευδής για: x=1, 3, 5, 7, 9, 11, 13, 15, 17, 19, ….
Η δεύτερη συνθήκη είναι Ψευδής για όλους τους ακεραίους εκτός των x= 8, 9, 10, 11 για τις οποίες είναι Αληθής, δηλαδή για x= 0, 1, 2, 3, 4, 5, 6, 7, 12, 13, 14, 15, 16, 17, 18, 19, …
Παρατηρώ ότι και οι δύο συνθήκες είναι ισχύουν ταυτόχρονα για: x= 1, 3, 5, 7, 13, 15, 17, 19, ….
Άσκηση-09 (Απάντηση)
Τα λάθη μπορεί ναι είναι Συντακτικά και οφείλονται σε λάθος: στην σύνταξη των εντολών ή στην δομή του προγράμματος ή στην δήλωση κάποιας μεταβλητής,
Μπορεί όμως να είναι και Λογικά. Αυτά οφείλονται: στην λάθος λογική σκέψη που εφάρμοσα, στην λάθος γραφή κάποιου τύπου, όταν κάνουμε διαίρεση με μηδέν, όταν κάνουμε επαναλήψεις που δεν τελειώνουν ποτέ και γενικά όταν οδηγούμε το πρόγραμμα σε απρόβλεπτες καταστάσεις
Α) Συντακτικά Λάθη
- Το όνομα του Αλγορίθμου (1Error) ξεκινάει με γράμμα.
Β) Λογικά Λάθη
- Διαίρεση με μηδέν στο Αλλιώς_Αν. Διότι αν x=y ο τύπος z ← 3 / (x – y) διαιρεί με μηδέν.
- Λάθος Λογική στο Αλλιώς. Διότι δεν προσδιορίζει τιμή για την μεταβλητή z. Άρα το Εμφάνισε z μετά το Αν τι τιμή θα τυπώσει; Σκουπίδια!!!
Άσκηση-10 (Απάντηση)
Αλγόριθμος Ασκ10
—Διάβασε x
—Αν x > 10 τότε
—-y ← 2 * x + 1
—Τέλος_αν
—Αν x < -5 τότε
——y ← 2 * x – 3
—Τέλος_αν
—Αν x>=-5 KAI x<=10 Τότε
——y ← x^2 + 5
—Τέλος_αν
—Εκτύπωσε y
Τέλος Ασκ10
Άσκηση-11α (Απάντηση)
με Απλά Αν | με Εμφωλευμένα Αν | με ΕΠΙΛΕΞΕ |
Αλγόριθμος Ασκ11α Διάβασε x Αν x < -10 τότε y ← -10 Τέλος_Αν Αν x >= -10 και x < 10 τότε y ← 10 Τέλος_Αν Αν x >= 10 και x < 50 τότε y ← 50 Τέλος_Αν Aν x >= 50 τότε y ← 200 Τέλος_Αν Εκτύπωσε y*χ Τέλος Ασκ11α |
Αλγόριθμος Ασκ11α Διάβασε x Αν x < 50 τότε Αν x < 10 τότε Αν x < -10 τότε y ← -10 Αλλιώς y ← 10 Τέλος_Αν Αλλιώς y ← 50 Τέλος_Αν Αλλιώς y ← 200 Τέλος_Αν Εκτύπωσε y*χ Τέλος Ασκ11α |
Αλγόριθμος Ασκ11α Διάβασε x ΕΠΙΛΕΞΕ x ΠΕΡΙΠΤΩΣΗ < -10 y ← -10 ΠΕΡΙΠΤΩΣΗ < 10 y ← 10 ΠΕΡΙΠΤΩΣΗ < 50 y ← 50 ΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣ y ← 200 ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ Εκτύπωσε y*x Τέλος Ασκ11α |
Άσκηση-11β (Απάντηση)
με Απλά Αν | με Πολλαπλό Αν | με Εμφωλευμένα Αν |
Αλγόριθμος Ασκ11β Διάβασε a Αν a <= 0 τότε b ← 0 Τέλος_Αν Αν a > 0 και a <= 5 τότε b ← 5 Τέλος_Αν Αν a > 5 και a <= 10 τότε b ← 10 Τέλος_Αν Aν a > 10 τότε b ← 100 Τέλος_Αν Εκτύπωσε b Τέλος Ασκ11β |
Αλγόριθμος Ασκ11β Διάβασε a Αν a <= 0 τότε b ← 0 Αλλιώς_Αν a <= 5 τότε b ← 5 Αλλιώς_Αν a <= 10 τότε b ← 10 Αλλιώς b ← 100 Τέλος_Αν Εκτύπωσε b Τέλος Ασκ11β |
Αλγόριθμος Ασκ11β Διάβασε a Αν a <= 10 τότε Αν a <= 5 τότε Αν a <= 0 τότε b ← 0 Αλλιώς b ← 5 Τέλος_Αν Αλλιώς b ← 10 Τέλος_Αν Αλλιώς b ← 100 Τέλος_Αν Εκτύπωσε b Τέλος Ασκ11β |
Άσκηση-12 (Απάντηση)
Αλγόριθμος Ασκ12
—Διάβασε x, y
—Αν x <= 10 τότε
——Εμφάνισε x + y
—Αλλιώς_Αν x <=50 τότε
——Εμφάνισε x – y
—Αλλιώς_Αν x <=90 τότε
——Εμφάνισε x / y
—Aλλιώς
——Εμφάνισε y^2
—Τέλος_Αν
Τέλος Ασκ12