Η μετατροπή μεταξύ των δομών επανάληψης (ΓΙΑ, ΟΣΟ, ΜΕΧΡΙΣ_ΟΤΟΥ) είναι μια σημαντική δεξιότητα στον προγραμματισμό, καθώς επιτρέπει την προσαρμογή του κώδικα σε διαφορετικές καταστάσεις. Κάθε δομή έχει τα δικά της χαρακτηριστικά και χρήσεις, και η κατανόηση του πώς να μετατρέπετε την μία στην άλλη βοηθά στη βελτιστοποίηση και την ευελιξία του κώδικα.
Στόχος αυτού του μαθήματος είναι να κατανοήσετε:
Για να μετατρέψετε έναν βρόχο ΟΣΟ σε ΓΙΑ, πρέπει να:
Αρχικός Κώδικας (ΟΣΟ):
i ← 1 ΟΣΟ i <= 10 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μετατροπή σε ΓΙΑ:
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Αρχικός Κώδικας (ΟΣΟ):
i ← 1 ΟΣΟ i <= 20 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μετατροπή σε ΓΙΑ:
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 20 ΜΕ ΒΗΜΑ 2 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Σημείωση: Δεν είναι πάντα δυνατή η μετατροπή ενός βρόχου ΟΣΟ σε ΓΙΑ, καθώς η συνθήκη του βρόχου ΟΣΟ μπορεί να μην είναι γραμμική ή να εξαρτάται από πολλαπλές μεταβλητές.
Για να μετατρέψετε έναν βρόχο ΟΣΟ σε ΜΕΧΡΙΣ_ΟΤΟΥ, πρέπει να:
Αρχικός Κώδικας (ΟΣΟ):
i ← 1 ΟΣΟ i <= 10 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μετατροπή σε ΜΕΧΡΙΣ_ΟΤΟΥ:
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 10 ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Αρχικός Κώδικας (ΟΣΟ):
i ← 1 ΟΣΟ i <= 20 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μετατροπή σε ΜΕΧΡΙΣ_ΟΤΟΥ:
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 20 ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Σημείωση: Η μετατροπή από ΟΣΟ σε ΜΕΧΡΙΣ_ΟΤΟΥ είναι δυνατή μόνο αν ο βρόχος ΟΣΟ εκτελείται τουλάχιστον μία φορά.
Για να μετατρέψετε έναν βρόχο ΓΙΑ σε ΟΣΟ, πρέπει να:
Αρχικός Κώδικας (ΓΙΑ):
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μετατροπή σε ΟΣΟ:
i ← 1 ΟΣΟ i <= 10 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Αρχικός Κώδικας (ΓΙΑ):
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 20 ΜΕ ΒΗΜΑ 2 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μετατροπή σε ΟΣΟ:
i ← 1 ΟΣΟ i <= 20 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Αρχικός Κώδικας (ΓΙΑ):
ΓΙΑ i ΑΠΟ 10 ΜΕΧΡΙ 1 ΜΕ ΒΗΜΑ -1 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μετατροπή σε ΟΣΟ:
i ← 10 ΟΣΟ i >= 1 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i - 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Για να μετατρέψετε έναν βρόχο ΓΙΑ σε ΜΕΧΡΙΣ_ΟΤΟΥ, πρέπει να:
Αρχικός Κώδικας (ΓΙΑ):
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Βήμα 1: Μετατροπή σε ΟΣΟ:
i ← 1 ΟΣΟ i <= 10 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Βήμα 2: Μετατροπή σε ΜΕΧΡΙΣ_ΟΤΟΥ:
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 10 ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Αρχικός Κώδικας (ΓΙΑ):
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 20 ΜΕ ΒΗΜΑ 2 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Βήμα 1: Μετατροπή σε ΟΣΟ:
i ← 1 ΟΣΟ i <= 20 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Βήμα 2: Μετατροπή σε ΜΕΧΡΙΣ_ΟΤΟΥ:
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 20 ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Για να μετατρέψετε έναν βρόχο ΜΕΧΡΙΣ_ΟΤΟΥ σε ΟΣΟ, πρέπει να:
Αρχικός Κώδικας (ΜΕΧΡΙΣ_ΟΤΟΥ):
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 10 ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μετατροπή σε ΟΣΟ:
i ← 1 ΟΣΟ i <= 10 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Αρχικός Κώδικας (ΜΕΧΡΙΣ_ΟΤΟΥ):
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 20 ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μετατροπή σε ΟΣΟ:
i ← 1 ΟΣΟ i <= 20 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Σημείωση: Η μετατροπή από ΜΕΧΡΙΣ_ΟΤΟΥ σε ΟΣΟ είναι δυνατή μόνο αν ο βρόχος ΜΕΧΡΙΣ_ΟΤΟΥ εκτελείται τουλάχιστον μία φορά και η συνθήκη μπορεί να εκφραστεί ως το αντίθετο μιας συνθήκης που ελέγχεται στην αρχή.
Για να μετατρέψετε έναν βρόχο ΜΕΧΡΙΣ_ΟΤΟΥ σε ΓΙΑ, πρέπει να:
Αρχικός Κώδικας (ΜΕΧΡΙΣ_ΟΤΟΥ):
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 10 ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Βήμα 1: Μετατροπή σε ΟΣΟ:
i ← 1 ΟΣΟ i <= 10 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Βήμα 2: Μετατροπή σε ΓΙΑ:
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Αρχικός Κώδικας (ΜΕΧΡΙΣ_ΟΤΟΥ):
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 20 ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Βήμα 1: Μετατροπή σε ΟΣΟ:
i ← 1 ΟΣΟ i <= 20 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Βήμα 2: Μετατροπή σε ΓΙΑ:
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 20 ΜΕ ΒΗΜΑ 2 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Σημείωση: Η μετατροπή από ΜΕΧΡΙΣ_ΟΤΟΥ σε ΓΙΑ είναι δυνατή μόνο αν ο αριθμός των επαναλήψεων είναι γνωστός εκ των προτέρων.
Να μετατρέψετε τον ακόλουθο βρόχο ΟΣΟ σε ΓΙΑ:
i ← 5 ΟΣΟ i <= 15 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Να μετατρέψετε τον ακόλουθο βρόχο ΟΣΟ σε ΜΕΧΡΙΣ_ΟΤΟΥ:
i ← 3 ΟΣΟ i <= 12 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i * 2 i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Να μετατρέψετε τον ακόλουθο βρόχο ΓΙΑ σε ΟΣΟ:
ΓΙΑ i ΑΠΟ 10 ΜΕΧΡΙ 1 ΜΕ ΒΗΜΑ -1 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Να μετατρέψετε τον ακόλουθο βρόχο ΓΙΑ σε ΜΕΧΡΙΣ_ΟΤΟΥ:
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 8 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Να μετατρέψετε τον ακόλουθο βρόχο ΜΕΧΡΙΣ_ΟΤΟΥ σε ΟΣΟ:
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 7 ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Να μετατρέψετε τον ακόλουθο βρόχο ΜΕΧΡΙΣ_ΟΤΟΥ σε ΓΙΑ:
i ← 5 ΜΕΧΡΙΣ_ΟΤΟΥ i > 15 ΓΡΑΨΕ i i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Να μετατρέψετε τον ακόλουθο βρόχο ΓΙΑ σε ΜΕΧΡΙΣ_ΟΤΟΥ:
ΓΙΑ i ΑΠΟ 20 ΜΕΧΡΙ 1 ΜΕ ΒΗΜΑ -2 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Να μετατρέψετε τον ακόλουθο βρόχο ΜΕΧΡΙΣ_ΟΤΟΥ σε ΓΙΑ:
i ← 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 10 ΓΡΑΨΕ i i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