You are on page 1of 5

ΑΣΚΗΣΕΙΣ ΜΕ ΠΙΝΑΚΕΣ

1. Ποια θα είναι τα στοιχεία του πίνακα Α μετά την εκτέλεση του παρακάτω τμήματος
αλγορίθμου;
Για κ από 1 μέχρι 10
Αν κ<5 τότε
Α[κ] ← -2*κ
αλλιώς_Αν κ >5 τότε
Α[κ] ←κ
αλλιώς
Α[κ] ←30
Τέλος_αν
Τέλος_επανάληψης

2. Να συμπληρώσετε τον παρακάτω αλγόριθμο έτσι ώστε ο πίνακας Α να περιέχει όλους τους
άρτιους από το 100 ως το 500, ενώ ο πίνακας Β όλους τους περιττούς από το 100 ως το 500.
χ← 100
κ← …..
όσο χ < 500 επανάλαβε
Α[κ] ← ……..
Β[κ] ← ……..
κ← κ + ….
χ← χ+ ….
Τέλος_επανάληψης

3. Ποιο είναι το αποτέλεσμα των παρακάτω εντολών;


Για κ από 1 μέχρι 10
Α[Κ] ← 10 +1
Τέλος_επανάληψης
Σ← 0
Για κ από 1 μέχρι 10 με_βήμα 2
Σ← Σ + Α[κ]
Τέλος_επανάληψης
Εμφάνισε Σ

4. Σε τρεις πίνακες αποθηκεύουμε το επίθετο, την ηλικία και το φύλο 80 μαθητών. Το φύλο
μπορεί να είναι Α ή Κ και η ηλικία αριθμός από 10 ως και 18. Να γραφεί πρόγραμμα που θα:
Α) διαβάζει τους πίνακες. Κατά την εισαγωγή των στοιχείων να γίνεται έλεγχος ορθής
καταχώρησης φύλου και ηλικίας.
β) υπολογίζει το ποσοστό των αγοριών και το ποσοστό των κοριτσιών και θα τα εμφανίζει μετά
τις λέξεις αγόρια και κορίτσια αντίστοιχα.
γ) εμφανίζει το όνομα του νεότερου μαθητή.

ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ
(συνέχεια)

1. Ένας εργολάβος διαθέτει μια λίστα με τα 40 ονόματα εργατών και τις συνολικές ώρες
που εργάστηκαν τον τελευταίο μήνα. Με τη βοήθεια αλγορίθμου επιθυμεί να:
α) διαβάσει τα δεδομένα και να τα καταχωρήσει σε 2 πίνακες
β) εμφανίσει το όνομα του 10ου εργάτη και το σύνολο των ωρών εργασίας του.
γ) Γνωρίζοντας ότι η ωριαία αποζημίωση είναι 8 € , να υπολογιστούν και να
εμφανιστούν τα συνολικά χρήματα που θα ξοδέψει για την πληρωμή των εργατών
του.

2. Να αναπτύξετε αλγόριθμο ο οποίος με δεδομένο ένα μονοδιάστατο πίνακα Ν ακεραίων


αριθμών θα ελέγχει αν είναι τα συμμετρικά του στοιχεία είναι ίσα.
Μεθοδολογία: Ξεκινάμε με την παραδοχή ότι ο πίνακας είναι συμμετρικός. Ο έλεγχος
πρέπει να γίνει μέχρι το μέσο του πίνακα και αν βρεθεί έστω και ένα ζευγάρι άνισων τιμών
τότε ο αλγόριθμος σταματάει. Το συμμετρικό στοιχείο Α[i] ενός πίνακα Α[Ν] είναι το
στοιχείο Α[Ν+1-i] .Παράδειγμα συμμετρικού πίνακα :[7,9,1,1,9,7].
Παρατήρηση: Σε έναν τετραγωνικό πίνακα ΑκΧκ, όταν Α[i, j]=A[j, i], για κάθε i,j=1,2,…κ,
τότε ο πίνακας είναι συµµετρικός ως προς την κύρια διαγώνιό του. Παράδειγμα

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

