Το Στέκι των Πληροφορικών

Γενικό Λύκειο => Δομή επανάληψης => Γ΄ Λυκείου => Εντολή ΜΕΧΡΙΣ_ΟΤΟΥ => Μήνυμα ξεκίνησε από: luxx στις 22 Δεκ 2005, 01:38:16 ΜΜ

Τίτλος: μια βοηθεια σε μια ασκηση..
Αποστολή από: luxx στις 22 Δεκ 2005, 01:38:16 ΜΜ
ο κωδικας ειναι αυτος :

ΠΡΟΓΡΑΜΜΑ ΔΟΚΙΜΗ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ : Χ,Ψ1,Ψ2,Ψ3
  ΧΑΡΑΚΤΗΡΕΣ: ΑΠΑΝΤΗΣΗ
ΑΡΧΗ
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ 'ΔΩΣΕ ΕΝΑΝ ΑΡΙΘΜΟ ΑΠΟ ΤΟ 1 ΕΩΣ ΤΟ 999'
    ΔΙΑΒΑΣΕ Χ
    ΑΝ Χ>0 ΚΑΙ Χ<10 ΤΟΤΕ
      Ψ1 <-- X
      ΓΡΑΨΕ 'ΤΟ ΠΡΩΤΟ ΨΗΦΙΟ ΕΙΝΑΙ:',Ψ1
    ΑΛΛΙΩΣ_ΑΝ Χ>=10 ΚΑΙ Χ<100 ΤΟΤΕ
      Ψ1 <-- Χ DIV 10
      Ψ2 <-- Χ MOD 10
      ΓΡΑΨΕ 'ΤΟ ΠΡΩΤΟ ΨΗΦΙΟ ΕΙΝΑΙ:',Ψ1
      ΓΡΑΨΕ 'ΤΟ ΔΕΥΤΕΡΟ ΨΗΦΙΟ ΕΙΝΑΙ:',Ψ2
    ΑΛΛΙΩΣ_ΑΝ Χ>=100 ΚΑΙ Χ<1000 ΤΟΤΕ
      Ψ1 <-- Χ DIV 100
      Ψ2 <-- (Χ MOD 100) DIV 10
      Ψ3 <-- (Χ MOD 100) MOD 10
      ΓΡΑΨΕ 'ΤΟ ΠΡΩΤΟ ΨΗΦΙΟ ΕΙΝΑΙ:',Ψ1
      ΓΡΑΨΕ 'ΤΟ ΔΕΥΤΕΡΟ ΨΗΦΙΟ ΕΙΝΑΙ:',Ψ2
      ΓΡΑΨΕ 'ΤΟ ΤΡΙΤΟ ΨΗΦΙΟ ΕΙΝΑΙ:',Ψ3
    ΑΛΛΙΩΣ_ΑΝ Χ<=0 Ή Χ>=1000 ΤΟΤΕ
      ΓΡΑΨΕ 'ΛΑΘΟΣ ΚΑΤΑΧΩΡΗΣΗ'
    ΤΕΛΟΣ_ΑΝ
    ΓΡΑΨΕ 'ΘΕΛΕΙΣ ΝΑ ΣΥΝΕΧΙΣΕΙΣ;'
      ΔΙΑΒΑΣΕ ΑΠΑΝΤΗΣΗ
 ΜΕΧΡΙΣ_ΟΤΟΥ ΑΠΑΝΤΗΣΗ<>ΝΑΙ
 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΔΟΚΙΜΗ

τι πρεπει να κανω, ωστε να δεχεται για απαντησεις μονο το ΝΑΙ και το ΟΧΙ ετσι ουτως ωστε, οταν καταχωρειται μια αλλη λεξη, τοτε να εμφανιζει μηνυμα λαθους και να ξαναεπαναλαμβανει την ερωτηση, για το εαν θα θελει να συνεχισει ή οχι;
Τίτλος: Re: μια βοηθεια σε μια ασκηση..
Αποστολή από: EleniK στις 22 Δεκ 2005, 02:00:31 ΜΜ
Αυτό που κάνεις για να δέχεται σαν απάντηση μόνο το ΝΑΙ και το ΟΧΙ είναι εγκυρότητα τιμής. Δηλαδή είτε

