Α) Πως μπορώ να μετατρέψω τον αλγόριθμο
....
ΑΝ Συνθήκη ΤΟΤΕ
ομάδα_εντολών1
ΑΛΛΙΩΣ
ομάδα_εντολών2
ΤΕΛΟΣ_ΑΝ
....
με απλές δομές επιλογής (ΑΝ..ΤΟΤΕ..ΤΕΛΟΣ_ΑΝ)
Β) Πως μπορώ να μεταρέψω τον αλγόριθμο
....
ΑΝ Συνθήκη1 ΤΟΤΕ
ομάδα_εντολών1
ΑΛΛΙΩΣ_ΑΝ Συνθήκη2 ΤΟΤΕ
ομάδα_εντολών2
ΑΛΛΙΩΣ
ομάδα_εντολών3
ΤΕΛΟΣ_ΑΝ
...
με απλές δομές επιλογής (ΑΝ..ΤΟΤΕ..ΤΕΛΟΣ_ΑΝ)
A)
ΑΝ Συνθήκη ΤΟΤΕ
ομάδα_εντολών1
ΤΕΛΟΣ_ΑΝ
ΑΝ OXI Συνθήκη ΤΟΤΕ
ομάδα_εντολών2
ΤΕΛΟΣ_ΑΝ
Β)
ΑΝ Συνθήκη1 ΤΟΤΕ
ομάδα_εντολών1
ΤΕΛΟΣ_ΑΝ
AN OXI(Συνθήκη1) KAI Συνθήκη2 ΤΟΤΕ
ομάδα_εντολών2
ΤΕΛΟΣ_ΑΝ
AN OXI(Συνθήκη1) KAI ΟΧΙ(Συνθήκη2) ΤΟΤΕ
ομάδα_εντολών3
ΤΕΛΟΣ_ΑΝ
Η μετατροπή γίνεται όπως έγραψε παραπάνω ο συνάδελφος Αντρέας αρκεί να μην μεταβάλλεται κάποια από τις μεταβλητές που περιέχονται στις συνθήκες.
Παράδειγμα το 3ο θέμα του 2002
ΑΝ Υ>Α ΤΟΤΕ
Υ <- Υ-Α
ΑΛΛΙΩΣ_ΑΝ Υ=0 ΤΟΤΕ
ΕΜΦΑΝΙΣΕ Α
ΑΛΛΙΩΣ
Ποσό <- Α-Υ
ΕΜΦΑΝΙΣΕ Ποσό
Υ <- 0
ΤΕΛΟΣ_ΑΝ
Η μετατροπή του σε απλές επιλογές όπως παρακάτω είναι λάθος
ΑΝ Υ>Α ΤΟΤΕ
Υ <- Υ-Α
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ (Υ>Α) ΚΑΙ Υ=0 ΤΟΤΕ
ΕΜΦΑΝΙΣΕ Α
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ (Υ>Α) ΚΑΙ ΟΧΙ ( Υ=0) ΤΟΤΕ
Ποσό <- Α-Υ
ΕΜΦΑΝΙΣΕ Ποσό
Υ <- 0
ΤΕΛΟΣ_ΑΝ
για το α)
κ<-ΨΕΥΔΗΣ
ΑΝ Σ ΤΟΤΕ
κ<-ΑΛΗΘΗΣ
εντολές_1
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ κ ΤΟΤΕ
εντολές_2
ΤΕΛΟΣ_ΑΝ
για το β)
κ<-ΨΕΥΔΗΣ
ΑΝ Σ1 ΤΟΤΕ
κ<-ΑΛΗΘΗΣ
εντολές_1
ΤΕΛΟΣ_ΑΝ
ΑΝ (ΟΧΙ κ) ΚΑΙ Σ2 ΤΟΤΕ
κ<-ΑΛΗΘΗΣ
εντολές_2
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ κ ΤΟΤΕ
εντολές_3
ΤΕΛΟΣ_ΑΝ
η μεταβλητή κ είναι μια μεταβλητή διαφορετική από το
σύνολο των μεταβλητών που διαχειρίζονται η εντολές
των αλγορίθμων
Παρατήρηση:
α)Ο έλεγχος των συνθηκών πρέπει να γίνεται μία μόνο φορά
β) Πρέπει πάντα να έχουμε μία μόνο είσοσο
σε μπλοκ εντολών
Αρα κινούμαστε με βάση αυτά ;
Δηλαδή :
για το α)
ΑΝ Συνθήκη ΤΟΤΕ
ομάδα_εντολών1
ΑΛΛΙΩΣ
ομάδα_εντολών2
ΤΕΛΟΣ_ΑΝ
-----------------------μετατροπη (α) -----------------------
κ<-ΨΕΥΔΗΣ
ΑΝ Σ ΤΟΤΕ
κ<-ΑΛΗΘΗΣ
εντολές_1
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ κ ΤΟΤΕ
εντολές_2
ΤΕΛΟΣ_ΑΝ
----------------------------------------------------------------
-----------------------μετατροπη (β) -----------------------
κ<-ΨΕΥΔΗΣ
ΑΝ Σ1 ΤΟΤΕ
κ<-ΑΛΗΘΗΣ
εντολές_1
ΤΕΛΟΣ_ΑΝ
ΑΝ (ΟΧΙ κ) ΚΑΙ Σ2 ΤΟΤΕ
κ<-ΑΛΗΘΗΣ
εντολές_2
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ κ ΤΟΤΕ
εντολές_3
ΤΕΛΟΣ_ΑΝ
----------------------------------------------------------------
Καλημέρα σε όλους
ήθελα να ρωτήσω η μετατροπή με την λογική μεταβλητή καλύπτει την περίπτωση όπου μεταβέλεται η μεταβλητή της συνθήκη ??
την διδάσκεται αυτή την μερίπτωση μετατροπής, ή είνια λίγο πιο τραβηγμένη ??? ίσως στην επανάληψη...
ευχαριστώ