Θέμα Γ, 2020, Hμερήσια και Eσπερινά, Νέο, Παλαιό

ΝΕΟ – ΠΑΛΑΙΟ
ΘΕΜΑ Γ

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

Να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο να υποστηρίζει τη διαδικασία  φόρτωσης σε ένα λιμάνι. Το πρόγραμμα: 

Γ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων.  
Μονάδες 2 

Γ2. Να διαβάζει: 

  • το όριο βάρους του πλοίου (μονάδα 1), 
  • το βάρος δεμάτων που έχει ήδη φορτωμένα, ελέγχοντας ότι η τιμή του είναι μικρότερη από το όριο βάρους, διαφορετικά να το  ξαναζητά (μονάδες 2). 

Μονάδες 3

Γ3. Για τη διαδικασία φόρτωσης: 
α) 

  • να εμφανίζει το βάρος που μπορεί ακόμα να φορτωθεί στο  πλοίο, 
  • να εμφανίζει το μήνυμα: «ΝΑ ΦΟΡΤΩΘΕΙ ΔΕΜΑ; (ΝΑΙ/ΟΧΙ)», 
  • να διαβάζει την απάντηση του αρμόδιου υπαλλήλου (χωρίς  έλεγχο εγκυρότητας). 

(μονάδες 3) 

β) Αν η απάντηση είναι «ΝΑΙ» 

  • να διαβάζει το βάρος του δέματος, να ελέγχει ότι δεν  παραβιάζεται το όριο βάρους και να επιτρέπει τη φόρτωσή του, διαφορετικά να εμφανίζει το μήνυμα «ΤΟ ΔΕΜΑ ΔΕΝ ΧΩΡΑΕΙ», (μονάδες 2) 
  • εφόσον επιτραπεί η φόρτωσή του, να υπολογίζει και να  εμφανίζει το κόστος μεταφοράς του κλιμακωτά, με βάση το  βάρος του, ως εξής: 
    • τα πρώτα 500 κιλά χρεώνονται 0,5 € / κιλό, 
    • τα επόμενα 1000 κιλά χρεώνονται 0,3 € / κιλό, 
    • τα υπόλοιπα χρεώνονται 0,1 € / κιλό.  (μονάδες 4) 

Η παραπάνω διαδικασία φόρτωσης επαναλαμβάνεται μέχρι να δοθεί ως  απάντηση από τον αρμόδιο υπάλληλο η λέξη «ΟΧΙ». (μονάδες 2) 
Μονάδες 11 

Γ4. Μετά το τέλος φόρτωσης να εμφανίζει: 

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

Μονάδες 4

ΛΥΣΗ (περισσότερα…)

Θέμα Δ, 2020, Hμερήσια και Eσπερινά, Νέο, Παλαιό

ΝΕΟ – ΠΑΛΑΙΟ
ΘΕΜΑ Δ

Οι Κινητές Ομάδες Υγείας (ΚΟΜΥ) λαμβάνουν δείγματα βιολογικού υλικού  προσώπων για έλεγχο μόλυνσης από τον κορωνοϊό Covid-19. Σε μια  περιφέρεια δραστηριοποιούνται 20 ΚΟΜΥ. Κάθε ΚΟΜΥ στη διάρκεια μιας μέρας  μπορεί να λάβει μέχρι και 100 δείγματα από μια περιοχή της περιφέρειας. Τα  δείγματα αυτά ελέγχονται και κάθε αποτέλεσμα χαρακτηρίζεται ως θετικό (Θ) ή  αρνητικό (Α) και καταγράφεται σε πληροφοριακό σύστημα.  

Να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο: 
Δ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων.  
Μονάδες 2 

Δ2. α) Να διαβάζει τα ονόματα των περιοχών που δραστηριοποιούνται οι  ΚΟΜΥ και να τα καταχωρίζει σε πίνακα με όνομα Π[20] (μονάδα 1). 

