Δ – Εύρεση Μέγιστου & Ελάχιστου

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ – ΑΕΠΠ

ΚΕΦΑΛΑΙΟ ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ – ΕΠΙΛΟΓΗΣ

& ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΥΝΑΡΤΗΣΕΙΣ)

ΕΝΟΤΗΤΑ Δ ΜΕΓΙΣΤΑ ΕΛΑΧΙΣΤΑ

ΔΙΔΑΚΤΙΚΟΙ ΣΤΟΧΟΙ

Μετά το τέλος της ενότητας ο μαθητής θα πρέπει να είναι σε θέση:

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

Μάθημα 1οΜάθημα 2οΜάθημα 3ο

  • Σε αγώνες στίβου και στο αγώνισμα άλμα επί κοντό συμμετέχουν Ν μαθητές. Γράψτε αλγόριθμο στον οποίο θα δίνονται οι επιδόσεις των αθλητών (σε εκατοστά) και θα εμφανίζει ως αποτέλεσμα την καλύτερη επίδοση σε μέτρα.

  • Αλγόριθμος Άλμα_επί_κοντό

    !Checked OK No Data – 2019

    Εμφάνισε ‘Πόσοι αθλητές συμμετέχουν στο αγώνισμα’

    Διάβασε Ν

    Εμφάνισε ‘Δώσε την επίδοση του 1ου αθλητή:’

    Διάβασε επίδοση

    max  επίδοση

    Για αθλητές από 2 μέχρι Ν

    Εμφάνισε ‘Δώσε την επίδοση του ‘, αθλητές,’ου αθλητή:’

    Διάβασε επίδοση

    Αν επίδοση > max τότε

    max  επίδοση

    Τέλος_αν

    Τέλος_επανάληψης

    Εμφάνισε “Η καλύτερη επίδοση αγγίζει τα “, max/100, ” m”

    Τέλος_προγράμματος

    Αλγόριθμος Άλμα_επί_κοντό

    Διάβασε Ν
    !όπου Ν το πλήθος των αθλητών

    Διάβασε επίδοση

    max επίδοση

    αθλητές 2

    Όσο αθλητές <= Ν επανάλαβε

    Διάβασε επίδοση

    Αν επίδοση > max τότε

    max επίδοση

    Τέλος_αν

    αθλητές αθλητές + 1

    Τέλος_επανάληψης

    Εμφάνισε max/100

    Τέλος Άλμα_επί_κοντό

    ΠΡΟΓΡΑΜΜΑ Άλμα_επί_κοντό

    ΜΕΤΑΒΛΗΤΕΣ

    ΑΚΕΡΑΙΕΣ: Ν , αθλητές

    ΠΡΑΓΜΑΤΙΚΕΣ: επίδοση, max

    ΑΡΧΗ

    !Checked OK No Data – 2019

    ΓΡΑΨΕ ‘Πόσοι αθλητές συμμετέχουν στο αγώνισμα’

    ΔΙΑΒΑΣΕ Ν

    ΓΡΑΨΕ ‘Δώσε την επίδοση του 1ου αθλητή:’

    ΔΙΑΒΑΣΕ επίδοση

    max  επίδοση

    ΓΙΑ αθλητές ΑΠΟ 2 ΜΕΧΡΙ Ν

    ΓΡΑΨΕ ‘Δώσε την επίδοση του ‘, αθλητές,’ου αθλητή:’

    ΔΙΑΒΑΣΕ επίδοση

    ΑΝ επίδοση > max ΤΟΤΕ

    max  επίδοση

    ΤΕΛΟΣ_ΑΝ

    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

    ΓΡΑΨΕ “Η καλύτερη επίδοση αγγίζει τα “, max/100, ” m”

    ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

  • Ποιες οι αλλαγές που πρέπει να γίνουν στον αλγόριθμο ώστε να εμφανίζει επιπλέον το ονοματεπώνυμο του αθλητή που πέτυχε την καλύτερη επίδοση;

  • Δίνονται οι χρόνοι (σε δευτερόλεπτα) κολυμβητών που αγωνίζονται στα 50 μέτρα “πεταλούδα”. Ποια η χειρότερη επίδοση; Συμπληρώστε τον αλγόριθμο ώστε να δίνει ως έξοδο και την καλύτερη επίδοση και να τερματίζει με τιμή φρουρό της επιλογής σας.

  • Να γραφούν οι αλγόριθμοι που αντιστοιχούν στα Απλά Προβλήματα.

  • Στις Πανελλαδικές εξετάσεις και στο μάθημα της Γεωμετρίας λαμβάνει μέρος άγνωστος αριθμός αθλητών. Γράψτε αλγόριθμο στον οποίο θα δίνεται το πλήθος των μαθητών καθώς και οι επιδόσεις τους (γραπτή βαθμολογία) στο παραπάνω μάθημα. Ο αλγόριθμος θα δίνει ως αποτέλεσμα τον αριθμό των μαθητών που έχουν σημειώσει την υψηλότερη επίδοση.

  • Να γραφούν οι αλγόριθμοι που αντιστοιχούν στα Σύνθετα και Συνδυαστικά Προβλήματα.

  • Εταιρεία σκαφών αναψυχής διαθέτει σε προσφορά ταχύπλοα σκάφη. Να υλοποιηθεί αλγόριθμος στον οποίο θα δίνεται το μοντέλο κάθε ταχύπλοου, η τιμή, καθώς και η κατανάλωσή του σε lt/100 Km. Το αποτέλεσμα του αλγόριθμου θα είναι η μικρότερη κατανάλωση και το μοντέλο με την υψηλότερη τιμή. Ο αριθμός των σκαφών της εταιρείας είναι τέτοιος που η συνολική αξία τους αν πουληθούν αγγίζει το ποσό των 1268000 ευρώ.

    Υπόδειξη: Να χρησιμοποιηθούν δύο συναρτήσεις με όνομα Ελάχιστος και Είναι_Μέγιστος αντίστοιχα οι οποίες θα δέχονται ως παραμέτρους δύο οποιουσδήποτε πραγματικούς αριθμούς, έστω α, β  και θα επιστρέφουν στο κύριο πρόγραμμα ως αποτέλεσμα:

    α) η συνάρτηση Ελάχιστος τον μικρότερο μεταξύ των α και β.

    β) η συνάρτηση Είναι_Μέγιστος τιμή αληθής στην περίπτωση που ισχύει α > β, ψευδής σε κάθε άλλη περίπτωση.

    Λέξεις κλειδιά:  συνάρτηση, λογική, αληθής, ψευδής, επανάληψη

  •  

    1. Με ποιον τρόπο η συνάρτηση Είναι_Μέγιστος μπορεί να χρησιμοποιηθεί, ώστε να εντοπιστεί στον αλγόριθμο και το δεύτερο ζητούμενο (το μοντέλο με την μικρότερη κατανάλωση); Να γραφεί η εντολή κλήσης της συνάρτησης μόνο.

    2. Εξηγήστε τι πρέπει ν’ αλλάξει στην συνάρτηση Είναι_Μέγιστος ώστε να επιστρέφει τιμή ψευδής μόνο στην περίπτωση που ισχύει α<β. Πως αυτή η αλλαγή θα επιδράσει στα αποτελέσματα του αλγορίθμου.

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

  • ….

