Θέμα Γ, 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μερήσια

ΘΕΜΑ Δ
Στην 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σπερινά

ΘΕΜΑ 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)] 
    Δ[α, β] <- γ 
 Τέλος_επανάληψης 
 Αποτελέσματα // Δ // 
 Τέλος αντίστροφος </code class="language-javascript">

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

Θέμα Δ, 2019, Eπαναληπτικές, Hμερήσια και Eσπερινά, & εκδοχή Ομογενών

ΘΕΜΑ Δ
Σε ένα μουσικό φεστιβάλ συμμετέχουν 20 συγκροτήματα. Τα ονόματά τους καταχωρίζονται σε πίνακα ΟΝ[20].
Το φεστιβάλ διαρκεί 5 ημέρες και κάθε ημέρα εμφανίζονται 6 συγκροτήματα. Το πρόγραμμα εμφανίσεων των συγκροτημάτων περιγράφεται με έναν πίνακα ΠΡ[6,5]. Σε κάθε κελί του πίνακα καταχωρίζεται ένας αριθμός (1 έως 20) που αντιστοιχεί στη θέση του συγκροτήματος στον πίνακα ΟΝ. Για παράδειγμα, εάν στο κελί ΠΡ[3,4] υπάρχει η τιμή 19, αυτό δηλώνει ότι την 4ηημέρα, 3ο στη σειρά εμφανίζεται το 19ο συγκρότημα.
Κάποια συγκροτήματα εμφανίζονται σε περισσότερες από μια ημέρες και κανένα δεν εμφανίζεται περισσότερες από μία φορά την ημέρα. Να αναπτύξετε πρόγραμμα το οποίο:
Δ1.α. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων.
β. Να διαβάζει τα ονόματα των συγκροτημάτων και να τα καταχωρίζει στον πίνακα ΟΝ.
Μονάδες 2
Δ2. Για κάθε μία από τις 5 ημέρες, να διαβάζει τους αριθμούς των 6 συγκροτημάτων που εμφανίζονται την ημέρα αυτή, με τη σειρά που εμφανίζονται, και να τους καταχωρίζει στις αντίστοιχες θέσεις του πίνακα ΠΡ. Κάθε τιμή που εισάγεται να γίνεται δεκτή μόνο εάν δεν έχει ξαναεισαχθεί την ίδια ημέρα, διαφορετικά να ζητείται ξανά. Ο έλεγχος αυτός να γίνεται από το υποπρόγραμμα ΥΠΑΡΧΕΙ που περιγράφεται στο ερώτημα Δ5.
Μονάδες 4
Δ3. Για καθένα από τα 20 συγκροτήματα να τυπώνει το όνομά του και το πρόγραμμα εμφανίσεών του, δηλαδή μόνο τις ημέρες που εμφανίζεται και για κάθε μία από αυτές τη σειρά εμφάνισής του.
Μονάδες 4
Δ4. Να τυπώνει τα ονόματα των συγκροτημάτων που εμφανίζονται τις περισσότερες φορές.
Μονάδες 6
Δ5. Να αναπτύξετε το υποπρόγραμμα ΥΠΑΡΧΕΙ το οποίο:
α. να δέχεται ως είσοδο τις εξής τρεις παραμέτρους:
τον πίνακα ΠΡ,
τον αριθμό ημέρας και
τη σειρά εμφάνισης ενός συγκροτήματος
β. να ελέγχει εάν το συγκρότημα που αντιστοιχεί στις τιμές αυτές υπάρχει ήδη στην ίδια στήλη σε προηγούμενη γραμμή
γ. να επιστρέφει το αποτέλεσμα του ελέγχου ως λογική τιμή.
Μονάδες 4
Σημείωση: Να θεωρήσετε ότι δεν απαιτούνται επιπλέον έλεγχοι εγκυρότητας για τις τιμές εισόδου.

ΟΜΟΓΕΝΩΝ
Δ2. Για κάθε μία από τις 5 ημέρες, να διαβάζει τους αριθμούς των 6  συγκροτημάτων που εμφανίζονται την ημέρα αυτή, με τη σειρά που  εμφανίζονται, και να τους καταχωρίζει στις αντίστοιχες θέσεις του πίνακα  ΠΡ. Κάθε τιμή που εισάγεται να γίνεται δεκτή μόνο εάν δεν έχει  ξαναεισαχθεί την ίδια ημέρα, διαφορετικά να ζητείται ξανά. Ο έλεγχος  αυτός να γίνεται από το υποπρόγραμμα ΥΠΑΡΧΕΙ που περιγράφεται στο  ερώτημα Δ4. 
Μονάδες 6 