β) Για κάθε ΚΟΜΥ να διαβάζει διαδοχικά τα αποτελέσματα των  ελέγχων που έχει πραγματοποιήσει και κάθε αποτέλεσμα να το  καταχωρίζει ως ένα γράμμα Α ή Θ στην αντίστοιχη θέση του πίνακα  ΑΠ[20,100]. Σε περίπτωση που λήφθηκαν λιγότερα από 100 δείγματα, μετά την καταχώριση του αποτελέσματος του τελευταίου  δείγματος διαβάζεται αντί αποτελέσματος η λέξη «ΤΕΛΟΣ», η οποία  δεν καταχωρίζεται στον πίνακα. Σε αυτή την περίπτωση  τερματίζεται η εισαγωγή τιμών για τη συγκεκριμένη ΚΟΜΥ και το  πρόγραμμα καταχωρίζει σε όλες τις υπόλοιπες θέσεις της  αντίστοιχης γραμμής το γράμμα Χ (μονάδες 5).  Μονάδες 6 

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

Δ4. Να εμφανίζει τα ονόματα των περιοχών, ταξινομημένα σε φθίνουσα  σειρά ως προς το πλήθος των θετικών δειγμάτων που εντοπίστηκαν. Σε  περίπτωση που δύο ή περισσότερες περιοχές έχουν το ίδιο πλήθος  θετικών δειγμάτων, τα ονόματά τους να εμφανίζονται με αλφαβητική σειρά. Για την ταξινόμηση να καλείται το υποπρόγραμμα ΤΑΞΙΝΟΜΗΣΗ  του ερωτήματος Δ5.  
Μονάδες 3 

Δ5. Να αναπτύξετε υποπρόγραμμα με όνομα ΤΑΞΙΝΟΜΗΣΗ, που υλοποιεί  τη λειτουργία της ταξινόμησης που περιγράφεται στο ερώτημα Δ4Μονάδες 3 

Σημειώσεις 
– Για την απάντηση των ερωτημάτων Δ3, Δ4 και Δ5 να θεωρήσετε ότι ο  πίνακας ΑΠ έχει συμπληρωθεί σωστά. 
– Δεν απαιτούνται έλεγχοι εγκυρότητας τιμών. 
– Να θεωρήσετε ότι τα ονόματα των περιοχών είναι διαφορετικά μεταξύ τους.

ΛΥΣΗ (περισσότερα…)

Θέμα Δ, 2020, Eπαναληπτικές, Hμερήσια και Eσπερινά, Νέο, Παλαιό, Ομογενών

ΝΕΟ ΣΥΣΤΗΜΑ
ΘΕΜΑ Δ
Μια εταιρεία μεταφορών δραστηριοποιείται σε 20 πόλεις της ηπειρωτικής  Ελλάδας και προσφέρει ειδικές τιμές για μετακομίσεις επιτυχόντων μαθητών  στις πανελλαδικές εξετάσεις. Για το σκοπό αυτό διατηρεί αρχείο με τις  αποστάσεις των είκοσι (20) πόλεων μεταξύ των οποίων εκτελεί μεταφορές.  Όποιος επιθυμεί να μετακομίσει καλεί την εταιρεία και δηλώνει τις δύο πόλεις  μεταξύ των οποίων θα γίνει η μετακόμιση. Να αναπτύξετε πρόγραμμα σε  ΓΛΩΣΣΑ το οποίο:

Δ1. α. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων. 
 β. Να διαβάζει τα ονόματα των πόλεων και να τα καταχωρίζει σε πίνακα  ΟΝ[20]. 
Μονάδες 2 

Δ2. Να διαβάζει για κάθε ζευγάρι πόλεων τη μεταξύ τους απόσταση σε  χιλιόμετρα και να καταχωρίζει τις τιμές σε πίνακα ΑΠ[20,20]. Οι τιμές να  καταχωρίζονται μόνο στις θέσεις του πίνακα που βρίσκονται κάτω από  την κύρια διαγώνιό του. Για παράδειγμα η απόσταση της πόλης 5 από την  πόλη 10 να καταχωρίζεται μόνο στο ΑΠ[10,5] (και όχι στο ΑΠ[5,10]). 
Μονάδες 3 

