Ερώτηση για Δομή Επανάληψης "Για"

Ξεκίνησε από Χατζημιχάλης Μάριος, 20 Νοε 2011, 01:56:57 ΜΜ

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

Χατζημιχάλης Μάριος

Αξιότιμοι συνάδελφοι,
Θα ήθελα να ρωτήσω για τον δείκτη Ι στην δομή επανάληψης "Για" .
π.χ.
Για Ι από 1 μέχρι 10
       .....
       .....
Τέλος_επανάληψης

Μετά την δομή επανάληψης ο δείκτης Ι έχει την τιμή 10 ή 11 ?

Σας ευχαριστώ εκ των προτέρων!

P.Tsiotakis

το κοινώς αποδεκτό είναι οτι μετά το βρόχο, δεν πρέπει να μας ενδιαφέρει η τιμή του μετρητή της δομής Για.
Για την τιμή της οι απόψεις διύστανται

κατά τη γνώμη μου η πιο συνεπής (για το μάθημά μας και από την εκπαιδευτική οπτική γωνία) είναι πως η τιμή του μετρητή είναι το 11. Κι αυτό γιατί:
1. το Τέλος_επανάληψης, δεν έχει δικαιοδοσία να ελέγξει συνέχεια/τερματισμό. Η ροή μεταβαίνει αναγκαστικά "πάνω", στο Για, και έτσι το με_βήμα, κάνει για άλλη μια φορά (τελευταία) τη δουλειά του.
2. Το δρ του παραδείγματος 10 (αν δεν κάνω λάθος) είναι δρ της δομής Για και ουσιαστικά θέτει τον μετρητή κατά τελική τιμή + 1 (1 είναι το βήμα).


petrosp13

Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

Stefevan

Βολεύει το γεγονός ότι η τιμή είναι 11 γιατί μπορούμε να κάνουμε έναν αλγόριθμο πιο γενικό, πχ περίπτωση εύρεσης μέσου όρου,

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10 ΜΕ ΒΗΜΑ 1

Stefevan

(κάτι πάτησα... :S)

το τμήμα αλγορίθμου:

ΑΘΡ <- 0
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10 ΜΕ ΒΗΜΑ 1
  ΔΙΑΒΑΣΕ ΒΑΘΜΟΣ
  ΑΘΡ <- ΑΘΡ + ΒΑΘΜΟΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΜΟ <- ΑΘΡ / (Ι-1)
!ή ΜΟ <- ΑΘΡ/10

αν είναι να αλλάξουμε την τελική τιμή, θα κάνουμε την αλλαγή σε μία γραμμή κώδικα μόνο