Μετατροπή δομής Όσο...Επανάλαβε σε Για...Από...Μέχρι

Ξεκίνησε από evry, 11 Δεκ 2007, 03:01:48 ΜΜ

« προηγούμενο - επόμενο »

evry


    Αν σας έλεγαν να μετατρέψετε την παρακάτω δομή επανάληψης σε Για...Από...Μέχρι τι θα απαντούσατε?

Ι <-- 27
ΟΣΟ Ι <= 28 ΕΠΑΝΑΛΑΒΕ
   ΕΜΦΑΝΙΣΕ Ι
   Ι <-- Ι  - 8
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

clevercitizen

Ατέρμονος βρόγχος? Χρησιμοποιούμε την ΓΙΑ όταν ξέρουμε τον ακριβή αριθμό επαναλήψεων. Εδώ οι επαναλήψεις είναι άπειρες.
ΘΕΛΩ
                ΑΛΛΑΓΗ
                ΕΚΠΑΙΔΕΥΤΙΚΟΥ
                ΣΥΣΤΗΜΑΤΟΣ

alkisg

Κώδικας: ΓΛΩΣΣΑ
ΓΙΑ ι ΑΠΟ 27 ΜΕΧΡΙ 28 !ΜΕ_ΒΗΜΑ 1
  ΓΡΑΨΕ ι
  ι <- ι - 9
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ


:) :) :) lol

Βρακόπουλος Αθανάσιος Λ.

#3
Αυτή η επανάληψη εκτελείται άπειρες φορές.
Μια τέτοια δομή επανάληψης δεν μπορεί να γραφεί με το την δομή «Για».
Η δομή επανάληψης  «Για» χρησιμοποιείται για να  εκφράσουμε επανάληψη με καθορισμένο αριθμό επαναλήψεων.
Το τμήμα αλγορίθμου:
ΓΙΑ ι ΑΠΟ 27 ΜΕΧΡΙ 28 !ΜΕ_ΒΗΜΑ 1
  ΓΡΑΨΕ ι
  ι <- ι - 9
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

δεν πρέπει να έχει την εντολή "ι <- ι - 9" διότι αυτή αλλάζει την τιμή της μεταβλητής "ι".

alkisg

Εννοείται ότι το πρότεινα για αστείο, γι' αυτό έβαλα και τα lol (laugh out loud) στο τέλος...

Σύμφωνα με το σχολικό εγχειρίδιο δεν προτείνεται να μεταβάλλουμε την τιμή του μετρητή εντός της επανάληψης.

EleniK

και εγώ νομίζω θα έγραφα οτι δε γίνεται η μεατροπή, λόγω του ότι είναι ατερμων.
Ελένη Κοκκίνου
Καθηγήτρια Πληροφορικής, ΠΕ19

Χάρης Τσιαΐρης

Επειδή δεν ίσχύει το κρητήριο της περατότητας, συμπερένουμε ότι δεν είναι αλγόριθμος αλλά υπολογιστική διαδικασία. Άρα δεν έχω να περιγράψω ισοδύναμο αλγόριθμο (κάτι που δεν γίνεται εξάλου), αλλά ισοδύναμη υπολογιστική διαδικασία. (Δηλ. να έχει την ίδια έξοδο για την ίδια είσοδο.)
ʼρα θα έστεκε σαν απάντηση ένας ατέρμονος βρόγχος για κ ... με βήμα 0 (με άσχετη μεταβλητή) που προφανώς δεν είναι αλγόριθμος, αλλά υπολογιστική διαδικασία.

Χάρης Τσιαΐρης

prapasl

Στα θέματα Εσπερινών Ιουνίου 2007 έχει την εξής ερώτηση:

(ΘΕΜΑ 1β)
Δίνεται η παρακάτω εντολή:

Για Α από Β μέχρι Γ με_βήμα Δ
  Εμφάνισε "ΚΑΛΗΣΠΕΡΑ"
Τέλος_επανάληψης

Να γράψετε στο τετράδιό σας πόσες φορές εκτελείται η εντολή Εμφάνισε για καθένα από τους παρακάτω συνδυασμούς των τιμών των μεταβλητών Β, Γ και Δ:
1. Β = 2 Γ = 5 Δ = 1
2. Β =-1 Γ = 1 Δ = 0,5
3. Β =-7 Γ =-6 Δ =-5
4. Β = 5 Γ = 5 Δ = 1

Στον συνδυασμό 3 η απάντηση είναι άπειρες ή καμμία;

Η μετατροπή σε Όσο είναι αυτή...

Α <-- -7
ΟΣΟ Α >= -6 ΕΠΑΝΑΛΑΒΕ
  ΕΜΦΑΝΙΣΕ 'ΚΑΛΗΣΠΕΡΑ'
  Α <-- Α - 5
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