Δ3. Υλοποιώντας κατάλληλη επαναληπτική διαδικασία για καθεμιά από τις  κλήσεις που δέχεται η εταιρεία: 
α. Να διαβάζει το όνομα της πόλης αναχώρησης και της πόλης προορισμού  μεταξύ των οποίων θα γίνει η μετακόμιση (μονάδα 1). 
β. Να υπολογίζει την απόσταση των δύο πόλεων καλώντας τη συνάρτηση  ΑΠΟΣΤΑΣΗ η οποία περιγράφεται στο ερώτημα Δ5. Στη συνέχεια να  εμφανίζει το κόστος της συγκεκριμένης μετακίνησης, αν η εταιρεία  χρεώνει 50 λεπτά του ευρώ ανά χιλιόμετρο για τα πρώτα 100 χιλιόμετρα  και 30 λεπτά του ευρώ ανά χιλιόμετρο για τα υπόλοιπα χιλιόμετρα 
(μονάδες 3). 
γ. Να τερματίζει την επαναληπτική διαδικασία όταν ως όνομα πόλης  αναχώρησης δοθεί η λέξη «ΤΕΛΟΣ». Σε αυτή τη περίπτωση να μην  ζητείται το όνομα της πόλης προορισμού(μονάδες 2). 
Μονάδες 6 

Δ4. Μετά την ολοκλήρωση της επαναληπτικής διαδικασίας να εμφανίζει: 
α. Τις συνολικές εισπράξεις της εταιρείας σε ευρώ (μονάδα 1). 
β. Το πλήθος των μετακομίσεων μεταξύ της πρώτης και της τελευταίας  πόλης του πίνακα ΟΝ προς οποιαδήποτε κατεύθυνση (μονάδες 2). Μονάδες 3 

Δ5. Να αναπτύξετε τη συνάρτηση ΑΠΟΣΤΑΣΗ η οποία: 
α. να δέχεται ως παραμέτρους:  
τα ονόματα δύο πόλεων,  
τους πίνακες ΑΠ, ΟΝ (μονάδες 2). 
β. να εντοπίζει τις θέσεις των δύο πόλεων στον πίνακα ΟΝ (μονάδες 2). 
γ. να επιστρέφει την απόσταση μεταξύ των δύο πόλεων εξετάζοντας τις  τιμές που βρίσκονται κάτω από την κύρια διαγώνιο (μονάδες 2). Μονάδες 6 
Σημείωση:  
α. Δεν απαιτείται κανένας έλεγχος εγκυρότητας για τις τιμές εισόδου β. Να θεωρήσετε ότι οι τιμές του πίνακα ΟΝ είναι μοναδικές. 
γ. Οι πόλεις αναχώρησης και προορισμού είναι διαφορετικές και υπάρχουν  στον πίνακα ΟΝ.

ΠΑΛΑΙΟ ΣΥΣΤΗΜΑ
Δ3. Για καθεμιά από τις τηλεφωνικές κλήσεις που δέχεται η εταιρεία:
α. Να διαβάζει το όνομα της πόλης αναχώρησης και της πόλης προορισμού μεταξύ των οποίων θα γίνει η μετακόμιση (μονάδα 1).
β. Να υπολογίζει την απόσταση των δύο πόλεων καλώντας τη συνάρτηση ΑΠΟΣΤΑΣΗ, η οποία περιγράφεται στο ερώτημα Δ5. Στη συνέχεια να εμφανίζει το κόστος της συγκεκριμένης μετακίνησης, αν η εταιρεία χρεώνει 50 λεπτά του ευρώ ανά χιλιόμετρο για τα πρώτα 100 χιλιόμετρα και 30 λεπτά του ευρώ ανά χιλιόμετρο για τα υπόλοιπα χιλιόμετρα (μονάδες 2).
Να τερματίζει την επαναληπτική διαδικασία όταν ως όνομα πόλης αναχώρησης δοθεί η λέξη «ΤΕΛΟΣ». Σε αυτή τη περίπτωση να μην ζητείται το όνομα της πόλης προορισμού (μονάδες 2).
Μονάδες 5

Δ4. Μετά την ολοκλήρωση της επαναληπτικής διαδικασίας να εμφανίζει:
α. Τις συνολικές εισπράξεις της εταιρείας σε ευρώ (μονάδα 1).
β. Το πλήθος των μετακομίσεων μεταξύ της 1ης και της 20ης πόλης του πίνακα ΟΝ προς οποιαδήποτε κατεύθυνση (μονάδες 2).
Μονάδες 3

