Θέμα Α4, 2019, Eπαναληπτικές, Hμερήσια και Eσπερινά

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

Αν Χ > 0 τότε 
 Υ <- 2*Χ 
αλλιώς 
 Υ <- 2*Χ 
 Ζ <- Υ+5 
Τέλος_αν</code class="language-javascript">

Να γραφεί το ισοδύναμο τμήμα αλγορίθμου, χρησιμοποιώντας μόνο μία εντολή απλής επιλογής.
Μονάδες 6

ΛΥΣΗ

 Υ <- 2*Χ 
Αν Χ > 0 τότε 
   Ζ <- Υ+5 
Τέλος_αν</code class="language-javascript">

Παράρτημα Α – 2.5 Επιλογή – Άσκηση 8

Να γραφεί πρόγραμμα σε «ΓΛΩΣΣΑ»,
το οποίο να δέχεται από το πληκτρολόγιο έναν ακέραιο αριθμό και να ελέγχει
εάν είναι διψήφιος και θετικός. Στην περίπτωση που ισχύει, να τυπώνεται
το μήνυμα «Θετικός, Διψήφιος αριθμός»,
ενώ διαφορετικά να τυπώνονται για κάθε περίπτωση
«Μόνο θετικός» ή «Μόνο διψήφιος» ή «Ούτε θετικός, !ούτε διψήφιος»

Λύση με flags | Λύση με σύνθετες λογικές συνθήκες | λύση με πολλαπλές επιλογές

ΛΙΓΕΣ ΣΚΕΨΕΙΣ
! 53 div 10 = 5, έχει δεκάδες
! 153 div 100 = 1, έχει εκατοντάδες συνεπώς είναι τριψήφιος
! ή διαφορετικά
! 153 div 10 = 15, > 9
! 03 div 10 = 0, δεν έχει δεκάδες
! 53 div 100 = 0, δεν είναι τριψήφιος
! αν υπάρχουν δεκάδες,
! δεν πρέπει να υπάρχουν εκατοντάδες
! > 0 αν είναι θετικός
! (0 μπορεί να πάει είτε στους θετικούς είτε στους αρνητικούς)

ΠΡΟΓΡΑΜΜΑ parartima_a_sel_36_8_v1
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: a
ΛΟΓΙΚΕΣ: θετικός, διψήφιος
ΑΡΧΗ
διψήφιος <– ΨΕΥΔΗΣ
θετικός <– ΨΕΥΔΗΣ
ΔΙΑΒΑΣΕ a
! a div 10 <> 0 είναι τουλάχιστον διψήφιος
! και
! a div 100 = 0 δεν είναι τριψήφιος
Αν a div 10 <> 0 και a div 100 = 0 τότε
διψήφιος <– ΑΛΗΘΗΣ
τέλος_αν

! α > 0 είναι θετικός
αν a > 0 τότε
θετικός <– ΑΛΗΘΗΣ
τέλος_αν

αν διψήφιος = ΑΛΗΘΗΣ και θετικός = ΑΛΗΘΗΣ τότε
Γράψε ‘διψήφιος και θετικός’
τέλος_αν

αν διψήφιος = ΑΛΗΘΗΣ και θετικός = ΨΕΥΔΗΣ τότε
Γράψε ‘διψήφιος’
Τέλος_αν

αν διψήφιος = ΨΕΥΔΗΣ και θετικός = ΑΛΗΘΗΣ τότε
Γράψε ‘θετικός’
Τέλος_αν

αν διψήφιος = ΨΕΥΔΗΣ και θετικός = ΨΕΥΔΗΣ τότε
Γράψε ‘Ούτε Διψήφιος, ούτε θετικός’
Τέλος_αν

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΠΡΟΓΡΑΜΜΑ parartima_a_sel_36_8_v2
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: a
ΑΡΧΗ
ΔΙΑΒΑΣΕ a

! αν a div 10 <> 0 τότε τουλάχιστον διψήφιος
! αν a div 100 = 0 τότε δεν είναι τριψήφιος
! αν a > 0 τότε είναι θετικός

