Άσκηση στην πλατφόρμα
Μήνας: Δεκέμβριος 2022
Έλεγχος αν ένας πίνακας είναι ταξινομημένος
Αν σε κάποια άσκηση ζητείται να ελεγχθεί αν ένας πίνακας είναι ταξινομημένος - έστω κατ' αύξουσα σειρά - τότε στην πραγματικότητα θα πρέπει να ελεγχθεί αν υπάρχει ένα τουλάχιστον ζεύγος γειτονικών στοιχείων που δεν είναι στη σωστή σειρά. Αυτό υλοποιείται με το παρακάτω απόσπασμα αλγορίθμου για έναν πίνακα έστω 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
! Ελέγχουμε τον πίνακα μέχρι τη μέση
Για i από 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/ |
Ταξινόμηση των στοιχείων ενός δισδιάστατου πίνακα ανά γραμμή, ανά στήλη και με βάση τα στοιχεία μιας συγκεκριμένης στήλης. |
Ασκήσεις στη δομή επιλογής
1) | Χαρακτηρισμός τριγώνων |
2) | Υπολογισμός εμβαδού τριγώνων με τη βοήθεια του τύπου του Ήρωνα
|
3) | Σε έναν αγώνα στον τελικό του άλματος εις μήκος, ο αθλητής πραγματοποιεί την τελική του προσπάθεια. Να αναπτύξετε αλγόριθμο ο οποίος:
α) διαβάζει το μήκος του άλματος του αθλητή. Θεωρήστε ότι για άκυρο άλμα δίνεται ως μήκος ο αριθμός 0. β) Εμφανίζει το μήνυμα "Άκυρο άλμα" αν δόθηκε ως μήκος ο αριθμός 0 ή το μήνυμα "Έγκυρο άλμα" αν δόθηκε ως μήκος αριθμός διάφορος του μηδενός. |
Ταξινόμηση ευθείας ανταλλαγής (φυσαλίδας) – Βίντεο και προσομοίωση εκτέλεσης αλγορίθμου
Άσκηση για δυαδική και σειριακή αναζήτηση
- Να γραφτεί πρόγραμμα το οποίο να διαβάζει 10 ονόματα και ισάριθμα τηλέφωνα. (Θεωρήστε ότι τα ονόματα δίνονται ταξινομημένα.)
- Να διαβάζει ένα όνομα για αναζήτηση του τηλεφώνου του.
- Να αναζητά το όνομα σειριακά. Αν βρεθεί, να εμφανίζει το τηλέφωνό του, διαφορετικά μήνυμα ότι δεν βρέθηκε.
- Να εμφανίζει επίσης το πλήθος των αναζητήσεων που έκανε.
(Επισημαίνεται ότι επειδή ο πίνακας είναι ταξινομημένος, να σταματά όταν ξεπεράσει το ζητούμενο όνομα.)
- Να αναζητά το όνομα δυαδικά. Αν βρεθεί, να εμφανίζει το τηλέφωνό του, διαφορετικά μήνυμα ότι δεν βρέθηκε.
- Να εμφανίζει επίσης το πλήθος των αναζητήσεων που έκανε.
(Πηγή άσκησης: http://2lyk-gerak.att.sch.gr/aepp/aepp-binary-search.htm)
Δυαδική αναζήτηση σε ταξινομημένο κατά φθίνουσα σειρά πίνακα
Δυαδική αναζήτηση σε ταξινομημένο κατά αύξουσα σειρά πίνακα
ΕΦΑΡΜΟΓΗ ΣΤΟ App Inventor – ΔΗΜΙΟΥΡΓΙΑ ΤΥΧΑΙΟΥ ΧΡΩΜΑΤΟΣ
Δείτε το Φύλλο εργασίας, στο οποίο περιγράφονται αναλυτικά τα βήματα που πρέπει να ακολουθήσετε για να υλοποιήσετε τη σχετική εφαρμογή στο App Inventor.