Έυρευση ΜέγιστουΕλάχιστος θετικόςΆλμα εις μήκοςΕπιτόκια ΚαταθέσεωνΜπασκετμπολίστεςΕΜΥΚαι ποιος δεν χρωστάειΦόρμουλα 1

  • Να γραφεί αλγόριθμος που εντοπίζει και θα εκτυπώνει τον μικρότερο θετικό ενός συνόλου ακεραίων αριθμών που ο τελευταίος είναι το -1.

  • Ζητούμενο Ιδιαίτερη προϋπόθεση 
    Ο μικρότερος ενός συνόλου αριθμών Θετικός και ακέραιος
    Δεδομένα
    Διάφοροι αριθμοί Ακέραιοι

  • Σε αγώνες στίβου και στο αγώνισμα άλμα εις μήκος συμμετέχει άγνωστος αριθμός αθλητών. Γράψτε αλγόριθμο στον οποίο θα δίνονται οι επιδόσεις των αθλητών (σε εκατοστά) και θα εμφανίζει ως αποτέλεσμα την καλύτερη επίδοση (σε μέτρα) και τον αθλητή που την πέτυχε.

    Λέξεις κλειδιά:  …

  •  

  • Γράψτε αλγόριθμο που θα συγκρίνει τα επιτόκια καταθέσεων του συνόλου των τραπεζών της χώρας και θα δίνει ως αποτέλεσμα το μικρότερο από αυτά καθώς και την τράπεζα που το προσφέρει.

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

    Ερώτηση: Τι αποτέλεσμα θα δώσει ο αλγόριθμος σας αν δύο παίκτες έχουν το ίδιο μεγαλύτερο ύψος;

  • Σ’ ένα μετεωρολογικό σταθμό καταγράφεται καθημερινά η θερμοκρασία στις 12:00. Να αναπτυχθεί αλγόριθμος που στο τέλος του μήνα θα υπολογίζει και θα εμφανίζει:

    1. Την ελάχιστη θερμοκρασία και την μέρα που σημειώθηκε.

    2. Τη μέγιστη θερμοκρασία και την μέρα που σημειώθηκε.

  • Να αναπτυχθεί αλγόριθμος που θα δίνει ως αποτέλεσμα την χώρα με το μεγαλύτερο χρέος μεταξύ του συνόλου των χωρών της υφηλίου. Το χρέος κάθε χώρας δίνεται ως είσοδος και σε καμμία περίπτωση δεν ξεπερνά τον μεγαλύτερο 16-ψήφιο αριθμό. Το συνολικό χρέος όλων των χωρών υπολογίστηκε και δίνεται ως είσοδος στην αρχή του αλγορίθμου.

  • Ξαναγράψτε τον προηγούμενο αλγόριθμο ώστε στο αποτέλεσμα να εμφανίζει επιπλέον και την χώρα που χρωστά τα λιγότερα.

  • Σε αγώνα της φόρμουλα 1 παίρνουν μέρος Ν οδηγοί με τα οχήματά τους. Να γραφεί αλγόριθμος που θα δέχεται το μοντέλο κάθε οχήματος καθώς και την τελική του ταχύτητα σε Km/h. Ο αλγόριθμος θα εντοπίζει την μικρότερη ταχύτητα (μεταξύ των μοντέλων που η τελική ταχύτητά τους ξεπερνά τα 300 Km/h) και το μοντέλο με τη μεγαλύτερη ταχύτητα (μεταξύ των μοντέλων με τελική ταχύτητα που δεν «φτάνει» τα 300 Km/h).