Δ3. Για καθένα από τα 20 συγκροτήματα να τυπώνει το όνομά του και το  πρόγραμμα εμφανίσεών του, δηλαδή μόνο τις ημέρες που εμφανίζεται και  για κάθε μία από αυτές τη σειρά εμφάνισής του. 
Μονάδες 6 

Δ4. Να αναπτύξετε το υποπρόγραμμα ΥΠΑΡΧΕΙ το οποίο: 
α. να δέχεται ως είσοδο τις εξής τρεις παραμέτρους:  
τον πίνακα ΠΡ,  
τον αριθμό ημέρας και  
τη σειρά εμφάνισης ενός συγκροτήματος 
β. να ελέγχει εάν το συγκρότημα που αντιστοιχεί στις τιμές αυτές υπάρχει  ήδη στην ίδια στήλη σε προηγούμενη γραμμή 

γ. να επιστρέφει το αποτέλεσμα του ελέγχου ως λογική τιμή. 
Μονάδες 6 

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

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

Θέμα Β1, 2018, Ιούνιου, Hμερήσια και Eσπερινά

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

i  ...(1)... 
Αρχή_επανάληψης 
stop  ΑΛΗΘΗΣ 
Για j από Ν μέχρι i με_βήμα -1 
    Αν table[j-1] > table[j] τότε 
       Αντιμετάθεσε table[j-1],table[j]  
       stop  ...(2)... 
    Τέλος_αν 
Τέλος_επανάληψης 
...(3)... 
Μέχρις_ότου i ...(4)... N ή stop= ...(5)...</code class="language-javascript">

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

Θέμα Γ, 2018, Ιούνιου, Hμερήσια και Eσπερινά

ΘΕΜΑ Δ
Ένα λιμάνι διαθέτει αποθηκευτικό χώρο χωρητικότητας 170 εμπορευματοκιβωτίων (containers). Σε καθημερινή βάση, στο τέλος της ημέρας, καταχωρίζεται ο αριθμός των εμπορευματοκιβωτίων που έχουν εισέλθει και εξέλθει από αυτόν.
Να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο:
Γ1.
α. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων. (μονάδες 2)
β. Να διαβάζει για κάθε ημέρα το συνολικό πλήθος εμπορευματοκιβωτίων που εισήλθαν, καθώς και το συνολικό πλήθος εκείνων που εξήλθαν από τον αποθηκευτικό χώρο. Οι τιμές που διαβάζονται να ελέγχονται ώστε ο αριθμός των εμπορευματοκιβωτίων που παραμένουν στον αποθηκευτικό χώρο στο τέλος της ημέρας να είναι από 0 μέχρι και 170. Σε αντίθετη περίπτωση να θεωρούνται λανθασμένες και να επανεισάγονται. (μονάδες 3)
γ. Για τον τερματισμό της εισαγωγής δεδομένων το πρόγραμμα εμφανίζει το μήνυμα “Τέλος Εισαγωγής Στοιχείων; ΝΑΙ / ΟΧΙ”. Αν εισαχθεί η τιμή “ΝΑΙ”, να τερματίζεται η εισαγωγή δεδομένων. (μονάδες 2) Μονάδες 7
Γ2. Να βρίσκει και να εμφανίζει τον μέγιστο ημερήσιο αριθμό εισερχόμενων εμπορευματοκιβωτίων.
Μονάδες 4
Γ3. Να υπολογίζει και να εμφανίζει τη μέση ημερήσια διακίνηση εμπορευματοκιβωτίων. Η ημερήσια διακίνηση είναι το άθροισμα του πλήθους των εισερχομένων και των εξερχομένων εμπορευματοκιβωτίων της ημέρας.
Μονάδες 4
Γ4. Να υπολογίζει και να εμφανίζει το πλήθος των ημερών που παρέμειναν στον αποθηκευτικό χώρο τουλάχιστον 10 εμπορευματοκιβώτια, στο τέλος κάθε ημέρας.
Μονάδες 2
Γ5. Να υπολογίζει και να εμφανίζει τον μέσο όρο του πλήθους των εμπορευματοκιβωτίων που παρέμειναν στον αποθηκευτικό χώρο, στο τέλος κάθε ημέρας, από την έναρξη μέχρι τον τερματισμό εισαγωγής δεδομένων.
Μονάδες 3
Σημειώσεις
Να θεωρήσετε ότι:
α) Αρχικά ο αποθηκευτικός χώρος είναι κενός.
β) Οι αριθμοί που εισάγονται για το πλήθος των εισερχομένων και των εξερχομένων εμπορευματοκιβωτίων είναι μεγαλύτεροι ή ίσοι του 0.
γ) Υπάρχει καταχώριση στοιχείων για τουλάχιστον μια ημέρα.
.

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

