Θέμα A, Ερώτημα 1, 2012, Μαΐου-Ιουνίου, Ημερήσια

Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη ΣΩΣΤΟ, αν είναι σωστή, ή τη λέξη ΛΑΘΟΣ, αν είναι λανθασμένη.

  1. Ένας πίνακας έχει σταθερό περιεχόμενο αλλά μεταβλητό μέγεθος.
  2. Οι εντολές που βρίσκονται μέσα σε εντολή επανάληψης «Όσο … επανάλαβε» εκτελούνται τουλάχιστον μία φορά.
  3. Η χρήση των πινάκων σε ένα πρόγραμμα αυξάνει την απαιτούμενη μνήμη.
  4. Οι δυναμικές δομές δεδομένων αποθηκεύονται πάντα σε συνεχόμενες θέσεις μνήμης.
  5. Η μέθοδος επεξεργασίας «πρώτο μέσα πρώτο έξω» (FIFO) εφαρμόζεται στη δομή δεδομένων ΟΥΡΑ.

Μονάδες 5

Τα θέματα σε pdf, 2012, Μαΐου-Ιουνίου, Ημερήσια

Θέμα A, Ερώτημα 4, 2012, Μαΐου-Ιουνίου, Ημερήσια

Δίνεται το παρακάτω τμήμα αλγορίθμου, το οποίο εμφανίζει τα τετράγωνα των περιττών αριθμών από το 99 μέχρι το 1 με φθίνουσα σειρά.

Για i από 99 μέχρι 1 μεβήμα -2
x <- i ^2
εμφάνισε x
Τέλος
επανάληψης

α. Να ξαναγράψετε στο τετράδιό σας το παραπάνω τμήμα αλγορίθμου με αποκλειστική χρήση της δομής επανάληψης «Όσο … επανάλαβε».

(μονάδες 5)

β. Να ξαναγράψετε στο τετράδιό σας το παραπάνω τμήμα αλγορίθμου με αποκλειστική χρήση της δομής επανάληψης «Αρχήεπανάληψης … Μέχριςότου».

(μονάδες 5)

Μονάδες 10

Τα θέματα σε pdf, 2012, Μαΐου-Ιουνίου, Ημερήσια

Θέμα Β, Ερώτημα 1, 2012, Μαΐου-Ιουνίου, Ημερήσια

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

Κ<- 1
Χ<- -1
i<- 0
Όσο Χ<7 επανάλαβε
i<- i + 1
Κ<-Κ∗Χ
Εμφάνισε Κ, Χ
Αν i mod 2=0  τότε
X<- X+1
Αλλιώς
X<- X+2
ΤέλοςΑν
Τέλος
επανάληψης

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

Μονάδες 10

Τα θέματα σε pdf, 2012, Μαΐου-Ιουνίου, Ημερήσια

Θέμα Α, Ερώτημα 1, 2013, Μαΐου-Ιουνίου, Ημερήσια

Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-6 και δίπλα τη λέξη ΣΣΤΟ, αν η πρόταση είναι σωστή, ή τη λέξη ΛΑΘΟΣ, αν η πρόταση είναι λανθασμένη.

  1. Η τιμή μιας μεταβλητής και ο τύπος της μπορούν να αλλάζουν κατά την εκτέλεση ενός προγράμματος.
  2. Όταν υπάρχουν δυο βρόχοι, ο ένας εμφωλευμένος μέσα στον άλλο, αυτός που ξεκινάει τελευταίος πρέπει να ολοκληρώνεται πρώτος.
  3. Μια διαφορά της εντολής Όσο σε σχέση με την εντολή Μέχρις_ότου οφείλεται στη θέση της λογικής συνθήκης στη ροή εκτέλεσης των εντολών.
  4. Αν Α=2, Β=3, Γ=4 και Δ=ΑΛΗΘΗΣ, τότε η τιμή της έκφρασης (Β*Γ>Α+Β) ΚΑΙ (ΟΧΙ(Δ)) είναι ΑΛΗΘΗΣ.
  5. Κατά την εκτέλεση της εντολής ΔΙΑΒΑΣΕ, το πρόγραμμα διακόπτει την εκτέλεσή του και περιμένει την εισαγωγή τιμών από το πληκτρολόγιο.
  6. Οι πίνακες δεν μπορούν να έχουν περισσότερες από δύο διαστάσεις.

Μονάδες 6