ΔισκοβόλοιΑκριτικό ΧωριόΠυρηνικός αντιδραστήραςΒιβλιοθήκη

  • Σε αγώνες στίβου και στο αγώνισμα της δισκοβολίας συμμετέχει άγνωστος αριθμός αθλητών. Γράψτε αλγόριθμο στον οποίο θα δίνονται οι επιδόσεις των αθλητών (σε εκατοστά) και θα εμφανίζει ως αποτέλεσμα τον αριθμό των αθλητών που έχουν επίδοση ίση με την καλύτερη επίδοση (που θα εντοπίζει ο αλγόριθμος).

    Λέξεις Κλειδιά: Επανάληψη, Σύνθετη Επιλογή, Καταμέτρηση, Μέγιστα

  • Προσπαθήστε να τροποποιήσετε τον προηγούμενο αλγόριθμο ώστε να να εμφανίζει, στην περίπτωση που περισσότεροι από ένας αθλητές έχουν την ίδια καλύτερη επίδοση τα ονοματεπώνυμά τους. Είναι δυνατόν να ικανοποιηθεί η νέα απαίτηση; Αν ναί πως, αν όχι γιατί;

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

    Ο αλγόριθμος τερματίζει όταν ο αριθμός των ενήλικων ξεπεράσει το μισό των ανήλικων κατοίκων.

  • Σ’ ένα πυρηνικό αντιδραστήρα η μέτρηση της ραδιενέργειας γίνεται καθημερινά με τη βοήθεια Η/Υ. Να αναπτυχθεί αλγόριθμος που:
    Α) θα διαβάζει το όριο ασφαλείας για την τιμή της ραδιενέργειας.
    Στη συνέχεια,
    Β) θα διαβάζει τιμές για τη ραδιενέργεια κάθε ημέρας έως ότου ξεπεραστεί το όριο ασφαλείας.
    Γ) Όταν ξεπεραστεί το όριο θα εμφανίζει δέκα φορές το μήνυμα ΚΙΝΔΥΝΟΣ!!!.
    Επίσης ο αλγόριθμος θα υπολογίζει και θα εμφανίζει :
    Δ) το πλήθος των ημερών που η τιμή της ραδιενέργειας δεν ξεπέρασε το όριο ασφαλείας.
    Ε) την μικρότερη τιμή ραδιενέργειας.

  • Η βιβλιοθήκη του σχολείου σας διαθέτει αριθμό βιβλίων που μόλις ξεπερνούν τον μικρότερο εξαψήφιο αριθμό. Να δοθεί αλγόριθμος που θα δέχεται για κάθε βιβλίο τα εξής δεδομένα: θέμα, τίτλο, συγγραφέα, έτος πρώτης κυκλοφορίας και ISBN.

    Το αποτέλεσμα του αλγορίθμου θα είναι να εντοπίζει και να εμφανίζει για κάθε βιβλίο που ανήκει στο πρώτο θέμα που διαβάζει ο αλγόριθμος τον συγγραφέα και τον τίτλο.

    Επίσης,
    το έτος κυκλοφορίας και τον συνολικό αριθμό των πλέον πρόσφατων βιβλίων,
    το παλαιότερο από τα βιβλία που αναφέρονται στην Γαλλική Επανάσταση,
    το πλήθος των διηγημάτων που συγγραφέας τους είναι ο Αλέξανδρος Παπαδιαμάντης.

