Καθηγητής Πληροφορικής, ΠΕ86

2.4.5, 8.2.2

Εντολή ΜΕΧΡΙΣ_ΟΤΟΥ
 ΣΥΖΗΤΗΣΕΙΣ ΕΝΟΤΗΤΑΣ

ΘΕΩΡΙΑ – ΠΑΡΑΔΕΙΓΜΑΤΑ

Από το σχολικό βιβλίο:

ΚΒΓ ΘΕΩΡΙΑ ΠΒ

Σημειώσεις – Διαφάνειες:

ΔΙΑΦΑΝΕΙΕΣ – (245η μέχρι 267η)

MORE …

 

Βιντεομαθήματα:

Δομή επανάληψης ΜΕΧΡΙΣ_ΟΤΟΥ Ι – ΣΠΥΡΟΣ ΓΕΩΡΓΙΟΣ ΖΥΓΟΥΡΗΣ

Δομή επανάληψης ΜΕΧΡΙΣ_ΟΤΟΥ ΙΙ – ΣΠΥΡΟΣ ΓΕΩΡΓΙΟΣ ΖΥΓΟΥΡΗΣ

Δομή επανάληψης ΜΕΧΡΙΣ_ΟΤΟΥ ΙΙΙ – ΣΠΥΡΟΣ ΓΕΩΡΓΙΟΣ ΖΥΓΟΥΡΗΣ

Διαφορές ΜΕΧΡΙΣ_ΟΤΟΥ με ΟΣΟ – ΣΠΥΡΟΣ ΓΕΩΡΓΙΟΣ ΖΥΓΟΥΡΗΣ

ΕΡΩΤΗΣΕΙΣ

Από το σχολικό βιβλίο:

 

Από άλλο υλικό:

 

ΑΣΚΗΣΕΙΣ

Από το σχολικό βιβλίο:

 

Από άλλο υλικό:

Άσκηση 1

Ένας συλλέκτης γραμματοσήμων έχει στη συλλογή του 4800 γραμματόσημα . Αν κάθε χρόνο αυξάνει τη συλλογή του κατά 5 % να πραγματοποιηθεί πρόγραμμα το οποίο θα υπολογίζει σε πόσα χρόνια η συλλογή θα ξεπεράσει τα 10.000 γραμματόσημα.

Λύση

ΠΡΟΓΡΑΜΜΑ ΑΣΚ_20
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ:Π
ΠΡΑΓΜΑΤΙΚΕΣ: Α
ΑΡΧΗ
Α<–4800
Π<–0
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
Α<–Α+Α*5/100
Π<–Π+1
ΜΕΧΡΙΣ_ΟΤΟΥ Α>10000
ΓΡΑΨΕ ‘Η ΣΥΛΛΟΓΗ ΘΑ ΞΕΠΕΡΑΣΕΙ ΤΑ 10000 ΓΡΑΜΜΑΤΟΣΗΜΜΑ ΣΕ :’,Π,’ ΧΡΟΝΙΑ’
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ​

Άσκηση 2

Να δημιουργήσετε ένα πρόγραμμα το οποίο θα δέχεται ως είσοδο το πολύ 50 αριθμούς από το πληκτρολόγιο. Αν κάποιος από αυτούς είναι το 7 το πρόγραμμα να τερματίζεται εμφανίζοντας την σειρά του αριθμού στο σύνολο. Επίσης αν δεν βρέθηκε σε κανέναν από τους 50 αριθμούς το 7, να εμφανίζεται ανάλογο μήνυμα.

Λύση

ΠΡΟΓΡΑΜΜΑ ΑΣΚ_24
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ:Π,Χ
ΑΡΧΗ
​Π<–0
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ ‘ΔΩΣΕ ΕΝΑΝ ΑΡΙΘΜΟ’
ΔΙΑΒΑΣΕ Χ
Π<–Π+1
ΑΝ Χ=7 ΤΟΤΕ
ΓΡΑΨΕ ‘ΒΡΕΘΗΚΕ Ο ΑΡΙΘΜΟΣ 7 ΣΤΗ ΣΕΙΡΑ:’,Π
ΤΕΛΟΣ_ΑΝ
ΜΕΧΡΙΣ_ΟΤΟΥ Χ=7
ΑΝ Π=0 ΤΟΤΕ
ΓΡΑΨΕ ‘ΔΕΝ ΒΡΕΘΗΚΕ Ο ΑΡΙΘΜΟΣ 7’
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Άσκηση 3

