Μετατροπή Όσο σε Για με προσθήκη μεταβλητής...

Ξεκίνησε από meteo_xampos, 09 Νοε 2016, 07:26:31 ΜΜ

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

meteo_xampos

Καλησπέρα σας!!! Έχουμε ένα τμήμα αλγορίθμου το εξής...

Σ<- 0
χ<- 1
Όσο χ<=10 επανάλαβε
    χ<- χ+1
    Σ<- Σ+χ
Τελος_επανάληψης

και το μετέτρεψε ένας μαθητής μου ως εξής...

Σ<- 0
χ<- 1
Για ι από 1 μέχρι 10 !αφού το αρχικό τμημα μου δίνει 10 επαναλήψεις, κάνω και εγώ 10 επαναλήψεις με τη Για...
    χ<- χ+1
    Σ<- Σ+χ
Τελος_επανάληψης

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

gpapargi

Αυτά τα ερωτήματα προκύπτουν γιατί ποτέ δεν έχει δοθεί επίσημα κάποιος ορισμός για το τι εννοούμε όταν μιλάμε για μετατροπή από τη μια δομή επανάληψη σε μια άλλη.
Εννοούμε απλά να έχουμε την ίδια τιμή στις μεταβλητές μας; Εννοούμε να έχουμε την ίδια τιμή σε κάποιες μεταβλητές;
Η παρακάτω απάντηση που αφήνει τις ίδιες τιμές στις μεταβλητές είναι σωστή; Αν όχι γιατί;
Σ<-65
Χ<-11 
Μπορούμε να δώσουμε ένα σαφή ορισμό μετατροπής; Μετά θα απαντηθούν όλα

ΚΑΛΟΓΙΑΝΝΗΣ ΝΕΣΤΟΡΑΣ

Το ερώτημα που προκύπτει είναι εφόσον στην δομή Όσο το χ χρησιμοποιείται ως μετρητής στη δομή Για τη θέση του μετρητή παίρνει το ι οπότε ποιό το νόημα να υπάρχει το χ στη ΓΙΑ,μέσα στο βρόχο της επανάληψής του,Για να είναι ακριβής η μετατροπή από τη μια μορφή στην άλλη ???
,

Καρκαμάνης Γεώργιος

Για να αποφεύγονται  τέτοιου είδους προβλήματα με την χρήση νέων μεταβλητών, σε ορισμένα θέματα πανελληνίων αναφέρεται "χωρίς τη χρήση νέων μεταβλητών".

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