ΟΜΟΓΕΝΩΝ ΝΕΟ
Δ3. Να ζητά το πλήθος των κλήσεων που δέχτηκε η εταιρεία στη διάρκεια μιας ημέρας (μονάδα 1).
Υλοποιώντας κατάλληλη επαναληπτική διαδικασία για καθεμιά από τις κλήσεις:
α. Να διαβάζει τον αριθμό (1-20) της πόλης αναχώρησης και της πόλης προορισμού μεταξύ των οποίων θα γίνει η μετακόμιση (μονάδα 1).
β. Να υπολογίζει την απόσταση των δύο πόλεων καλώντας τη συνάρτηση ΑΠΟΣΤΑΣΗ η οποία περιγράφεται στο ερώτημα Δ5. Στη συνέχεια να εμφανίζει το κόστος της συγκεκριμένης μετακίνησης, αν η εταιρεία χρεώνει 50 λεπτά του ευρώ ανά χιλιόμετρο για τα πρώτα 100 χιλιόμετρα και 30 λεπτά του ευρώ ανά χιλιόμετρο για τα υπόλοιπα χιλιόμετρα (μονάδες 3). Μονάδες 5

Δ4. Μετά την ολοκλήρωση της επαναληπτικής διαδικασίας να εμφανίζει:
α. Τις συνολικές εισπράξεις της εταιρείας σε ευρώ (μονάδα 1).
β. Το πλήθος των μετακομίσεων μεταξύ της πρώτης και της τελευταίας πόλης προς οποιαδήποτε κατεύθυνση (μονάδες 2).
Μονάδες 3

Δ5. Να αναπτύξετε τη συνάρτηση ΑΠΟΣΤΑΣΗ η οποία:
α. να δέχεται ως παραμέτρους:
– τους αριθμούς δύο πόλεων,
– τον πίνακα ΑΠ (μονάδες 2).
β. να επιστρέφει την απόσταση μεταξύ των δύο πόλεων εξετάζοντας τις τιμές, που βρίσκονται κάτω από την κύρια διαγώνιο (μονάδες 4).
Μονάδες 6

Σημείωση:
α. Δεν απαιτείται κανένας έλεγχος εγκυρότητας για τις τιμές εισόδου
β. Οι αριθμοί των πόλεων αναχώρησης και προορισμού είναι διαφορετικοί.

ΟΜΟΓΕΝΩΝ ΠΑΛΑΙΟ
Για καθεμιά από τις τηλεφωνικές κλήσεις που δέχεται η εταιρεία:
α. Να διαβάζει το όνομα της πόλης αναχώρησης και της πόλης
προορισμού μεταξύ των οποίων θα γίνει η μετακόμιση (μονάδα 1).
β. Να υπολογίζει την απόσταση των δύο πόλεων καλώντας τη συνάρτηση ΑΠΟΣΤΑΣΗ, η οποία περιγράφεται στο ερώτημα Δ5. Στη συνέχεια να εμφανίζει το κόστος της συγκεκριμένης μετακίνησης , αν η εταιρεία χρεώνει 50 λεπτά του ευρώ ανά χιλιόμετρο για τα πρώτα 100 χιλιόμετρα και 30 λεπτά του ευρώ ανά χιλιόμετρο για τα υπόλοιπα χιλιόμετρα (μονάδες 3).
Να τερματίζει την επαναληπτική διαδικασία όταν ως όνομα πόλης αναχώρησης δοθεί η λέξη «ΤΕΛΟΣ». Σε αυτή τη περίπτωση να μην ζητείται το όνομα της πόλης προορισμού (μονάδες 3).
Μονάδες 6

Δ4. Να αναπτύξετε τη συνάρτηση ΑΠΟΣΤΑΣΗ η οποία:
α. να δέχεται ως παραμέτρους:
– τα ονόματα δύο πόλεων,
– τους πίνακες ΑΠ, ΟΝ.
β. να εντοπίζει τις θέσεις των δύο πόλεων στον πίνακα ΟΝ.
γ. να επιστρέφει την απόσταση μεταξύ των δύο πόλεων εξετάζοντας τις τιμές που βρίσκονται κάτω από την κύρια διαγώνιο.
Μονάδες 5