Να γράψετε τον αλγόριθμο ενός παιχνιδιού τύχης, όπου ένας παίκτης βάζει έναν ακέραιο αριθμό και ο αλγόριθμος εμφανίζει τον αριθμό των ψηφίων του. Έπειτα ο δεύτερος παίκτης προσπαθεί να μαντέψει ποιος είναι ο αριθμός και ο υπολογιστής του λέει κάθε φορά αν είναι πάνω ή κάτω η πρόβλεψή του από τον αριθμό. Μόλις τον βρει να εμφανίζεται ‘ΣΥΓΧΑΡΗΤΗΡΙΑ’ και το πόσες προσπάθειες χρειάστηκαν.

Λύση

ΠΡΟΓΡΑΜΜΑ ΑΣΚ_27
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ :Χ,Π,Α,ΕΠ,ΠΛ

ΑΡΧΗ
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ’Ο ΠΡΩΤΟΣ ΠΑΙΚΤΗΣ ΝΑ ΠΛΗΚΤΡΟΛΟΓΗΣΕΙ ΕΝΑΝ ΑΚΕΡΑΙΟ ΑΡΙΘΜΟ’
ΔΙΑΒΑΣΕ Χ
ΜΕΧΡΙΣ_ΟΤΟΥ Α_Μ(Χ)=Χ
Π<–0
A<–X
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
A<–A DIV 10
Π<–Π+1
ΜΕΧΡΙΣ_ΟΤΟΥ Α=0
ΓΡΑΨΕ’Ο ΑΡΙΘΜΟΣ ΤΩΝ ΨΗΦΙΩΝ ΕΙΝΑΙ :’,Π
ΠΛ<–0
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ ‘Ο ΔΕΥΤΕΡΟΣ ΠΑΙΚΤΗΣ ΝΑ ΕΠΙΛΕΞΕΙ ΕΝΑΝ ΑΡΙΘΜΟ ΜΕ ‘,Π,’ ΨΗΦΙΑ’
ΔΙΑΒΑΣΕ ΕΠ
ΠΛ<–ΠΛ+1
ΑΝ ΕΠ=Α ΤΟΤΕ
ΓΡΑΨΕ ‘ΚΕΡΔΙΣΕΣ ΜΕ ‘,ΠΛ,’ ΠΡΟΣΠΑΘΕΙΕΣ’
ΑΛΛΙΩΣ_ΑΝ ΕΠ<Α ΤΟΤΕ
ΓΡΑΨΕ ‘Ο ΑΡΙΘΜΟΣ ΠΟΥ ΨΑΧΝΕΙΣ ΕΙΝΑΙ ΜΕΓΑΛΥΤΕΡΟΣ’
ΑΛΛΙΩΣ
ΓΡΑΨΕ ‘ Ο ΑΡΙΘΜΟΣ ΠΟΥ ΨΑΧΝΕΙΣ ΕΙΝΑΙ ΜΙΚΡΟΤΕΡΟΣ’
ΤΕΛΟΣ_ΑΝ
ΜΕΧΡΙΣ_ΟΤΟΥ ΕΠ=Α
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Άσκηση 4

Ο χρήστης θα δώσει κάποιους θετικούς αριθμούς και τελικά θα δώσει το 0 για να σηματοδοτήσει το τέλος των δεδομένων. Κάντε ένα πρόγραμμα το οποίο θα εμφανίσει τον
μέγιστο από τους αριθμούς αυτούς.

Λύση