! 1η περίπτωση (διψήφιος και θετικός)
! a div 10 <> 0 είναι τουλάχιστον διψήφιος
! και
! a div 100 = 0 δεν είναι τριψήφιος
! και
! α > 0 είναι θετικός
Αν a div 10 <> 0 και a div 100 = 0 και a > 0 τότε
Γράψε ‘διψήφιος και θετικός’

! 2η περίπτωση (μόνο διψήφιος – αρνητικός ή 0)
! a div 10 <> 0 είναι τουλάχιστον διψήφιος
! και
! a div 100 = 0 δεν είναι τριψήφιος
! και
! α < 0 είναι αρνητικός
Αλλιώς_αν a div 10 <> 0 και a div 100 = 0 και a < 0 τότε
Γράψε ‘διψήφιος’

! 3η περίπτωση (δεν είναι διψήφιος, μόνο θετικός)
! a div 10 = 0 είναι μονοψήφιος
! ή
! a div 100 <> 0 είναι τουλάχιστον τριψήφιος
! και
! α > 0 είναι θετικός
Αλλιώςαν a div 10 = 0 ή a div 100 <> 0 και a > 0 τότε
Γράψε ‘θετικός’
Αλλιώς
αν a div 10 = 0 ή a div 100 <> 0 και a <= 0 τότε
Γράψε ‘Ούτε Διψήφιος, Ούτε Θετικός’
Τέλος_αν

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΠΡΟΓΡΑΜΜΑ parartima_a_sel_36_8_v3
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: a
ΑΡΧΗ
ΔΙΑΒΑΣΕ a

! 1η περίπτωση (διψήφιος και θετικός)
Αν a >=10 και a <=99 τότε Γράψε ‘διψήφιος και θετικός’ Αλλιώςαν a> 0 τότε
Γράψε ‘μόνο θετικός, όχι διψήφιος’
Αλλιώς
αν a <= -10 και a >= -99 τότε
Γράψε ‘διψήφιος’
Αλλιώς
Γράψε ‘ούτε θετικός ούτε διψήφιος’
Τέλος_αν

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

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

Δίνεται μονοδιάστατος πίνακας Α[40] και το παρακάτω ημιτελές τμήμα αλγορίθμου, το οποίο αντιγράφει όλα τα στοιχεία του Α σε ένα δισδιάστατο πίνακα Β[8,5] κατά γραμμή. Δηλαδή, τα 5 πρώτα στοιχεία του μονοδιάστατου πίνακα τοποθετούνται στην πρώτη γραμμή του πίνακα Β, τα επόμενα 5 στη δεύτερη γραμμή κ.ο.κ.

I <-- 1 
K <-- 1
Για M από 1 μέχρι …(1)…
             B[I, K] <-- A[…(2)…]
              …(3)... <-- …(4)…+ 1
             Αν …(5)… > …(6)… τότε
                        I <-- I + …(7)…
                        K <-- …(8)…
             Τέλος_αν 
Τέλος_επανάληψης

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

Μονάδες 8

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

ΛΥΣΗ

I <-- 1 
K <-- 1 
Για M από 1 μέχρι  40  
    B[I, K] <-- A[ Μ ] 
    Κ  <--  Κ  + 1 
Αν  Κ  >  5  τότε 
I ← I +  1  
K ←  1  
Τέλος_αν 
Τέλος_επανάληψης

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

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

Αν x>10 τότε
   Αν x<30 τότε 
      Κ <-- 3*x
   Αλλιώς
      Κ <-- 5*x
   Τέλος_αν
Κ<-- Κ/2
Αλλιώς
   Κ <-- x
   Αν x<5 τότε 
      Κ <-- 2*Κ
   Τέλος_αν 
 Τέλος_αν

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

Β2. Χρησιμοποιώντας μόνο μία εντολή πολλαπλής επιλογής και μόνο απλές συνθήκες, να γράψετε στο τετράδιό σας τμήμα αλγορίθμου το οποίο θα παράγει το ίδιο αποτέλεσμα με το ΤΑ_1.
Μονάδες 12

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

ΛΥΣΗ

(περισσότερα…)

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

