Αποστολέας Θέμα: Μετατροπή Δομών Επιλογής  (Αναγνώστηκε 2694 φορές)

Someone

  • Επισκέπτης
Μετατροπή Δομών Επιλογής
« στις: 23 Φεβ 2006, 06:24:51 μμ »
Α) Πως μπορώ να μετατρέψω τον αλγόριθμο
....
ΑΝ Συνθήκη ΤΟΤΕ
  ομάδα_εντολών1
ΑΛΛΙΩΣ
  ομάδα_εντολών2
ΤΕΛΟΣ_ΑΝ
....

με απλές δομές επιλογής (ΑΝ..ΤΟΤΕ..ΤΕΛΟΣ_ΑΝ)

Β) Πως μπορώ να μεταρέψω τον αλγόριθμο
....
ΑΝ Συνθήκη1 ΤΟΤΕ
  ομάδα_εντολών1
ΑΛΛΙΩΣ_ΑΝ Συνθήκη2 ΤΟΤΕ
  ομάδα_εντολών2
ΑΛΛΙΩΣ
  ομάδα_εντολών3
ΤΕΛΟΣ_ΑΝ
...

με απλές δομές επιλογής (ΑΝ..ΤΟΤΕ..ΤΕΛΟΣ_ΑΝ)

andreas_p

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 996
Απ: Μετατροπή Δομών Επιλογής
« Απάντηση #1 στις: 24 Φεβ 2006, 08:19:27 πμ »
A)

ΑΝ Συνθήκη ΤΟΤΕ
  ομάδα_εντολών1
ΤΕΛΟΣ_ΑΝ

ΑΝ  OXI Συνθήκη  ΤΟΤΕ
  ομάδα_εντολών2
ΤΕΛΟΣ_ΑΝ



Β)

ΑΝ Συνθήκη1 ΤΟΤΕ
  ομάδα_εντολών1
ΤΕΛΟΣ_ΑΝ

AN OXI(Συνθήκη1)  KAI  Συνθήκη2  ΤΟΤΕ
   ομάδα_εντολών2
ΤΕΛΟΣ_ΑΝ

AN OXI(Συνθήκη1)  KAI  ΟΧΙ(Συνθήκη2)  ΤΟΤΕ
  ομάδα_εντολών3
ΤΕΛΟΣ_ΑΝ

George

  • Θαμώνας
  • ***
  • Μηνύματα: 41
  • Γράψτε το προσωπικό σας σλόγκαν!
Απ: Μετατροπή Δομών Επιλογής
« Απάντηση #2 στις: 25 Φεβ 2006, 01:34:50 πμ »
Η μετατροπή γίνεται όπως έγραψε παραπάνω ο συνάδελφος Αντρέας αρκεί να μην μεταβάλλεται κάποια από τις μεταβλητές που περιέχονται στις συνθήκες.
 
Παράδειγμα το 3ο θέμα του 2002
ΑΝ Υ>Α ΤΟΤΕ
   Υ <-  Υ-Α
ΑΛΛΙΩΣ_ΑΝ Υ=0 ΤΟΤΕ
   ΕΜΦΑΝΙΣΕ Α
ΑΛΛΙΩΣ
   Ποσό  <-  Α-Υ
   ΕΜΦΑΝΙΣΕ Ποσό
   Υ <-  0
ΤΕΛΟΣ_ΑΝ

Η μετατροπή του σε απλές επιλογές όπως παρακάτω είναι λάθος
ΑΝ Υ>Α ΤΟΤΕ
   Υ <-  Υ-Α
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ (Υ>Α) ΚΑΙ Υ=0 ΤΟΤΕ
   ΕΜΦΑΝΙΣΕ Α
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ (Υ>Α) ΚΑΙ  ΟΧΙ ( Υ=0) ΤΟΤΕ
   Ποσό <-  Α-Υ
   ΕΜΦΑΝΙΣΕ Ποσό
   Υ <-  0
ΤΕΛΟΣ_ΑΝ

kyramas

  • Νέος
  • *
  • Μηνύματα: 9
  • Γράψτε το προσωπικό σας σλόγκαν!
Απ: Μετατροπή Δομών Επιλογής
« Απάντηση #3 στις: 27 Φεβ 2006, 11:18:23 πμ »
για το α)

κ<-ΨΕΥΔΗΣ
ΑΝ Σ ΤΟΤΕ
  κ<-ΑΛΗΘΗΣ
  εντολές_1
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ κ ΤΟΤΕ
  εντολές_2
ΤΕΛΟΣ_ΑΝ

για το β)
κ<-ΨΕΥΔΗΣ
ΑΝ Σ1 ΤΟΤΕ
  κ<-ΑΛΗΘΗΣ
  εντολές_1
ΤΕΛΟΣ_ΑΝ
ΑΝ (ΟΧΙ κ) ΚΑΙ Σ2 ΤΟΤΕ
  κ<-ΑΛΗΘΗΣ
  εντολές_2
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ κ ΤΟΤΕ
  εντολές_3
ΤΕΛΟΣ_ΑΝ

η μεταβλητή κ είναι μια μεταβλητή διαφορετική από το
σύνολο των μεταβλητών που διαχειρίζονται η εντολές
των αλγορίθμων

Παρατήρηση:
α)Ο έλεγχος των συνθηκών πρέπει να γίνεται μία μόνο φορά
β) Πρέπει πάντα να έχουμε μία μόνο είσοσο
σε μπλοκ εντολών

landreou

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 124
Απ: Μετατροπή Δομών Επιλογής
« Απάντηση #4 στις: 18 Νοέ 2013, 02:23:49 μμ »
Αρα κινούμαστε με βάση αυτά ;

Δηλαδή :

για το α)
ΑΝ Συνθήκη ΤΟΤΕ
  ομάδα_εντολών1
ΑΛΛΙΩΣ
  ομάδα_εντολών2
ΤΕΛΟΣ_ΑΝ
-----------------------μετατροπη (α) -----------------------
κ<-ΨΕΥΔΗΣ
ΑΝ Σ ΤΟΤΕ
  κ<-ΑΛΗΘΗΣ
  εντολές_1
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ κ ΤΟΤΕ
  εντολές_2
ΤΕΛΟΣ_ΑΝ
----------------------------------------------------------------
-----------------------μετατροπη (β) -----------------------
κ<-ΨΕΥΔΗΣ
ΑΝ Σ1 ΤΟΤΕ
  κ<-ΑΛΗΘΗΣ
  εντολές_1
ΤΕΛΟΣ_ΑΝ
ΑΝ (ΟΧΙ κ) ΚΑΙ Σ2 ΤΟΤΕ
  κ<-ΑΛΗΘΗΣ
  εντολές_2
ΤΕΛΟΣ_ΑΝ
ΑΝ ΟΧΙ κ ΤΟΤΕ
  εντολές_3
ΤΕΛΟΣ_ΑΝ
----------------------------------------------------------------

Λαμπράκης Μανώλης

  • Ομάδα διαγωνισμάτων 2017
  • *
  • Μηνύματα: 529
Απ: Μετατροπή Δομών Επιλογής
« Απάντηση #5 στις: 21 Νοέ 2013, 09:00:22 πμ »
Καλημέρα σε όλους

ήθελα να ρωτήσω η μετατροπή με την λογική μεταβλητή καλύπτει την περίπτωση όπου μεταβέλεται η μεταβλητή της συνθήκη ??

την διδάσκεται αυτή την μερίπτωση μετατροπής, ή είνια λίγο πιο τραβηγμένη ??? ίσως στην επανάληψη...

ευχαριστώ