Δεν ξέρουμε πόσες επαναλήψεις θα γίνουν. Θα γίνει όμως τουλάχιστον μία (θα διαβάσουμε οπωσδήποτε έναν αριθμό, έστω και αν είναι το 0), οπότε επιλέγουμε την ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ.
Για να βρούμε ελάχιστο ή μέγιστο, η διαδικασία είναι η εξής: Αρχικοποιούμε το min ή το max με τον πρώτο αριθμό (τον οποίο θα πρέπει πρώτα να τον έχουμε διαβάσει). Στη συνέχεια, ελέγχουμε (με ΑΝ) κάθε έναν από τους υπόλοιπους αριθμούς, και αν κάποιος είναι μικρότερος (ή μεγαλύτερος) κάνουμε min<- αριθμός.
ΠΡΟΓΡΑΜΜΑ ΜΕΓΑΛΥΤΕΡΟΣ
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: max, αριθμός
ΑΡΧΗ
max<-0
!Επειδή ο χρήστης θα δώσει μόνο θετικούς, μπορούμε να & αρχικοποιήσουμε με μηδέν αντί για τον πρώτο αριθμό.
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
 ΔΙΑΒΑΣΕ αριθμός
 ΑΝ αριθμός>max ΤΟΤΕ
  max<-αριθμός
 ΤΕΛΟΣ_ΑΝ
ΜΕΧΡΙΣ_ΟΤΟΥ αριθμός=0
ΓΡΑΨΕ max
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Άσκηση 5

Να διαβαστούν 2 αριθμοί και να τυπωθεί το άθροισμά τους. Η διαδικασία να επαναλαμβάνεται μέχρι να δοθεί
α) σε έναν απ’ τους δύο η τιμή 0
β) και στους δύο η τιμή 0

Λύση

ΠΡΟΓΡΑΜΜΑ ΑΣΚΗΣΗ_44α
ΜΕΤΑΒΛΗΤΕΣ
ΠΡΑΓΜΑΤΙΚΕΣ: Α,Β, ΑΘΡ
ΑΡΧΗ
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ ‘1ος αριθμός:’
ΔΙΑΒΑΣΕ Α
ΓΡΑΨΕ ‘2ος αριθμός:’
ΔΙΑΒΑΣΕ Β
ΑΝ (Α<>0) ΚΑΙ (Β<>0) ΤΟΤΕ
ΑΘΡ <–Α+Β
ΓΡΑΨΕ ‘Άθροισμα=’,ΑΘΡ
ΤΕΛΟΣ_ΑΝ
ΜΕΧΡΙΣ_ΟΤΟΥ (Α=0) Η (Β=0)
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
Η εντολή ΑΝ (Α<>0) ΚΑΙ (Β<>0) χρειάστηκε ώστε να μην υπολογιστεί το άθροισμα όταν ένας από τους δύο θα πάρει την τιμή 0.
ΠΡΟΓΡΑΜΜΑ ΑΣΚΗΣΗ_44β
ΜΕΤΑΒΛΗΤΕΣ
ΠΡΑΓΜΑΤΙΚΕΣ: Α,Β, ΑΘΡ
ΑΡΧΗ
ΓΡΑΨΕ ‘1ος αριθμός:’
ΔΙΑΒΑΣΕ Α
ΓΡΑΨΕ ‘2ος αριθμός:’
ΔΙΑΒΑΣΕ Β
ΟΣΟ (Α<>0) Η (Β<>0) ΕΠΑΝΑΛΑΒΕ
ΑΘΡ <–Α+Β
ΓΡΑΨΕ ‘Άθροισμα=’,ΑΘΡ
ΓΡΑΨΕ ‘1ος αριθμός:’
ΔΙΑΒΑΣΕ Α
ΓΡΑΨΕ ‘2ος αριθμός:’
ΔΙΑΒΑΣΕ Β
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
Αρχικά, διαβάστηκαν οι τιμές του Α και του Β πριν από την επανάληψη, έτσι ώστε να ελέγξει η ΟΣΟ αν πρέπει να υπολογιστεί το άθροισμά τους.

ΓΙΑ ΤΟ ΣΠΙΤΙ…

ΣΤΕΙΛΕ ΜΟΥ ΤΙΣ ΑΠΑΝΤΗΣΕΙΣ: ΕΔΩ

ΘΕΜΑΤΑ ΠΑΝΕΛΛΗΝΙΩΝ