Μετατροπή από ΜΕΧΡΙΣ_ΟΤΟΥ σε ΟΣΟ

Όταν σε ένα πρόγραμμα μας ζητάνε να μετατρέψουμε μια εντολή ΜΕΧΡΙΣ_ΟΤΟΥ σε ΟΣΟ πρέπει να λάβουμε υπόψιν μας ότι η ΜΕΧΡΙΣ_ΟΤΟΥ θα εκτελεστεί τουλάχιστον μία φορά ενώ η ΟΣΟ μπορεί και καμία.  Το πρόβλημα λύνεται αν τις εντολές τις ΜΕΧΡΙΣ_ΟΤΟΥ τις γράψουμε πριν και μέσα στην ΟΣΟ. Επίσης η συνθήκη της ΟΣΟ είναι η άρνηση της συνθήκης της ΜΕΧΡΙΣ_ΟΤΟΥ.

Μετατροπή από ΟΣΟ σε ΜΕΧΡΙΣ_ΟΤΟΥ

Ισχύουν και εδώ όσα αναφέρθηκαν προηγουμένως στην μετατροπή της ΜΕΧΡΙΣ_ΟΤΟΥ σε ΟΣΟ.

Μετατροπή από ΓΙΑ σε ΟΣΟ

Αν το βήμα είναι θετικός αριθμός τότε:

Αν το βήμα είναι αρνητικός αριθμός τότε:

Ερωτήσεις ανάπτυξης απο Πανελλαδικές εξετάσεις

  1. (Β2016-Α5) Δίδεται το παρακάτω τμήμα αλγορίθμου:
    ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 100
      ΑΝ i MOD 2=0 ΤΟΤΕ
        ΕΜΦΑΝΙΣΕ i
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    

    Να γραφούν ισοδύναμα τμήματα αλγορίθμου (δηλαδή να εμφανίζουν τις ίδιες τιμές).
    α) Με χρήση της εντολής ΓΙΑ, χωρίς την εντολή ΑΝ
    β) Με χρήση της εντολής ΟΣΟ, χωρίς την εντολή ΑΝ

  2. (Ε2019-Α3, ΕΞ2019-Α3) Δίνεται το παρακάτω τμήμα προγράμματος σε ΓΛΩΣΣΑ:
    sum ← 0
    ΓΙΑ i ΑΠΟ 6 ΜΕΧΡΙ 1 ΜΕ_ΒΗΜΑ -2
      sum ← sum + i
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    

    α) Να μετατραπεί σε ισοδύναμο τμήμα προγράμματος με χρήση της δομής ΟΣΟ … ΕΠΑΝΑΛΑΒΕ
    β) Να μετατραπεί σε ισοδύναμο τμήμα προγράμματος με χρήση της δομής ΑΡΧΗ ΕΠΑΝΑΛΗΨΗΣ … ΜΕΧΡΙΣ_ΟΤΟΥ

  3. χ
  4. χ
  5. χ