αρνητικό βήμα στη ΓΙΑ

Ξεκίνησε από thanosgn, 31 Ιαν 2012, 09:02:40 ΜΜ

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

thanosgn

Καλησπέρα,
Έχω το εξής πρόβλημα: Αν σε μια δομή επανάληψης ΓΙΑ το βήμα είναι αρνητικό, ενώ η αρχική τιμή ειναι μικρότερη απο την τελική π.χ.                                 

                                                               Για i από 1 μέχρι 5 με_βήμα -1
                                                                           ...
                                                               Τέλος_επανάληψης 

Η επανάληψη αυτή εκτελείται άπειρες φορές ή καμια;

Ο καθηγητής του σχολείου υποστηρίζει πως δεν θα εκτελεστεί καμία φορα, αφού η συνθήκη καθορίζεται ανάλογα με το βήμα. Δηλ. στην περίπτωση αυτή που το βήμα είνα αρνητικό, η συνθήκη είναι: (i>=5)

Ο καθηγητής που έχω στο φροντηστήριο υποστηρίζει πως πρόκειται για ατέρμωνα βρόγχο επειδή (κατα εκείνον) η συνθήκη καθορίζεται από τη σχέση της αρχικής και της τελικής τιμής. Δηλ. εν προκειμένω η συνθήκη θα είναι: (i<=5) (επειδή 1<5)

Στο σχολικό βιβλίο δεν υπάρχει σαφής απάντηση. Αναφέρεται οτι στην περίπτωση που το βήμα είναι 0 η επανάληψη εκτελέιται άπειρες φορές, ομως δεν ξεκαθαρίζει αν είναι και η μοναδική περίπτωση που συμβάινει αυτο..

Απ'ότι έχω δει, διευκρίνηση δεν υπάρχει ούτε στα βιβλία του κ.Τσιωτάκη.

Τί συνβάινει τελικά;


Ευχαριστώ εκ των προτέρων..

evry

καμία φορά, ο καθηγητής που έχεις στο σχολείο έχει δίκιο
αν ψάξεις λίγο στο στέκι θα δεις ότι έχει ξαναγίνει αυτή η κουβέντα.
Για να το τεκμηριώσεις στον καθηγητή σου πες του να κοιτάξει στο βιβλίο του καθηγητή στην σελίδα 71. Το λέει ξεκάθαρα
Μπορείς να το κατεβάσεις από το παρακάτω link και να το δεις
http://www.pi-schools.gr/download/lessons/computers/lykeio/books/anap_bk/Kef2.zip
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

thanosgn

Παράθεση από: evry στις 31 Ιαν 2012, 09:30:35 ΜΜ
καμία φορά, ο καθηγητής που έχεις στο σχολείο έχει δίκιο
αν ψάξεις λίγο στο στέκι θα δεις ότι έχει ξαναγίνει αυτή η κουβέντα.
Για να το τεκμηριώσεις στον καθηγητή σου πες του να κοιτάξει στο βιβλίο του καθηγητή στην σελίδα 71. Το λέει ξεκάθαρα
Μπορείς να το κατεβάσεις από το παρακάτω link και να το δεις
http://www.pi-schools.gr/download/lessons/computers/lykeio/books/anap_bk/Kef2.zip


Ευχαριστώ για το ενδιαφέρον, και εγώ αυτό πιστεύω.
Παρόλα αυτά κατέβασα το σχετικό τμήμα του βιβλίου του καθηγητή αλλα δεν μου φαίνεται πως η οδηγία εινα "ξεκάθαρη". Συγκεκριμένα αναφέρει πως η τιμές από, μέχρι, βήμα μπορούν να είναι οποιεσδήποτε εφόσον ισχύουν οι περιορισμοί

από<=μεχρι με βημα>0
απο>=μεχρι με βημα<0
βημα<>0