Θέμα Δ, 2018, Ιούνιου, Hμερήσια και Eσπερινά

ΘΕΜΑ Δ
O φορέας διαχείρισης μιας περιοχής οικολογικού ενδιαφέροντος , προκειμένου να εκτιμήσει την ποιότητα των υδάτων των ποταμών της περιοχής , πραγματοποιεί μία δειγματοληψία τον μήνα σε κάθε ποταμό στη διάρκεια ενός έτους. Το δείγμα νερού αναλύεται και ανιχνεύονται οι ρύποι. Η επικινδυνότητα ενός ρύπου εκφράζεται με έναν ακέραιο αριθμό από το 1 έως και το 10. Στην κλίμακα αυτή η μεγαλύτερη τιμή αντιστοιχεί σε υψηλότερη επικινδυνότητα. Ένας δείκτης της επικινδυνότητας των υδάτων είναι η επικινδυνότητα εκείνου του ρύπου που έχει τη μέγιστη τιμή.
Να αναπτύξετε κύριο πρόγραμμα σε ΓΛΩΣΣΑ το οποίο:
Δ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων. Μονάδες 2
Δ2. α. Να διαβάζει το πλήθος των ποταμών της περιοχής, ελέγχοντας ότι δεν δίνεται τιμή μεγαλύτερη του 20. (μονάδα 1)
β. Να διαβάζει τα ονόματα των ποταμών αυτών και να τα καταχωρίζει σε διαδοχικές θέσεις του πίνακα Π[20]. (μονάδες 2)
Μονάδες 3
Δ3. Για κάθε δειγματοληψία: να εμφανίζει το όνομα καθενός ποταμού της περιοχής και να υπολογίζει την επικινδυνότητά του καλώντας το υποπρόγραμμα ΥΕ (που θα κατασκευάσετε στο ερώτημα Δ5). Την επικινδυνότητα αυτή να την καταχωρίζει κατάλληλα σε πίνακα ΕΠ[20, 12].
Μονάδες 3
Δ4. Να εμφανίζει αλφαβητικά τα ονόματα των ποταμών στους οποίους ο μέσος όρος επικινδυνότητας στη διάρκεια του έτους, κυμάνθηκε πάνω από 7. Αν δεν υπάρχει κανένας ποταμός που να ικανοποιεί το κριτήριο αυτό, να εμφανίζεται κατάλληλο μήνυμα.
Μονάδες 4
Να αναπτύξετε το υποπρόγραμμα Υ
Ε το οποίο:
Δ5. α) Να διαβάζει διαδοχικά τις τιμές της επικινδυνότητας κάθε ρύπου που βρέθηκε. Η εισαγωγή να τερματίζεται όταν δοθεί η τιμή 0 (που σημαίνει ότι δεν υπάρχει άλλος ρύπος).
β) Να επιστρέφει τη μέγιστη τιμή επικινδυνότητας από τις τιμές που διάβασε.
Μονάδες 8
Σημείωση
α) Δεν απαιτούνται επιπλέον έλεγχοι εγκυρότητας τιμών εκτός από αυτόν που ζητείται στο ερώτημα Δ2.α.
β) Να θεωρήσετε ότι υπάρχει τουλάχιστον ένας ποταμός.
γ) Να θεωρήσετε ότι σε κάθε δειγματοληψία υπάρχει τουλάχιστον ένας ρύπος.

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

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

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

  1. Τα λογικά λάθη εμφανίζονται στο στάδιο της μεταγλώττισης. 
  2. Η τελική τιμή μιας έκφρασης εξαρτάται, μεταξύ άλλων, από την  ιεραρχία των πράξεων και τη χρήση των παρενθέσεων. 
  3. Η δυαδική αναζήτηση δεν μπορεί να λειτουργήσει σε μη ταξινομημένο  πίνακα. 
  4. Αν τα δεδομένα που εισάγονται σε ένα πρόγραμμα πρέπει να  διατηρούνται στη μνήμη μέχρι το τέλος της εκτέλεσης, τότε η χρήση  πινάκων βοηθάει ή συχνά είναι απαραίτητη για την επίλυση του  προβλήματος. 
  5. Η λειτουργία των διαδικασιών είναι πιο περιορισμένη από τη  λειτουργία των συναρτήσεων. 

Μονάδες 10

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

Α3.
α. Να αναφέρετε δύο περιπτώσεις στις οποίες συνιστάται η χρήση σειριακής αναζήτησης σε ταξινομημένο πίνακα. (μονάδες 4)
β. Να περιγράψετε τη σύνταξη των τριών εντολών επανάληψης που υποστηρίζει η ΓΛΩΣΣΑ. (μονάδες 6)
Μονάδες 10