English

Έλεγχος αν ένας πίνακας είναι ταξινομημένος

Αν σε κάποια άσκηση ζητείται να ελεγχθεί αν ένας πίνακας είναι ταξινομημένος - έστω κατ' αύξουσα σειρά - τότε στην πραγματικότητα θα πρέπει να ελεγχθεί αν υπάρχει ένα τουλάχιστον ζεύγος γειτονικών στοιχείων που δεν είναι στη σωστή σειρά. Αυτό υλοποιείται με το παρακάτω απόσπασμα αλγορίθμου για έναν πίνακα έστω 50 στοιχείων:


flag <- ΑΛΗΘΗΣ
ΓΙΑ i ΑΠΟ 50 ΜΕΧΡΙ 2 ΜΕ_ΒΗΜΑ -1
    ΑΝ Α[i] < Α[i - 1] ΤΟΤΕ
       flag <- ΨΕΥΔΗΣ
    ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΑΝ flag = 'ΑΛΗΘΗΣ ΤΟΤΕ
    ΓΡΑΨΕ 'Πίνακας ταξινομημένος κατά αύξουσα σειρά'
ΤΕΛΟΣ_ΑΝ


	

Συμμετρικός μονοδιάστατος πίνακας

Επεξήγηση πότε ένας μονοδιάστατος πίνακας είναι συμμετρικός και πότε όχι (αρχείο pdf).

Εκτός από τον αλγόριθμο που παρατίθεται στο αρχείο pdf, ένας εναλλακτικός αλγόριθμος για να ελεγχθεί αν ένας μονοδιάστατος πίνακας είναι συμμετρικός ή όχι είναι ο εξής:

(Πηγή: http://users.sch.gr//paris/index.php?option=com_content&view=article&id=41:kef39monoalgor&catid=10:kef39monpin&Itemid=6)

Αλγόριθμος Συμμετρικός_πίνακας
Ίσα_στοιχεία ← 0
! Ελέγχουμε τον πίνακα μέχρι τη μέση
  Γιααπό 1 μέχρι (ν DIV 2)
    Αν Α[i] = A[ν+1-i] τότε
     Ίσα_στοιχεία ←  Ίσα_στοιχεία + 1
Τέλος_αν
  Τέλος_επανάληψης
  Αν Ίσα_στοιχεία = (ν DIV 2) τότε
    Εμφάνισε "Ο πίνακας είναι συμμετρικός."
  Αλλιώς
    Εμφάνισε "Ο πίνακας δεν είναι συμμετρικός."
Τέλος_αν
Τέλος 

Ταξινόμηση δισδιάστατου πίνακα

Ταξινόμηση των στοιχείων ενός δισδιάστατου πίνακα Π[3,4] σε αύξουσα σειρά ώστε το μικρότερο να βρίσκεται στην θέση 1,1 και το μεγαλύτερο στην θέση 3,4. https://aepp.edu.gr/eidika-themata/taksinomisi-disdiastatou-pinaka/
Ταξινόμηση των στοιχείων ενός δισδιάστατου πίνακα ανά γραμμή, ανά στήλη και με βάση τα στοιχεία μιας συγκεκριμένης στήλης.

Άσκηση για δυαδική και σειριακή αναζήτηση

- Να γραφτεί πρόγραμμα το οποίο να διαβάζει 10 ονόματα και ισάριθμα τηλέφωνα. (Θεωρήστε ότι τα ονόματα δίνονται ταξινομημένα.)
- Να διαβάζει ένα όνομα για αναζήτηση του τηλεφώνου του.
- Να αναζητά το όνομα σειριακά.  Αν βρεθεί, να εμφανίζει το τηλέφωνό του, διαφορετικά μήνυμα ότι δεν βρέθηκε.
- Να εμφανίζει επίσης το πλήθος των αναζητήσεων που έκανε.
(Επισημαίνεται ότι επειδή ο πίνακας είναι ταξινομημένος, να σταματά όταν ξεπεράσει το ζητούμενο όνομα.)
- Να αναζητά το όνομα δυαδικά.  Αν βρεθεί, να εμφανίζει το τηλέφωνό του, διαφορετικά μήνυμα ότι δεν βρέθηκε.
- Να εμφανίζει επίσης το πλήθος των αναζητήσεων που έκανε.

(Πηγή άσκησης: http://2lyk-gerak.att.sch.gr/aepp/aepp-binary-search.htm)

Χρήση της Μέχρις_ότου – προγράμματα για δοκιμαστική ‘εκτέλεση’ στον διερμηνευτή

Πρόγραμμα το οποίο διαβάζει από το πληκτρολόγιο μία σειρά μετρήσεων, ακεραίων μη μηδενικών αριθμών, υπολογίζει και τυπώνει το άθροισμά τους καθώς και το μέσο τους όρο. Μετά την εισαγωγή κάθε αριθμού υπάρχει η ερώτηση αν θα εισαγάγουμε άλλο. Η διαδικασία θα τελειώσει, όταν η απάντηση θα είναι Όχι (ο ή Ο).
Πρόγραμμα - Μενού επιλογής
Δέχεται από το πληκτρολόγιο δύο ακεραίους αριθμούς και μία αριθμητική πράξη
1. Πρόσθεση
2. Αφαίρεση
3. Πολλαπλασιασμός
4. Διαίρεση
5. Έξοδος
Όταν επιλεχθεί ‘5’ τότε το πρόγραμμα τερματίζει, διαφορετικά επαναλαμβάνεται η επιλογή με μια νέα πράξη. Επίσης, γίνεται έλεγχος της επιλογής για τα νούμερα 1,2,3,4 και 5.
Πρόγραμμα - Έλεγχος δεδομένων
Δέχεται από το πληκτρολόγιο τον μέσο προφορικό βαθμό και τον γραπτό βαθμό ενός μαθητή, υπολογίζει και τυπώνει τον μέσο όρο των βαθμών του μαθητή. Κατά την πληκτρολόγηση γίνεται έλεγχος των βαθμών που πληκτρολογούνται, ώστε να βρίσκονται στο διάστημα [0-20].

Δοκιμάστε να τα 'εκτελέσετε' στον διερμηνευτή για να δείτε πώς λειτουργούν. Πιο συγκεκριμένα, κάντε λήψη των αρχείων και ανοίξτε τα στον διερμηνευτή που είναι εγκατεστημένος στους υπολογιστές του εργαστηρίου. Εναλλακτικά, μπορείτε να 'ανοίξετε' τα αρχεία στον διαδικτυακό διερμηνευτή που είναι διαθέσιμος στην διεύθυνση https://gloglossa.gr/