Δεν αναφέρεται ας πούμε τι συμβαίνει στην περίπτωση που ισχύει:
"απο<=μεχρι με βημα<0"

evry

Προφανώς υπονοεί ότι δεν υπάρχει τέτοια περίπτωση.

Παράθεση από: thanosgn στις 31 Ιαν 2012, 09:43:47 ΜΜ

Δεν αναφέρεται ας πούμε τι συμβαίνει στην περίπτωση που ισχύει:
"απο<=μεχρι με βημα<0"
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

thanosgn

Παράθεση από: evry στις 31 Ιαν 2012, 09:48:15 ΜΜ
Προφανώς υπονοεί ότι δεν υπάρχει τέτοια περίπτωση.


Άρα πάλι φτάνουμε εκεί που ξεκινήσαμε.
Άν συμβεί να υπάρξει;
Κάποιος θα έλεγε πως για να απαγορεύει αυτην την περίπτωση στο βιβλίο του καθηγητή, ίσως να παραβιάζεται κάποιο κριτήριο των αλγορίθμων, δηλαδή να πρόκειται για την περίπτωση του ατέρμωνα βρόγχου.(Παραβιάζεται η περατότητα).
Η μη εκτέλεση του βρόγχου δεν αποτελεί απαγορευτική διαδικασία...

spantoulis

Ότι δεν ορίζεται δεν αγγίζεται. Οπότε μην ανησυχείς!
Μετά από τόσα χρόνια ζωής της ΑΕΠΠ δεν υπάρχει περίπτωση να βρεθείς μπροστά σε τέτοια διλήμματα (στις εξετάσεις εννοώ)
Η χρήση υπολογιστών ΔΕΝ είναι πληροφορική

Katsadouros_Dhm

Για τη λειτουργία της: "Για..." μπορούμε να πούμε ότι ισχύουν τα εξής:
Για i από α μέχρι ω με_βήμα β
...
Τέλος_επανάληψης