Θέμα Β, Ερώτημα 1, 2013, Μαΐου-Ιουνίου, Ημερήσια

Δίνεται ο παρακάτω αλγόριθμος:

Αλγόριθμος Παράγοντες
Διάβασε
α k<- 2
Όσο α>1 επανάλαβε
Αν
α mod k = 0 τότε
Εμφάνισε
k
α<-α div k
Αλλιώς

k<-k+1
Τέλος_αν
Τέλος
_επανάληψης
Τέλος
Παράγοντες

Να σχεδιάσετε στο τετράδιό σας το αντίστοιχο διάγραμμα ροής.

Μονάδες 10

Ερώτημα 2, Θέμα Β, 2011, Επαναληπτικές, Ημερήσια

Δίνεται ο πίνακας Α τεσσάρων στοιχείων με τιμές:
Α[1]=3, Α[2]=5, Α[3]=8, Α[4]=13 και το παρακάτω τμήμα αλγορίθμου:
i <- 1 j <- 4
Όσο i<=3 επανάλαβε
πρόχειρο <- Α[j]
A[j] <- Α[i]
Α[i] <- πρόχειρο
Γράψε   Α[1], Α[2], Α[3]
i <- i + 1
j <- j – 1
Τέλος_επανάληψης
Να γράψετε στο τετράδιό σας τις τιμές που θα εμφανισθούν κατά την εκτέλεσή του.
Μονάδες 9

Τα θέματα σε pdf, 2011, Επαναληπτικές, Ημερήσια

Παράδειγμα 8, Βιβλίου, Επαναληπτική είσοδος στοιχείων

Να γραφεί αλγόριθμος που να διαβάζει ένα άγνωστο πλήθος αριθμών και να εμφανίζει τον κάθε αριθμό.
Το πρόβλημα αυτό παρουσιάζει την εξής ιδιομορφία: ενώ φαίνεται ότι θα χρησιμοποιηθεί για τη λύση του κάποια επαναληπτική διαδικασία, δεν προσδιορίζεται ο τρόπος τερματισμού της. Καταρχήν, λοιπόν, ας εξετάσουμε τον αλγόριθμο που εκτελεί ένας άνθρωπος, όταν αντιγράφει κάποιους αριθμούς, όπως για παράδειγμα όταν συγκεντρώνονται τα έξοδα από διάφορους λογαριασμούς. Ο αλγόριθμος αυτός είναι:
Βήμα 1. Διάβασε έναν αριθμό
Βήμα 2. Γράψε τον αριθμό
Βήμα 3. Επανάλαβε τη διαδικασία από το βήμα 1.
Ο αλγόριθμος αυτός έχει μια ατέλεια, δεν διαθέτει τρόπο τερματισμού (ατέρμων βρόχος). Η έλλειψη αυτή είναι φυσική, εφόσον ο αλγόριθμος εκτελείται από έναν άνθρωπο. Αυτός θα σταματήσει να γράφει, όταν δεν υπάρχουν πλέον άλλοι αριθμοί. Ωστόσο είναι δυνατόν να διορθωθεί αυτή η ατέλεια, αν το βήμα 3 λάβει την εξής μορφή:
Βήμα 3. Αν υπάρχουν άλλοι αριθμοί, επανάλαβε τη διαδικασία από το βήμα 1, αλλιώς σταμάτησε.
Ο αλγόριθμος τώρα είναι σωστός και μπορεί να εκτελεστεί και από μία μηχανή. Όμως έχει ένα άλλο μειονέκτημα: ο τερματισμός γίνεται μέσα από την εντολή Αν … τότε … αλλιώς …, πράγμα που δεν συνιστάται και πρέπει να αποφεύγεται, γιατί εύκολα μπορεί να χάσει ο προγραμματιστής τον έλεγχο της ροής του προγράμματος και να οδηγηθεί σε λάθος. Για την άρση του μειονεκτήματος αυτού πρέπει να χρησιμοποιηθεί μία εντολή επαναληπτικής διαδικασίας, όπως η εντολή Όσο…επανάλαβε. Ο τελικός αλγόριθμος είναι ο εξής:
Αλγόριθμος Παράδειγμα8
Διάβασε x
Όσο x > 0 επανάλαβε
Εμφάνισε x
Διάβασε x
Τέλος
επανάληψης
Τέλος Παράδειγμα_8

