Παρασκευή, 15 Δεκεμβρίου 2017

Βραβεία minions

Βαθμός Δυσκολίας:
3/5
Εκφώνηση Ασκησης: 

Το 2014 είναι εδώ και  ο Gru αποφάσισε μετά από τις μεγάλες πιέσεις των τριών του αγγέλων να κάνει τα πρώτα ετήσια βραβεία των minions. Να γραφεί αλγόριθμος ο οποίος:

Α) Να διαβάζει τα ονόματα των 50 υποψήφιων minions και να τα αποθηκεύει σε πίνακα ΟΝ[50].

Β) Να διαβάζει τις ψήφους των minions για τη καλύτερη φάρσα κάνοντας έλεγχο για την ορθή καταχώριση(ως ψήφους δέχεται τους αριθμούς 1 μέχρι 50), να αποθηκεύει τις ψήφους σε κατάλληλο πίνακα και να εμφανίζει το όνομα του νικητή, ο οποίος θα κερδίζει 100 μπανάνες.

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

ΘΕΣΗ

ΒΡΑΒΕΙΟ

1η

Αυτοκίνητο

2η

Διακοπές στη παραλία της Χαβάης

3η

Δωρεάν παγωτό για μια βδομάδα

4η

5 μέρες χωρίς δουλειές

5η

10 μπανάνες

 

 

 

 

 

 

 

 

 

Πρίν από κάθε εμφάνιση να εμφανίζει σχετικά μηνύματα.

(Δίνεται ότι τα minions που ψηφίζουν είναι 1000)

Επιμέλεια: Μιχάλης Χαλδαιάκης

 

H άσκηση συμμετέχει στον διαγωνισμό 1 Άσκηση = 1 Tablet.

 

Βαθμολογία Κριτών

Χρήστος Τσάλης Γιάννης Καψάλης Φανή Αναγνώστου Δημήτρης Τζανέκας Μίλτος Στάμος
7.5 8 9 7 8

 

Συνολική Βαθμολογία Κριτών                39.5

Συνολική Βαθμολογία από τα Likes        6

Συνολική Βαθμολογία                       45.5

 

Λύση Άσκησης: 

 

Αλγόριθμος Βραβεία

Για ι από 1 μέχρι 1000

      Όσο ι <= 50 επανάλαβε

        Διάβασε ΟΝ[ι]

        ΟΝ2[ι] ← ΟΝ[ι]

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

      Διάβασε ψηφ_φ[ι]

      Όσο ψηφ_φ[ι]<1 Ή ψηφ_φ>50 επανάλαβε

           Εμφάνισε ‘‘ Άκυρη ψήφος, Ξαναδώσε.’’

           Διάβασε ψηφ_φ[ι]

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

      Διάβασε ψηφ_τ[ι]

      Όσο ι<=50 επανάλαβε

         ψ_φ[ι]←0

         ψ_τ[ι]←0

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

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

    !Διάβασα τις ψήφους, και μηδένισα πίνακα για την καταμέτρηση των ψήφων

    Για ι από 1 μέχρι 50

       Για ξ από 1 μέχρι 1000

          Αν ι = ψηφ_φ[ξ] τότε     ψ_φ[ι]← ψ_φ[ι] +1

          Αν ι = ψηφ_τ[ξ] τότε       ψ_τ[ι]← ψ_τ[ι] +1

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

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

Για j από 2 μέχρι 50

    Για ι από 50 μέχρι 2 ΜΕ_ΒΗΜΑ -1

       Αν ψ_φ[ι]>ψ_φ[ι-1] τότε

           temp←ψ_φ[ι]

           ψ_φ[ι]←ψ_φ[ι-1]

           ψ_φ[ι-1]←temp

           temp← ΟΝ[ι]

           ΟΝ[ι]← ΟΝ[ι-1]

           ΟΝ[ι-1]← temp

         Τέλος_αν 

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

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

       Εμφάνισε ‘‘Ο νικητής για την καλύτερη φάρσα που κερδίζει και 100 μπανάνες είναι ο ‘’,ΟΝ[1]

Για j από 2 μέχρι 50    

  Για ι από 50 μέχρι 2 ΜΕ_ΒΗΜΑ -1

           Αν ψ_τ[ι] > ψ_τ[ι-1] τότε

                 temp ← ψ_τ[ι]

                 ψ_τ[ι] ← ψ_τ[ι-1]

                 ψ_τ[ι-1] ← temp

                 temp← ΟΝ2[ι]

                 ΟΝ2[ι]← ΟΝ2[ι-1]

                 ΟΝ2[ι-1]← temp

           Τέλος_αν

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

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

       Εμφάνισε ‘‘ Στην 5η θέση καλύτερου τραγουδιού ο’’, ΟΝ2[5], ‘‘που κερδίζει 10 μπανάνες’’   

       Εμφάνισε ‘‘Στην 4η θέση ο’’, ΟΝ2[4], ‘‘ που κερδίζει 5 μέρες χωρίς δουλειά’’

       Εμφάνισε ‘‘Στην 3η θέση ο’’, ΟΝ2[3], ‘‘ που κερδίζει δωρεάν παγωτό για μια βδομάδα’’ 

       Εμφάνισε ‘‘Στην 2η θέση ο’’, ΟΝ2[2], ‘’ που κερδίζει διακοπές σε παραλία της Χαβάης’’

       Εμφάνισε ‘’Και στη 1η θέση ο’’, ΟΝ2[1], ‘‘ που κερδίζει ένα αυτοκίνητο’’

Τέλος Βραβεία