Δημιουργία σειρών από αριθμούς

Ξεκίνησε από Νίκος Αδαμόπουλος, 07 Μαρ 2011, 10:39:49 ΜΜ

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

Νίκος Αδαμόπουλος

Να γράψετε τμήμα αλγορίθμου ο οποίος να τοποθετεί σε έναν μονοδιάστατο πίνακα 100 θέσεων τους αριθμούς:

α) 1, 2, 3, 4,...
β) 2, 4, 6, 8,...
γ) 1, 3, 5, 7,...
δ) 3, 5, 7, 9,...
ε) 3, 4, 5, 6,...
στ) 5, 10, 15, 20,...
ζ) 100, 99, 98, 97,...
η) 100, 95, 90, 85,...
θ) 1, 6, 11, 16,...

1) Με μια μεταβλητή και απλούς υπολογισμούς:

Στη γενική περίπτωση:

Για ι από 1 μέχρι 100
   Α[ι] <- α*ι+β
Τέλος_επανάληψης

όπου α σταθερός (θετικός ή αρνητικός) αριθμός που δείχνει το βήμα μεταβολής (προς τα πάνω ή τα κάτω) κάθε φορά, και β (θετικός ή αρνητικός) αριθμός που κάνει 'διόρθωση-μετατόπιση' των αριθμών (προς τα πάνω ή τα κάτω) που παράγονται από το α*ι.

Μπορούμε να το συνδυάσουμε με "υπενθύμιση" της γραφικής παράστασης της f(χ) = αx+β, όπου τα α δείχνει την "κλίση-γωνία" της ευθείας, κλπ, κλπ

Έτσι:

α) Α[ι] <- ι
β) Α[ι] <- 2*ι
γ) Α[ι] <- 2*ι-1
δ) Α[ι] <- 2*ι+1
...
ζ) Α[ι] <- 101-ι   (πολύ σημαντικό θεωρώ να καταλάβουν το:   Ν+1-i )
...

2) Με ξεχωριστές μεταβλητές:

κ <- [ο πρώτος αριθμός]
Για ι από 1 μέχρι 100
   Α[ι] <- κ
   κ <- κ+[μεταβολή]
Τέλος_επανάληψης

Sergio

Όπως και:

1) Με μια μεταβλητή και απλούς υπολογισμούς:

Για ι από β μέχρι β+99*α με_βήμα α
   Α[(ι-β) div a + 1] <- ι
Τέλος_επανάληψης

(με την ίδια σημασία στα α και β)

2) Με ξεχωριστές μεταβλητές:

κ <- 1
Για ι από β μέχρι β+99*α με_βήμα α
   Α[κ] <- ι
   κ <- κ+1
Τέλος_επανάληψης




..αν και οι δικές σου προτάσεις πιστεύω ότι διδακτικά είναι πιό χρήσιμες..
Απ τη μια η θητεία μου σε σχολικές αίθουσες: να φλυαρώ - να ελπίζω πως κατι κατάλαβαν - να εξερευνώ - να μαθαίνω. Απ την άλλη, σχεδόν συνομήλικη, η Διδακτική της Πληροφορικής: ερευνά διαδικασίες μάθησης - φλερτάρει με την Ψυχολογία - με καλεί να αφήσω το βλέμμα του Πληροφορικού και να δω με τα μάτια του δασκάλου. Τέκνα των 2, οι απόψεις μου.. (προσαρμοσμένο από τον πρόλογο του βιβλίου "Το μακρόν Φυσική προ του βραχέως διδάσκω" του Ανδρέα Κασσέτα)

Νίκος Αδαμόπουλος

Όμως για το 1) με την προϋπόθεση ότι τα α, β και i είναι ακέραιοι!

Sergio

Παράθεση από: Νίκος Αδαμόπουλος στις 07 Μαρ 2011, 11:26:55 ΜΜ
Όμως για το 1) με την προϋπόθεση ότι τα α, β και i είναι ακέραιοι!

Σωστά.. ούτε που το πρόσεξα :-[

Αν δεν είναι ακέραιοι, θα πρέπει να πάμε σε έκφραση της μορφής:   
    Α[Α_Μ((ι-β) / a) + 1] <- ι
που δεν ξέρω αν αξίζει τον κόπο ..


Απ τη μια η θητεία μου σε σχολικές αίθουσες: να φλυαρώ - να ελπίζω πως κατι κατάλαβαν - να εξερευνώ - να μαθαίνω. Απ την άλλη, σχεδόν συνομήλικη, η Διδακτική της Πληροφορικής: ερευνά διαδικασίες μάθησης - φλερτάρει με την Ψυχολογία - με καλεί να αφήσω το βλέμμα του Πληροφορικού και να δω με τα μάτια του δασκάλου. Τέκνα των 2, οι απόψεις μου.. (προσαρμοσμένο από τον πρόλογο του βιβλίου "Το μακρόν Φυσική προ του βραχέως διδάσκω" του Ανδρέα Κασσέτα)

Πανάγος94

αν όλα τα κάνεις με το βήμα είναι λάθος?? δηλαδη:

α)
κ <-- 1
Για ι απο 1 μεχρι 100
α[ι] <- ι
κ <-- κ + 1
τελος_επαναληψης

β) κ <-- 1
για ι απο 2 μεχρι 100 με_βημα 2
α[ι] <-- 1
κ <- κ + 1
τελος_επαναληψης

η) κ <-- 1
για ι απο 100 μεχρι 1 με_βημα -5
α[ι] <-- 1
κ <-- κ + 1
τελος_επαναληψης

Νίκος Αδαμόπουλος

Παράθεση από: Πανάγος94 στις 09 Δεκ 2011, 07:36:36 ΠΜ

α)
κ <-- 1
Για ι απο 1 μεχρι 100
α[κ] <- ι
κ <-- κ + 1
τελος_επαναληψης

β) κ <-- 1
για ι απο 2 μεχρι 100 με_βημα 2
α[κ] <-- ι
κ <- κ + 1
τελος_επαναληψης

η) κ <-- 1
για ι απο 100 μεχρι 1 με_βημα -5
α[κ] <-- ι
κ <-- κ + 1
τελος_επαναληψης

Πανάγος94

ααα ναι σωστά....ευχαριστώ που με διόρθωσες!! :)