α. Δίνεται τετραγωνικός πίνακας Π[100,100] και το παρακάτω τμήμα αλγορίθμου σε ψευδογλώσσα:
Για i από 1 μέχρι 100
Για j από 1 μέχρι 100
Αν i<j τότε
Διάβασε Π[i,j]
Τέλος_αν
Τέλος_επανάληψης
Τέλος_επανάληψης

Να ξαναγράψετε στο τετράδιό σας το παραπάνω τμήμα αλγορίθμου χωρίς τη χρήση της δομής επιλογής, έτσι ώστε να επιτελεί την ίδια λειτουργία (μονάδες 4).
β. Να μεταφέρετε στο τετράδιό σας το παρακάτω τμήμα αλγορίθμου, έχοντας συμπληρώσει τις γραμμές εντολών 2, και 3 ώστε να εμφανίζει πάντα το μεγαλύτερο από τους δυο αριθμούς που διαβάστηκαν:
1. Διάβασε Α, Β
2. Αν Α … Β τότε
3. ……………..
4. Τέλος_αν
5. Εμφάνισε Α (μονάδες 4)

Μονάδες 8

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

Παράδειγμα 3, Τετράδιο Εργασιών, Τιμές θερμοκρασίας από μετεωρολογικό Κέντρο

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

Παρατήρηση: Για τον υπολογισμό ελάχιστης και μέγιστης θερμοκρασίας είναι βασικό να δοθούν αρχικές τιμές στις μεταβλητές που θα κρατήσουν τις τιμές για να μπορεί να γίνει σωστά η σύγκριση. Εάν, για παράδειγμα, στη μεταβλητή ΜΙΝ δώσουμε αρχική τιμή 0, δεν θα καταλήξουμε σε σωστή ελάχιστη θερμοκρασία, εφόσον στο μήνα δεν υπάρχουν αρνητικές θερμοκρασίες. Αντίθετα, εάν στο MAX δώσουμε αρχική τιμή 0, δεν θα καταλήξουμε σε σωστή μέγιστη θερμοκρασία, στην περίπτωση που όλος ο μήνας είχε καθημερινή αρνητική μέση θερμοκρασία. Επομένως είναι χρήσιμο η ΜΙΝ να έχει αρκετά υψηλή θερμοκρασία ως αρχική τιμή, ενώ αντίθετα η MAX να έχει αρκετά χαμηλή θερμοκρασία ως αρχική τιμή.

Αλγόριθμος Ελάχιστη_Μέγιστη1
ΜΙΝ ← 100
MAX ← -100
Για i από 1 μέχρι 30
Διάβασε ΤΗΕΡ
Αν ΤΗΕΡ < ΜΙΝ τότε
ΜΙΝ ← ΤΗΕΡ
Αν ΤΗΕΡ > MAX τότε
MAX ← ΤΗΕΡ
Τέλος_επανάληψης
Αποτελέσματα // ΜΙΝ, MAX//
Τέλος Ελάχιστη_Μέγιστη1

Παράδειγμα 4, Τετράδιο Εργασιών, Επίλυση δευτεροβάθμιας εξίσωσης

Η περίπτωση της δευτεροβάθμιας εξίσωσης είναι παρόμοια. Αρχικά είναι απαραίτητο η τιμή του Α να είναι μη μηδενική, πράγμα που ελέγχεται κατά την είσοδο. Στη συνέχεια, για την εύρεση πραγματικών ριζών της εξίσωσης Αx2+Βx+Γ=0, πρέπει να ελεγχθεί αν η διακρίνουσα είναι θετική. Και πάλι καλείται ο αλγόριθμος Ρίζα, που επιστρέφει την τετραγωνική ρίζα ενός θετικού αριθμού.

Αλγόριθμος ΕξίσωσηΒ
Αρχήεπανάληψης
Διάβασε a
Μέχρις
ότου a≠0
Διάβασε b
Διάβασε c
delta ← bb-4ac
Αν delta ≥ 0 τότε
solution1 ← (-b+Piζα(delta))/(2
a)
solution2 ← (-b-Ρίζα(delta))/(2*a)
Εκτύπωσε solution1,solution2
Τέλος_αν
Τέλος ΕξίσωσηΒ