Επίδοση μαθητώνΦοίτιση μαθητήΚατασκήνωσηΠληροφορικές ΣπουδέςΑγορά διαμερίσματος

  • Να υλοποιηθεί αλγόριθμος που θα δέχεται σαν είσοδο το ονοματεπώνυμο και το βαθμό απολυτηρίου για κάθε έναν από τους απόφοιτους του 3ου Λυκείου Καλαμαριάς. Ο αλγόριθμος θα εμφανίζει μεταξύ των άριστων μαθητών -βαθμός απολυτηρίου τουλάχιστον 18,5- το ονοματεπώνυμο εκείνου με το χαμηλότερο βαθμό.
    Επίσης το  ονοματεπώνυμο του μαθητή με τον 2ο υψηλότερο βαθμό απολυτηρίου μεταξύ όλων των μαθητών.
    Ο αλγόριθμος τερματίζει όταν ως βαθμός απολυτηρίου δοθεί μη έγκυρη τιμή -έγκυρες τιμές βαθμολογίας θεωρούνται οι τιμές  μεταξύ 0 και 20.

  • Η φοίτηση ενός μαθητή χαρακτηρίζεται επαρκής αν έχει μέχρι 114 απουσίες. Επίσης χαρακτηρίζεται επαρκής αν οι απουσίες του είναι μέχρι 160 αλλά ο μέσος όρος βαθμολογίας του είναι τουλάχιστον 18. Σε κάθε άλλη περίπτωση η φοίτηση χαρακτηρίζεται ανεπαρκής.

    Η Γ’ τάξη ενός σχολείου αποτελείται από 160 μαθητές. Να αναπτυχθεί αλγόριθμος ο οποίος θα διαβάζει για κάθε μαθητή τον αριθμό μητρώου του, τις απουσίες του και τον μέσο όρο βαθμολογίας του. Θα εμφανίζει:

    α) τον αριθμό των μαθητών που η φοίτησή τους χαρακτηρίζεται σαν ανεπαρκής.

    β) τον αριθμό μητρώου του μαθητή με τις λιγότερες απουσίες.

    γ) το σύνολο των απουσιών όλων των μαθητών.

    δ) το σύνολο των απουσιών των μαθητών με μέσο όρο βαθμολογίας μεγαλύτερο του 18.

    ε) τις απουσίες του μαθητή με αριθμό μητρώου που θα διαβάζεται από τον αλγόριθμο.

  • Σε μια κατασκήνωση υπάρχουν παιδιά καθένα από τα οποία έχει ένα μοναδικό αριθμό. Ο αριθμός αυτός για τον πρώτο παιδί της κατασκήνωσης είναι το 1000, για το δεύτερο το 1001, για το τρίτο το 1002 κ.ο.κ.
    Να γραφεί αλγόριθμος που θα διαβάζει για κάθε παιδί το φύλο του (έλεγχος εγκυρότητας με αποδεκτές τιμές αγόρι, κορίτσι), την ηλικία του και το ύψος του. Για την συνέχιση της διαδικασίας ο αλγόριθμος θα εμφανίζει την ερώτηση “Υπάρχουν ακόμη δεδομένα προς καταχώρηση;” θα δέχεται την απάντηση του χρήστη και αναλόγως είτε θα συνεχίζει είτε θα τερματίζει.
    Θα υπολογίζει και θα εμφανίζει το μέσο όρο ηλικίας των παιδιών, το ποσοστό των παιδιών που το φύλο τους είναι αγόρι και το ύψος τους είναι μεγαλύτερο του 1.85, καθώς και τον αριθμό και το φύλο του μικρότερου σε ηλικία παιδιού. Επίσης ο αλγόριθμος θα ενημερώνει για το αν είναι περισσότερα τα αγόρια ή τα κορίτσια στην κατασκήνωση.

    Λέξεις Κλειδιά: Επανάληψη (άγνωστος αριθμός), Έλεγχος Εγκυρότητας, Σύνθετες Λογικές Εκφράσεις, Εμφωλευμένη Επανάληψη, Μέσος Όρος, Ποσοστά, Καταμέτρηση, Ελάχιστο, Συνάρτηση

  • Για την εισαγωγή στο τμήμα Πληροφορικής του Πανεπιστημίου Αθηνών απαιτείται ένας αριθμός μορίων –βάση- για τον οποίο ισχύει ότι 0 < μόρια <= 20000. Να αναπτυχθεί αλγόριθμος που θα δέχεται τα μόρια ενός μαθητή, τον αριθμό μητρώου του και την βάση της σχολής που προαναφέρθηκε.

    Θα εμφανίζει (μεταξύ των μαθητών που δεν κατάφεραν να εισαχθούν στο τμήμα) τον αριθμό μητρώου του μαθητή εκείνου που είναι πιο “κοντά” στην βάση.

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

    Τέλος ο αλγόριθμος θα δίνει ως αποτέλεσμα:

    • το πλήθος των μαθητών με τα λιγότερα μόρια.
    • τα μόρια του μαθητή με αριθμό μητρώου 4563.
    • τα μόρια των μαθητών με όνομα Δημοσθένης και επώνυμο Νικολάου.
    • Τον αριθμό μητρώου των μαθητών που εισάγονται στο τμήμα.

    Υπόδειξη: Στον αλγόριθμο θα “μεριμνάτε” για την εισαγωγή δεδομένων και πέραν των όσων απαιτεί η εκφώνηση.

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

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

    Θα υπολογίζει και θα εμφανίζει τη μέση τιμή πώλησης των διαμερισμάτων που η επιφάνειά τους είναι μικρότερη από 80 τ.μ. καθώς και το πλήθος των διαμερισμάτων που η τιμή τους ανά τετραγωνικό μέτρο είναι μεγαλύτερη των 2000 ευρώ. Επίσης την υψηλότερη (ανά τετραγωνικό μέτρο) τιμή διαμερίσματος. Η επιλογή του κριτηρίου για τον τερματισμό του αλγορίθμου είναι στην επιλογή σας.

Permanent link to this article: https://pervolischool.edu.gr/computer-science/algorithms-aepp/repeatif/repeat-max-min/