... οπότε δεν εκτελείται καμμία ή αυτή...

Α <-- -7
ΟΣΟ Α <= -6 ΕΠΑΝΑΛΑΒΕ
  ΕΜΦΑΝΙΣΕ 'ΚΑΛΗΣΠΕΡΑ'
  Α <-- Α - 5
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

... οπότε εκτελείται άπειρες !!

Τελικά η φορά του τελεστή σύγκρισης αποφασίζεται από το βήμα (αν θετικό τότε <=, αν αρνητικό >=) ή από το αν τα όρια τιμών του μετρητή πηγαίνουν από κάτω προς τα πάνω (<=) ή από πάνω προς τα κάτω (>=); Είναι προφανές ότι το ένα κριτήριο έρχεται σε σύγκρουση με το άλλο.

Στις τάξεις διαφορετικοί καθηγητές δίνουν διαφορετικές απάντήσεις.
Παρακαλώ πείτε τη γνώμη σας.
Λεωνίδας Πράπας
Καθηγητής ΠΕ19, MSc Πληροφορικής

Αλεξόπουλος Ανδρέας

Σύμφωνα και με τα παραδείγματα του βιβλίου το πρώτο, δηλαδή το βήμα καθορίζει την φορά του τελεστή σύγκρισης. Εξάλλου η ερώτηση αυτή είναι παρόμοια με το παράδειγμα που αναφέρει το βιβλίο στη σελίδα 44 στο πλάι αριστερά όπου λέει ότι ο βρόχος "Για κ από 5 μέχρι 1" (ενοείται το βήμα θετικό) δεν εκτελείται καμμία φορά. Δηλαδή εδώ έχουμε αρχική τιμή μεγαλύτερη της τελικής και βήμα θετικό, ενώ η ερώτηση στις πανελλήνιες ήταν αρχική τιμή μικρότερη της τελικής και βήμα αρνητικό

P.Tsiotakis

Ακριβώς Ανδρέα..

Λεωνίδα, μας βλέπω να καραφλιάζουμε

andreas_p

Στις τάξεις διαφορετικοί καθηγητές δίνουν διαφορετικές απάντήσεις.

To  καθηγητές , αν το βάλεις σε   '  '  τότε  ...  είμαστε  οκ. (no comment)


Ανδρέας

MichaelP

Αν και εχει να λαβει απαντησεις καιρό, θα ήθελα να ρωτησω, ποιο το πρόβλημα του να μεταβάλλεται η μεταβλητη της ΓΙΑ εντός του block αυτης, αν ο κώδικας που προκύπτει δεν είναι ατερμων βρογχος, δηλαδή πληροί τα αλγοριθμικά κριτηρια; :-\

Μ.

Laertis

Νικολακάκης Γιώργος
Μηχανικός Η/Υ Συστημάτων
Καθηγητής Πληροφορικής
http://users.sch.gr/gnikola

evry

  Παραβιάζει τα κριτήρια ορθότητας της δομής Για όπως αυτή ορίζεται στο τετράδιο του μαθητή και φέρνει σε δύσκολη θέση
τους συγγραφείς του διδακτικού πακέτου >:D

Παράθεση από: MichaelP στις 04 Δεκ 2008, 04:05:15 ΠΜ
Αν και εχει να λαβει απαντησεις καιρό, θα ήθελα να ρωτησω, ποιο το πρόβλημα του να μεταβάλλεται η μεταβλητη της ΓΙΑ εντός του block αυτης, αν ο κώδικας που προκύπτει δεν είναι ατερμων βρογχος, δηλαδή πληροί τα αλγοριθμικά κριτηρια; :-\

Μ.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

pgrontas

Παράθεση από: evry στις 04 Δεκ 2008, 04:01:00 ΜΜ
  Παραβιάζει τα κριτήρια ορθότητας της δομής Για όπως αυτή ορίζεται στο τετράδιο του μαθητή και φέρνει σε δύσκολη θέση
τους συγγραφείς του διδακτικού πακέτου >:D

Παράθεση από: MichaelP στις 04 Δεκ 2008, 04:05:15 ΠΜ
Αν και εχει να λαβει απαντησεις καιρό, θα ήθελα να ρωτησω, ποιο το πρόβλημα του να μεταβάλλεται η μεταβλητη της ΓΙΑ εντός του block αυτης, αν ο κώδικας που προκύπτει δεν είναι ατερμων βρογχος, δηλαδή πληροί τα αλγοριθμικά κριτηρια; :-\

Μ.

Σωστός!!!
Programs must be written for people to read, and only incidentally for machines to execute - Harold Abelson