2. Ένα εμπορικό κατάστημα έχει καταγράψει τις μηνιαίες εισπράξεις του για καθένα από τα έτη
2009 και 2010. Να γράψετε αλγόριθμο ο οποίος:
α) να διαβάζει τις μηνιαίες εισπράξεις για καθένα από τα δύο έτη και να τις καταχωρίζει σε
αντίστοιχους μονοδιάστατους πίνακες.
β) να υπολογίζει και να εμφανίζει τη μεγαλύτερη μηνιαία είσπραξη για κάθε έτος. Θεωρήστε ότι
για κάθε έτος η τιμή αυτή είναι μοναδική.
γ) να εμφανίζει κατάλληλο μήνυμα στην περίπτωση που ο μήνας κατά τον οποίο σημειώθηκε η
μεγαλύτερη μηνιαία είσπραξη ήταν ο ίδιος και για τα δύο έτη.
δ) να εμφανίζει τον μέσο όρο των μηνιαίων εισπράξεων για κάθε έτος.
ε)να υπολογίζει και να εμφανίζει το πλήθος των μηνών του έτους 2009 κατά τους οποίους η
μηνιαία είσπραξη ήταν μεγαλύτερη από αυτή του αντίστοιχου μήνα του έτους 2010.

πανελλήνιες εσπερινών 2011

Α4 . Δίνεται τετραγωνικός πίνακας Π[100,100] και το παρακάτω τμήμα αλγορίθμου σε ψευδογλώσσα:


Για κ από 1 μέχρι 100
Για λ από 1 μέχρι 100
Αν κ<λ τότε
Διάβασε Π[κ,λ]
Τέλος_Αν
Τέλος_επανάληψης
Τέλος_επανάληψης
Να ξαναγράψετε στο τετράδιό σας το παραπάνω τμήμα αλγορίθμου χωρίς τη χρήση της δομής επιλογής,
έτσι ώστε να επιτελεί την ίδια λειτουργία.
Α2. Δίνεται το παρακάτω ημιτελές τμήμα αλγορίθμου:
κ← 1
Για ι από 1 μέχρι 4
Για λ από 1 μέχρι 5
Αν …………. Τότε
Α[κ] ← ι
Α[......] ← …….
Α[......] ← ………
κ← ……….
Τέλος_αν
Τέλος_επανάληψης
Τέλος_επανάληψης
Να ξαναγράψετε στο τετράδιό σας το παραπάνω τμήμα αλγορίθμου με τα κενά συμπληρωμένα, έτσι
ώστε για τα μη μηδενικά στοιχεία ενός δισδιάστατου πίνακα ΠΙΝ[4,5] να τοποθετεί σε ένα μονοδιάστατο
πίνακα Α[60] τις ακόλουθες πληροφορίες: τη γραμμή, τη στήλη και κατόπιν την τιμή του.
ΠΑΝΕΛ. 2013
ΘΕΜΑ Δ
Μια εικόνα 128 x 128 εικονοστοιχείων (pixels) αποθηκεύεται σε ένα δισδιάστατο πίνακα Α[128,128]. Ένα
pιxel με μαύρο χρώμα αντιστοιχεί στην τιμή 0, ενώ ένα pixel με άσπρο χρώμα αντιστοιχεί στην τιμή 255.
Συνεπώς ο πίνακας χρησιμεύει στην αποθήκευση των 256 αποχρώσεων του γκρι, δηλαδή στα κελιά
αποθηκεύει τους ακεραίους αριθμούς από 0 ως 255. Ορίζουμε ως “αρνητική” της αρχικής εικόνας, εκείνη
που έχει τιμή 0 (μαύρο χρώμα) εκεί που η αρχική εικόνα έχει τιμή 255( άσπρο χρώμα) και έχει τιμή 1 εκεί
που η αρχική εικόνα έχει τιμή 254 κ.ο.κ. Επίσης μια συνήθης διαδικασία επεξεργασίας εικόνων είναι η
λεύκανση, κατά την οποία η τιμή ενός χρώματος πολλαπλασιάζεται με συντελεστή μεγαλύτερο ή ίσο του
1.
Να αναπτύξετε αλγόριθμο, ο οποίος:
Δ1. Να καταχωρίζει σε δισδιάστατο πίνακα Α[128,128]
Δ2. Να υπολογίζει το “αρνητικό” της εικόνας σε νέο πίνακα Β[128,128] και να τον εμφανίζει στην οθόνη.
Δ3. Να εκτελεί λεύκανση της αρχικής εικόνας με συντελεστή 1,3 σε πίνακα Γ[128,128] και να τον εμφανίζει
στην οθόνη. Σημειώνεται ότι, αν η νέα τιμή είναι μεγαλύτερη του 255 τότε ως νέα τιμή εκχωρείται το 255.
στην περίπτωση που η προκύπτουσα τιμή δεν είναι ακέραια, πραγματοποιείται αποκοπή των δεκαδικών
ψηφίων.
Δ4. Να εμφανίζει στην οθόνη τις συντεταγμένες i,j των θέσεων ( κελιών του πίνακα Α[128,128]), όπου η
χρωματική τιμή (ταυτίζεται με την αριθμητική τιμή) είναι μέγιστη.
ΕΣΠΕΡΙΝΑ 2013
Β2. Έστω μονοδιάστατος πίνακας Π[100], του οποίου τα στοιχεία περιέχουν τις λογικές τιμές ΑΛΗΘΗΣ
ΚΑΙ ΨΕΥΔΗΣ. Να γραφεί τμήμα αλγορίθμου που χωρίς τη χρήση “αλγορίθμων ταξινόμησης” να τοποθετεί
στις πρώτες θέσεις του πίνακα την τιμή ΑΛΗΘΗΣ και στις τελευταίες την τιμή ΨΕΥΔΗΣ.
Σε πίνακα εισάγουμε τον αριθμό ταυτότητας 20 υπαλλήλων μιας εταιρείας και σε έναν άλλο
πίνακα εισάγουμε για κάθε υπάλληλο τις αποδοχές του κατά την διάρκεια του τελευταίου έτους.
Οι αποδοχές εισάγονται ανά μήνα. Να γραφεί αλγόριθμος ο οποίος θα:
α) διαβάζει τους πίνακες.
β) ελέγχει αν υπάρχει υπάλληλος με ταυτότητα “Κ012345” και αν υπάρχει θα εμφανίζει τις
αποδοχές του ανά μήνα. Αν δεν υπάρχει ο υπάλληλος με αυτόν τον αριθμό ταυτότητας θα
εμφανίζει το μήνυμα “Δεν υπάρχει ο αριθμός ταυτότητας”
γ) υπολογίζει τον μέσο όρο αποδοχών κάθε υπαλλήλου
δ) εμφανίζει τον αριθμό ταυτότητας των 5 υπαλλήλων που πήραν τα περισσότερα χρήματα στο
έτος κατά μέσο όρο.

Παρατηρήσεις-μεθοδολογία:
● Όταν η άσκηση ζητά την εξέταση ενός πίνακα για το αν υπάρχει ένα στοιχείο ή
όχι, τότε πρόκειται για τον αλγόριθμο της σειριακής αναζήτησης.
● Όταν η άσκηση ζητά τα 3 μικρότερα, τα 5 μεγαλύτερα, το τέταρτο κατά σειρά κλπ.
πρέπει να κάνουμε ταξινόμηση στον πίνακα με την Φυσαλίδα. Αν χρησιμοποιούμε
τον τελεστή μεγαλύτερο (>) ταξινομούμε αύξουσα ενώ αν χρησιμοποιούμε τον
τελεστή μικρότερο(<) ταξινομούμε κατά φθίνουσα.

You might also like