Το i παίρνει αρχικά την τιμή α.
Η συνθήκη που ελέγχεται εξαρτάται από το πρόσημο του βήματος β. Συγκεκριμένα:
1).Αν το βήμα είναι θετικό (β>0) τότε η συνθήκη είναι η i<=ω και εκτελείται η επανάληψη όσο η συνθήκη αυτή είναι αληθής.
2). Αν το βήμα είναι αρνητικό (β<0) τότε η συνθήκη είναι η i>=ω και εκτελείται η επανάληψη όσο η συνθήκη αυτή είναι αληθής.
(Στην ουσία και το βιβλίο του καθηγητή (σελ.71) τα ίδια λέει...)
Αν οι προηγούμενες συνθήκες είναι εξαρχής ψευδείς (δηλαδή π.χ. αν β<0 και δεν ισχύει την πρώτη φορά i>=ω τότε η επανάληψη δεν εκτελείται καμία φορά.

evry

Από τις πανελλήνιες εξετάσεις των ημερησίων το 2004

Δ. Δίνεται η παρακάτω εντολή:
Για i από τ1 μέχρι τ2 με_βήμα β
εντολή1
Τέλος_επανάληψης

Να γράψετε στο τετράδιό σας πόσες φορές εκτελείται η εντολή1 για κάθε έναν από τους παρακάτω συνδυασμούς των τιμών των μεταβλητών τ1, τ2 και β.

1.    τ1=5    τ2=0    β=–2
2.    τ1=5     τ2=1   β=2
3.    τ1=5     τ2=5    β=1
4.    τ1=5     τ2=6,5 β=0,5


Από τις πανελλήνιες εξετάσεις των εσπερινών το 2010

Θεμα Α
Α2. Δίνεται το παρακάτω τμήμα αλγορίθμου:

Για i από –3 μέχρι Α με_βήμα Β
Εμφάνισε i
Τέλος_επανάληψης

Να χαρακτηρίσετε καθεμία από τις προτάσεις που ακολουθούν και αναφέρονται στο παραπάνω τμήμα αλγορίθμου, γράφοντας στο τετράδιό σας, τον αριθμό κάθε πρότασης και δίπλα του το γράμμα Σ, αν αυτή είναι Σωστή, ή το γράμμα Λ, αν αυτή είναι Λανθασμένη.
1. Αν το Α είναι 0 και το Β είναι 1 δεν ικανοποιείται το κριτήριο της περατότητας. (μονάδες 2)
2. Αν το Α είναι –3 και το Β είναι 2 εμφανίζεται η τιμή –3. (μονάδες 2)
3. Αν το Α είναι μεγαλύτερο του 0 και το Β είναι μικρότερο του –4 ο βρόχος δεν εκτελείται καμία φορά. (μονάδες 2)
4. Αν το Α είναι 2 και το Β είναι 2 ο βρόχος εκτελείται ακριβώς 3 φορές. (μονάδες 2)
5. Αν το Α και το Β είναι θετικοί αριθμοί, ο βρόχος μπορεί να μετατραπεί με τη χρήση της εντολής Όσο...επανάλαβε. (μονάδες 2)

Οι απαντήσεις που δόθηκαν και στις 2 περιπτώσεις ήταν με το σκεπτικό ότι το
Για ι από Α μέχρι Μ με βήμα Β

δεν εκτελείται καμία φορά
όταν Β<0 και Α<Μ   ή
        Β>0  και Α>Μ
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

thanosgn

Κατάλαβα και ευχαριστώ πολυ!
Δεν είχα διαφορετική άποψη, αλλα καταλαβαίνετε τη σύγχηση κάποιου μαθητή της Γ' Λυκείου να ακούει 2 αντίθετες πόψεις απο τους καθηγητές του..

P.Tsiotakis

Θάνο, δεν υπάρχει ασάφεια στο συγκεκριμένο θέμα.
Στη δομή Για, άπειρες επαναλήψεις μπορεί να συμβούν μόνο αν το βήμα είναι 0 (άλλη συζήτηση).
Αν το βήμα έχει μη μηδενική τιμή, τότε θα πραγματοποιηθούν καμία, μία ή περισσότερες επαναλήψεις..

(πέρα από όσα εύστοχα κατέγραψαν ήδη οι συνάδελφοι) Όταν έκανα μάθημα, έλεγα στους μαθητές μου:

1. Στο
Για ι από 1 μέχρι 10 με_βήμα -2

πως θέλουμε να πάμε από το 1 στο 10 ... κατεβαίνοντας. ΔΕ ΓΙΝΕΤΑΙ
όμοια στο
Για ι από 11 μέχρι 1 με_βήμα 2
θέλουμε από το 11 να πάμε στο 1 ανεβαίνοντας


thanosgn

Το κατάλαβα.
Απλά πιστεύω πως η διατύπωση του σχολικού βιβλίου δεν είναι και τόσο ακριβής.
Το ξεκαθάρισα πλέον
Ευχαριστώ πολυ!

Συγχαρητήρια για τη δουλειά σας με το βιβλίο!  :)

Fotini_S

Αν μετατρέψουμε την για σε Όσο όμως  δεν θα έχουμε ατέρμονο βρόγχο;

Fotini_S

εννοώ στην περίπτωση που έχουμε αρνητικό βήμα...

evry

όταν έχεις αρνητικό βήμα μετατρέπεις με >= και όχι με <=
για αυτό δε γίνεται ποτέ να έχεις ατέρμονα βρόχο με τη συγκεκριμένη Για.
Ρίξε μια ματιά στο βιβλίο καθηγητή
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

andreas_p

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

Υπάρχει !!!!

Ψάξε ... λίγο ...

Και αν ... βαριέσαι , πήγαινε κατ' ευθείαν στη σελ. 178 !!!

... και εφόσον είναι μικρότερη (ή ίση)

ΑΠ