Σημειώσεις:
– Δεν απαιτείται κανένας έλεγχος εγκυρότητας για τις τιμές εισόδου.
– Να θεωρήσετε ότι οι τιμές του πίνακα ΟΝ είναι μοναδικές.
– Οι πόλεις αναχώρησης και προορισμού είναι διαφορετικές και υπάρχουν στον πίνακα ΟΝ.

ΛΥΣΗ (περισσότερα…)

Θέμα Γ, 2020, Eπαναληπτικές, Hμερήσια και Eσπερινά, Νέο, Παλαιό, Ομογενών

ΘΕΜΑ Γ
Στο πλαίσιο ενός πειράματος φυσικής καταγράφονται έως 200 διαδοχικές θετικές τιμές. Μία τιμή θεωρείται αιχμή, όταν είναι μεγαλύτερη από την  προηγούμενη και την επόμενή της. Για τις ανάγκες της επεξεργασίας των τιμών  αυτών, να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο: 
Γ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων. 
Μονάδες 2 
Γ2. Να διαβάζει τις πειραματικές τιμές και να τις καταχωρίζει σε πίνακα  πραγματικών αριθμών Τ[200] ελέγχοντας την εγκυρότητα των τιμών που  εισάγονται. Η επαναληπτική διαδικασία να τερματίζεται όταν εισαχθούν οι  200 τιμές ή όταν εισαχθεί η τιμή 0, η οποία να μην καταχωρίζεται στον  πίνακα. 
Μονάδες 6 
Γ3. Να εμφανίζει το πλήθος των αιχμών που υπάρχουν στον πίνακα Τ. Αν δεν  υπάρχουν αιχμές, να εμφανίζει κατάλληλο μήνυμα.  
Μονάδες 6 
Γ4 ΝΕΟ. Αν υπάρχουν τουλάχιστον 2 αιχμές, να εμφανίζει τη θέση της πρώτης και  τη θέση της τελευταίας αιχμής. 
Μονάδες 6 
Σημείωση: Να θεωρήσετε ότι στον πίνακα εισάγονται τουλάχιστον 2 τιμές.
Γ4 ΠΑΛΑΙΟ. Να εμφανίζει το πλήθος των τιμών που παρεμβάλλονται μεταξύ δύο διαδοχικών αιχμών. Παράδειγμα: αν υπάρχει αιχμή στη δεύτερη θέση και η επόμενη είναι στην έκτη θέση του πίνακα, τότε πρέπει να εμφανιστεί ο αριθμός 3.
Μονάδες 5

(ΟΜΟΓΕΝΩΝ ΝΕΟ).
Γ2. Να διαβάζει τις πειραματικές τιμές και να τις καταχωρίζει σε πίνακα
πραγματικών αριθμών Τ[200] ελέγχοντας την εγκυρότητα των τιμών που
εισάγονται.
Μονάδες 6
Γ3. Να εμφανίζει το πλήθος των αιχμών που υπάρχουν στον πίνακα Τ.
Μονάδες 6
Γ4. Να εμφανίζει τη θέση της αιχμής με τη μεγαλύτερη τιμή.
Μονάδες 6
Σημείωση: Να θεωρήσετε ότι στον πίνακα υπάρχει τουλάχιστον 1 αιχμή.

(ΟΜΟΓΕΝΩΝ ΠΑΛΑΙΟ).
Γ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων.
Μονάδες 4
Γ2. Να διαβάζει τις πειραματικές τιμές και να τις καταχωρίζει σε πίνακα πραγματικών αριθμών Τ[200] ελέγχοντας την εγκυρότητα των τιμών που εισάγονται. Η επαναληπτική διαδικασία να τερματίζεται όταν εισαχθούν οι 200 τιμές ή όταν εισαχθεί η τιμή 0, η οποία δεν πρέπει να καταχωρίζεται στον πίνακα.
Μονάδες 8
Γ3. Να εμφανίζει το πλήθος των αιχμών που υπάρχουν στον πίνακα Τ. Αν δεν υπάρχουν αιχμές, να εμφανίζει κατάλληλο μήνυμα.
Μονάδες 8
Σημείωση: Να θεωρήσετε ότι στον πίνακα εισάγονται τουλάχιστον 2 τιμές.