Διάβασε απάντηση
όσο απάντηση <> 'ΝΑΙ' και απάντηση <> 'ΟΧΙ' επανάλαβε
       Εμφάνισε 'Λάθος απάντηση. Ξαναδώσε απάντηση'
       Διάβασε απάντηση
Τέλος_επανάληψης

ή μπορείς να κάνεις εγκυρότητα με την Αρχή_επανάληψης.
Τίτλος: Re: μια βοηθεια σε μια ασκηση..
Αποστολή από: EleniK στις 22 Δεκ 2005, 02:17:58 ΜΜ
οοps! το έστειλα πριν τελειώσω την απάντηση. ΑΠλά με το αρχή_επανάληψης γίνεται:

Αρχή_επανάληψης
Γράψε 'Θέλεις να συνεχίσεις;΄
Διάβασε απάντηση
Μέχρις_ότου απάντηση='ΝΑΙ' ή απάντηση='ΟΧΙ'

Στη δεύτερη περίπτωση δεν εμφανίζει μήνυμα λάθους, κάτι το οποίο κάνει με την όσο.. επανάλαβε. Πάντως διόρθωσε ότι έχω βάλει εμφάνισε με γράψε. Δεν είχα δει ότι το ήθελες για πρόγραμμα. Προσωπικά είμαι fun της Όσο.

Τίτλος: Re: μια βοηθεια σε μια ασκηση..
Αποστολή από: luxx στις 22 Δεκ 2005, 02:38:29 ΜΜ
στην δευτερη περιπτωση και ναι να πατησω και οχι, η εφαρμογη κλεινει. το ιδιο γινεται και με την πρωτη.
Τίτλος: Re: μια βοηθεια σε μια ασκηση..
Αποστολή από: EleniK στις 22 Δεκ 2005, 03:48:08 ΜΜ
 Πώς είναι δυνατόν να κλείνει η εφαρμογή, αφού αν το 'τρέξεις' και βάλεις σαν απάντηση ='Ναι' τότε 'ΝΑΙ' <>'ΝΑΙ' είναι ψευδής και συνεχίζει, ενω αν βάλεις σαν απάντηση το 'ΟΧΙ' τότε η συνθήκη είναι αληθής άρα τερματίζει η επανάληψη.

Αν βάλεις κάποια άλλη απάντηση τότε τι κάνει?

Φαντάζομαι ότι στο πρόγραμμά σου το 'ΝΑΙ' είναι μέσα σε εισαγωγικά έτσι΄; διότι στο πρόγραμμα εδώ δεν έχει εισαγωγικά. Επίσης έχεις ένα τέλος_επανάληψης, το οποίο όμως από πού ξεκινάει? Αυτά είναι λάθη αντιγραφής ή όχι?
Τίτλος: Re: μια βοηθεια σε μια ασκηση..
Αποστολή από: P.Tsiotakis στις 22 Δεκ 2005, 04:03:05 ΜΜ
Αλγόριθμος ΔΟΚΙΜΗ
Αρχή_επανάληψης
  Εμφάνισε "Δώσε αριθμό στο διάστημα [1, 999]"
  Αρχή_επανάληψης
    Διάβασε Χ
  Μέχρις_ότου Χ >= 1 και Χ <= 999
  ! ...η δική σου επεξεργασία ή ακόμα καλύτερα:
  Αρχή_επανάληψης
    Εμφάνισε Χ div 10
    Χ <-- Χ mod 10
  Μέχρις_ότου (Χ = 0)
  Εμφάνισε "Θα συνεχίσεις ;"
  Αρχή_επανάληψης  ! έλεγχος δεδομένων για απάντηση
        Διάβασε απάντηση
  Μέχρις_ότου απάντηση = "Ναι" ή απάντηση = "Όχι"
Μέχρις_ότου απάντηση = "Όχι"
Τέλος ΔΟΚΙΜΗ