Στον προηγούμενο αλγόριθμο η επαναληπτική διαδικασία τερματίζεται, όταν διαβασθεί ένας αρνητικός ή μηδενικός αριθμός. Δηλαδή, θεωρείται ότι οι εισαγόμενοι αριθμοί πρέπει να είναι θετικοί. Αν αυτό δεν συμβαίνει, τότε μπορεί να χρησιμοποιηθεί ως συνθήκη τερματισμού οποιαδήποτε συγκεκριμένη τιμή έχει συμφωνηθεί, ότι θα χρησιμοποιείται για το σκοπό αυτό, π.χ. η 999999. Προφανώς αυτή η τιμή δεν μπορεί να ανήκει στις εισαγόμενες τιμές. Στην περίπτωση αυτή η εντολή Όσο…επανάλαβε θα γραφεί ως εξής:

Όσο x ≠ 999999 επανάλαβε

Παρατήρηση: Ο βρόχος επανάληψης μπορεί να μην εκτελεσθεί καμία φορά, αν η πρώτη τιμή που διαβάζεται είναι αρνητική.

Παράδειγμα 12, Βιβλίου, Πολλαπλασιασμός αλά ρωσικά

p12kef2bmΑς θεωρήσουμε την πράξη του πολλαπλασιασμού δύο ακεραίων αριθμών και ας θυμηθούμε πώς αυτή υλοποιείται χειρωνακτικά. Τοποθετούμε, λοιπόν, τους δύο αριθμούς τον ένα κάτω από τον άλλο και πολλαπλασιάζουμε κάθε ψηφίο του κάτω αριθμού με όλα τα ψηφία του επάνω αριθμού. Πιο συγκεκριμένα, για κάθε ψηφίο του κάτω αριθμού παράγεται ένα μερικό γινόμενο, ενώ τα μερικά γινόμενα τοποθετούνται το ένα κάτω από το άλλο με μία μετατόπιση από τα δεξιά προς τα αριστερά καθώς θεωρούμε διαδοχικά τα ψηφία των μονάδων, των δεκάδων, των εκατοντάδων κ.λπ. Στη συνέχεια γίνεται η πρόσθεση των επιμέρους γινομένων, αφού τα τοποθετήσουμε στην κατάλληλη διάταξη όπως φαίνεται στο σχήμα 2.7. (περισσότερα…)

Παράδειγμα 5, Κεφάλαιο 2, Τετράδιο Εργασιών, Φοίτηση στο Πανεπιστήμιο

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

Λύση: (περισσότερα…)

ΔΣ4, Κεφάλαιο 2, Τετράδιο Εργασιών

Δίνεται ο παρακάτω αλγόριθμος:

Αλγόριθμος Ελεγχος_Ανάθεσης
 Διάβασε x
 Όσο x > 1 επανάλαβε
         Αν x mod 2 = 0 τότε      ! Αν χ είναι άρτιος τότε
            x ← x/2               ! Αλλαγή σε DIV για να εκτελεστεί στη ΓΛΩΣΣΑ
         αλλιώς 
            x ←3*x+1
        Τέλος_αν
        Γράψε x                   ! Πίνακας τιμών μεταβλητής
  Τέλος_επανάληψης                       
 Αποτελέσματα // x //
 Τέλος Ελεγχος_Ανάθεσης
 Να γράψεις τα αποτελέσματα αυτού του αλγορίθμου για x=13, x=9 και x=22. Τι παρατηρείς;

Λύση:  (περισσότερα…)

Θέμα Α, Ερώτημα 1, 2011, Μαΐου-Ιουνίου, Ημερήσια

Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη ΣΩΣΤΟ, αν είναι σωστή, ή τη λέξη ΛΑΘΟΣ, αν είναι λανθασμένη.

  1. Ένα δομημένο πρόβλημα είναι επιλύσιμο.
  2. Η λογική έκφραση Χ ΄Η (ΟΧΙ Χ) είναι πάντα αληθής για κάθε τιμή της λογικής μεταβλητής Χ.
  3. Ο αλγόριθμος της σειριακής αναζήτησης χρησιμοποιείται αποκλειστικά σε ταξινομημένους πίνακες.
  4. Όταν το πλήθος των επαναλήψεων είναι γνωστό, δεν μπορεί να χρησιμοποιηθεί η εντολή επανάληψης Όσο … Επανάλαβε.
  5. Ο πίνακας είναι μία δομή που μπορεί να περιέχει στοιχεία διαφορετικού τύπου.

Μονάδες 10