ΛΥΣΗ (περισσότερα…)

Θέμα Γ, 2019, Ιούνιου, Hμερήσια

ΘΕΜΑ Γ
Το Υπουργείο Παιδείας παρέχει μέσω του διαδικτύου μια συλλογή από  εκπαιδευτικά βίντεο. Ο αριθμός των επισκέψεων που δέχεται κάθε ένα βίντεο  καταγράφεται από ειδικό λογισμικό. Τα βίντεο διακρίνονται σε τρείς κατηγορίες  ανάλογα με την επισκεψιμότητά τους, σύμφωνα με τον παρακάτω πίνακα: 

ΚΑΤΗΓΟΡΙΕΣ ΕΠΙΣΚΕΨΙΜΟΤΗΤΑΣ
Όνομα  Αριθμός Επισκέψεων
Χαμηλή  
Μεσαία 
Υψηλή 
από 1 έως και 100 
από 101 έως και 1000 
πάνω από 1000

 
Τα βίντεο με μηδενικές επισκέψεις δεν κατατάσσονται σε καμία κατηγορία.
Να αναπτύξετε πρόγραμμα το οποίο: 

Γ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων. 
Μονάδες 2 
Γ2. Να διαβάζει επαναληπτικά τον τίτλο κάθε βίντεο και τον αριθμό των  επισκέψεων που δέχτηκε. Η είσοδος των δεδομένων να τερματίζεται, όταν ως τίτλος βίντεο δοθεί η λέξη «ΤΕΛΟΣ». (μονάδες 3) Να γίνεται έλεγχος εγκυρότητας ώστε ο αριθμός των επισκέψεων να μην  είναι αρνητικός. (μονάδες 2) 
Μονάδες 5 

Γ3. Να βρίσκει και να εμφανίζει τον τίτλο του βίντεο με τον μεγαλύτερο  αριθμό επισκέψεων. Να θεωρήσετε ότι είναι μοναδικό. 
Μονάδες 4 

Γ4. Να υπολογίζει για καθεμία από τις τρεις κατηγορίες επισκεψιμότητας το  πλήθος των βίντεο που καταχωρίστηκαν σε αυτή. Να εμφανίζει για κάθε  κατηγορία: 
– το όνομά της και  
– το πλήθος των βίντεο που περιλαμβάνει. 
Μονάδες 6 

Γ5. Να βρίσκει και να εμφανίζει το όνομα της κατηγορίας επισκεψιμότητας  στην οποία καταχωρίστηκαν τα περισσότερα βίντεο. Να θεωρήσετε ότι  είναι μοναδική. 
Μονάδες 3 
Σημείωση 
Το πλήθος των βίντεο δεν είναι γνωστό. 

ΛΥΣΗ (περισσότερα…)

Θέμα Δ, 2019, Ιούνιου, Hμερήσια

ΘΕΜΑ Δ
Στην 27η Βαλκανιάδα Πληροφορικής που θα διεξαχθεί στην Αθήνα τον Σεπτέμβριο του 2019, συμμετέχουν 40 μαθητές. Κάθε μαθητής παίρνει έναν  κωδικό από 1 έως και 40, ο οποίος αντιστοιχεί στη σειρά που δήλωσε συμμετοχή. Κάθε μαθητής καλείται να επιλύσει έξι προβλήματα. Για κάθε  πρόβλημα αναπτύσσει τη λύση του σε μία γλώσσα προγραμματισμού και την  υποβάλλει για βαθμολόγηση. Η λύση βαθμολογείται σε ακέραια κλίμακα από 0  έως 100. 
Κατά τη διάρκεια του διαγωνισμού κάθε μαθητής και για κάθε πρόβλημα μπορεί  να υποβάλλει τη λύση του όσες φορές θέλει. 
Να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο: 

Δ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων. Μονάδες 2 