Παράδειγμα 2, Βιβλίο μαθητή, Σύγκριση αριθμών με απλή επιλογή

Να διαβαστεί ένας αριθμός και να εκτυπωθεί η απόλυτη τιμή του.
Όπως είναι γνωστό, η απόλυτη τιμή ενός αριθμού είναι ο ίδιος ο αριθμός, αν αυτός είναι θετικός ή μηδέν και ο αντίθετός του, αν είναι αρνητικός. Έτσι προκειμένου να βρεθεί η απόλυτη τιμή, αρκεί να ελεγχθεί, αν τυχόν ο δεδομένος αριθμός είναι αρνητικός, οπότε στην περίπτωση αυτή πρέπει να βρεθεί ο αντίθετός του. Ο συλλογισμός αυτός οδηγεί στον επόμενο αλγόριθμο.

Αλγόριθμος Παράδειγμα_2
Διάβασε a
Αν a < 0 τότε
a ← a*(-l)
Εκτύπωσε a
Τέλος Παράδειγμα_2

Στην παράσταση αλγορίθμων με ψευδογλώσσα η επιλογή υλοποιείται με την εντολή Αν…τότε. Η σύνταξη της εντολής είναι:

Αν συνθήκη τότε εντολή

και η λειτουργία της είναι: Αν ισχύει η συνθήκη (δηλαδή αν είναι αληθής), τότε μόνο εκτελείται η εντολή. Σε κάθε περίπτωση εκτελείται στη συνέχεια η εντολή, που ακολουθεί. Στην εντολή Αν…τότε είναι πιθανό, όταν ισχύει η συνθήκη, να απαιτείται η εκτέλεση περισσότερων από μία εντολές. Στην περίπτωση αυτή οι διαδοχικές εντολές γράφονται από κάτω και σε εσοχή, ενώ το σχήμα επιλογής κλείνει με τη λέξη Τέλος_αν. Π.χ.
Αν συνθήκη τότε
     εντολή_1
     εντολή_2
     …………..
     εντολή_ν
 Τέλος_αν
Όπως και στον αλγόριθμο του προηγούμενου παραδείγματος, εύκολα προκύπτει ότι η τιμή a είναι και είσοδος αλλά και έξοδος του αλγορίθμου. Επιπλέον, ο αλγόριθμος έχει καθορισμένη κάθε του εντολή (καθοριστικότητα), τελειώνει μετά από πεπερασμένο αριθμό βημάτων (περατότητα), ενώ κάθε εντολή του είναι ιδιαίτερα απλή κατά την εκτέλεσή της (αποτελεσματικότητα). Έτσι προκύπτει ότι ο αλγόριθμος αυτός πράγματι πληροί τα κριτήρια που περιγράφηκαν στην παράγραφο 2.1.

Παρατηρήσεις: Απόλυτη τιμή: |+5| = 5 και |-5| = 5, Η συνθήκη είναι μια λογική έκφραση.

par2kef2vm

 

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

Να γράψετε με βήματα αλγορίθμου και με διάγραμμα ροής τα παρακάτω:

1. Το μέσο όρο ηλικιών μίας ομάδας 100 ανθρώπων.
2. Το σύνολο βαθμολογίας όλων των ομάδων που έχουν πάρει περισσότερους από 100 βαθμούς σε ένα διαγωνισμό.

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

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

Σε ένα μουσείο υπάρχουν 10 διαφορετικές αίθουσες που περιέχουν διάφορα έργα της ελληνιστικής περιόδου. Κάθε αίθουσα έχει το δικό της αριθμό που είναι από 101,102, …, έως 110. Να γράψεις έναν αλγόριθμο που θα διαβάζει τον αριθμό των επισκεπτών κάθε αίθουσας για μία ημέρα και θα υπολογίζει το μέσο όρο των επισκεπτών από όλες τις αίθουσες. Στη συνέχεια ο αλγόριθμος θα πρέπει να εκτυπώνει τους αριθμούς των αιθουσών που είχαν περισσότερους επισκέπτες από το μέσο όρο των επισκεπτών.

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