Δ2. Να διαβάζει επαναληπτικά τα ονόματα των μαθητών και να τα  καταχωρίζει στον Πίνακα ΟΝ[40]. (μονάδα 1) 
Επίσης, να αρχικοποιεί με την τιμή 0 όλα τα στοιχεία του Πίνακα  ΒΑΘ[40,6], ο οποίος θα περιέχει τη βαθμολογία κάθε μαθητή για κάθε  πρόβλημα. (μονάδες 2) 

Μονάδες 3 

Δ3. Κάθε φορά που μία λύση προβλήματος υποβάλλεται και βαθμολογείται,  το πρόγραμμα να διαβάζει τον κωδικό του μαθητή (από 1 έως και 40), τον αριθμό του προβλήματος (από 1 έως και 6) και τη βαθμολογία του  (από 0 έως και 100). (μονάδα 1)  
Η βαθμολογία να καταχωρίζεται στην αντίστοιχη θέση του Πίνακα  ΒΑΘ[40,6] μόνο αν είναι μεγαλύτερη από τη βαθμολογία που είναι ήδη  καταχωρισμένη. (μονάδες 2) 
Για τον τερματισμό της εισαγωγής δεδομένων το πρόγραμμα να  εμφανίζει το μήνυμα «Υπάρχει νέα λύση προβλήματος; ΝΑΙ / ΟΧΙ». Αν  εισαχθεί η τιμή «ΟΧΙ», να τερματίζεται η εισαγωγή δεδομένων. (μονάδες 2) 

Μονάδες 5 

Δ4. Να υπολογίζει και να καταχωρίζει στον Πίνακα ΣΒ[40] τα αθροίσματα των βαθμολογιών κάθε μαθητή στα έξι προβλήματα. Για τον σκοπό αυτό  να καλεί μόνο μια φορά το υποπρόγραμμα με όνομα ΥΣΒ. (μονάδα 1) Να αναπτύξετε το υποπρόγραμμα ΥΣΒ το οποίο να δέχεται ως είσοδο  τον Πίνακα ΒΑΘ[40,6] και να επιστρέφει ως έξοδο συμπληρωμένο τον  Πίνακα ΣΒ[40]. (μονάδες 4) 

 Μονάδες 5 

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

Μονάδες 5 

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

ΛΥΣΗ (περισσότερα…)

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

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

  1. Ο αριθμός που προκύπτει από την ολίσθηση ενός θετικού αριθμού  προς τα δεξιά είναι πάντα μεγαλύτερος από τον αρχικό. 
  2. Η μεταβλητή Χ είναι πραγματικού τύπου στην εντολή εκχώρησης: Χ α/2 
  3. Η σύνθετη συνθήκη Χ<= -5 ΚΑΙ Χ>5, δεν αληθεύει για καμία τιμή του Χ. 
  4. Η εντολή ΓΙΑ i ΑΠΟ -1 ΜΕΧΡΙ 4 εκτελείται 5 φορές. 
  5. Η δημιουργία του εκτελέσιμου προγράμματος γίνεται μόνο στην  περίπτωση που το αρχικό πρόγραμμα δεν περιέχει λογικά λάθη. 

Μονάδες 10 

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

Α2. α. Δίνονται οι παρακάτω προτάσεις: 

  1. Οι λέξεις ΝΑΙ και ΟΧΙ μπορούν να χρησιμοποιηθούν και οι δύο ως όνομα μεταβλητής σε ένα πρόγραμμα στη ΓΛΩΣΣΑ. 
  2. Καμία από τις λέξεις ΝΑΙ και ΟΧΙ δεν μπορεί να χρησιμοποιηθεί ως όνομα μεταβλητής σε ένα πρόγραμμα στη ΓΛΩΣΣΑ. 
  3. Η λέξη ΝΑΙ μπορεί να χρησιμοποιηθεί ως όνομα μεταβλητής σε ένα  πρόγραμμα στη ΓΛΩΣΣΑ, ενώ η λέξη ΟΧΙ δεν μπορεί. 
  4. Η λέξη ΝΑΙ δεν μπορεί να χρησιμοποιηθεί ως όνομα μεταβλητής σε  ένα πρόγραμμα στη ΓΛΩΣΣΑ, ενώ η λέξη ΟΧΙ μπορεί. 

Μόνο μία από τις παραπάνω προτάσεις είναι σωστή. 

  1. i) Να γράψετε στο τετράδιό σας τον αριθμό 1 έως 4 που αντιστοιχεί στη  σωστή πρόταση. (μονάδες 2) 
  2. ii) Να αιτιολογήσετε την απάντησή σας. (μονάδες 4) 

 β. Η συνθήκη “ΜΕΓΑΛΟΣ” > “ΜΙΚΡΟΣ” είναι ΨΕΥΔΗΣ. Να εξηγήσετε γιατί. (μονάδες 4)  Μονάδες 10

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

Α3.
Α3. Δίνεται το παρακάτω τμήμα προγράμματος σε ΓΛΩΣΣΑ:

sum<-0 
ΓΙΑ i AΠΟ 6 ΜΕΧΡΙ 1 ΜΕ_ΒΗΜΑ -2 
    sum <- sum + i 
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

α. Να μετατραπεί σε ισοδύναμο τμήμα προγράμματος με χρήση της δομής ΟΣΟ…ΕΠΑΝΑΛΑΒΕ (μονάδες 5)
β. Να μετατραπεί σε ισοδύναμο τμήμα προγράμματος με χρήση της δομής ΑΡΧΗΕΠΑΝΑΛΗΨΗΣ…ΜΕΧΡΙΣΟΤΟΥ (μονάδες 5)
Μονάδες 10

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

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

Αν Χ > 0 τότε 
 Υ <- 2*Χ 
αλλιώς 
 Υ <- 2*Χ 
 Ζ <- Υ+5 
Τέλος_αν

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

ΛΥΣΗ

 Υ <- 2*Χ 
Αν Χ > 0 τότε 
   Ζ <- Υ+5 
Τέλος_αν

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

ΘΕΜΑ B1

Β1. Ένας πίνακας λέγεται αραιός (sparse) αν ένα μεγάλο ποσοστό των  στοιχείων του έχουν μηδενική τιμή. Ένας δισδιάστατος αραιός πίνακας  μπορεί να αναπαρασταθεί από έναν μονοδιάστατο όπου κάθε μη μηδενικό  στοιχείο του δισδιάστατου αντιπροσωπεύεται στον μονοδιάστατο από μία  τριάδα στοιχείων, δηλαδή <γραμμή, στήλη, τιμή>. Για παράδειγμα, ο  παρακάτω πίνακας Α [4,5] που θέλουμε να τον διαχειριστούμε ως αραιό 

0
-3
0
0

 

αντιπροσωπεύεται από τον μονοδιάστατο Β[15].  

-3  4

 

Η αντίστροφη διαδικασία είναι από τον μονοδιάστατο πίνακα να παραχθεί  ένας ισοδύναμος αραιός δισδιάστατος. 

Έστω ένας πίνακας Μ[18] που αναπαριστά 6 μη μηδενικά στοιχεία. Δίνεται ο παρακάτω αλγόριθμος, ο οποίος από τον μονοδιάστατο Μ[18]  δημιουργεί τον αραιό δισδιάστατο Δ[10,20]. 

Αλγόριθμος αντίστροφος 
Δεδομένα // Μ // 
Για i από 1 μέχρι 20 
    Για j από 1 μέχρι 10 
        Δ[…(1), … (2)] <- 0 
    Τέλος_επανάληψης 
 Τέλος_επανάληψης 
Για i από 1 μέχρι 18 με_βήμα … (3) 
    α <- Μ[i] 
    β <- Μ[i + … (4)] 
    γ <- Μ[i + … (5)] 
    Δ[α, β] <- γ 
 Τέλος_επανάληψης 
 Αποτελέσματα // Δ // 
 Τέλος αντίστροφος 

Ο παραπάνω αλγόριθμος έχει 5 κενά αριθμημένα από (1)μέχρι (5). Για καθένα από τα κενά, να γράψετε στο τετράδιό σας τον αριθμό του και ό,τι χρειάζεται να συμπληρωθεί για να λειτουργήσει σωστά ο αλγόριθμος.
Μονάδες 10