1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη...

100
1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Ασκήσεις - ερωτήσεις για το 2012 - 2013 Το υλικό, που επιμελήθηκε ο Δ. Γιάτας, είναι ευγενική προσφορά του συναδέλφου - συγγραφέα Παναγιώτη Τσιωτάκη και υπάρχει στην διεύθυνση http://users.kor.sch.gr/ptsiotakis/. Τον ευχαριστούμε ιδιαίτερα.

Upload: others

Post on 06-Sep-2019

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1ο Πειραματικό ΓΕΛ Αθήνας –

Γεννάδειο

Ανάπτυξη Εφαρμογών σε

Προγραμματιστικό Περιβάλλον Ασκήσεις - ερωτήσεις για το 2012 - 2013

Το υλικό, που επιμελήθηκε ο Δ. Γιάτας, είναι ευγενική προσφορά του

συναδέλφου - συγγραφέα Παναγιώτη Τσιωτάκη και υπάρχει στην

διεύθυνση http://users.kor.sch.gr/ptsiotakis/. Τον ευχαριστούμε

ιδιαίτερα.

Page 2: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 2 από 100

Πίνακας περιεχομένων

Κεφάλαιο 1 ............................................................................................................................. 3

Ερωτήσεις .......................................................................................................................... 3

Κεφάλαιο 2 ............................................................................................................................. 4

Ερωτήσεις .......................................................................................................................... 4

Ασκήσεις στις Αλγοριθμικές δομές ................................................................................... 8

Δομή Ακολουθίας .......................................................................................................... 8

Δομή επιλογής .............................................................................................................. 14

Δομές Επανάληψης ...................................................................................................... 27

Κεφάλαιο 3 ........................................................................................................................... 48

Ερωτήσεις ........................................................................................................................ 48

Μονοδιάστατοι Πίνακες................................................................................................... 50

Δισδιάστατοι Πίνακες ...................................................................................................... 53

Γενικές Ασκήσεις στους Πίνακες .................................................................................... 58

Επεξεργασίες στους Πίνακες ........................................................................................... 64

Κεφάλαιο 6 ........................................................................................................................... 76

Ερωτήσεις ........................................................................................................................ 76

Κεφάλαιο 7-8-9 .................................................................................................................... 81

Ερωτήσεις ........................................................................................................................ 81

Κεφάλαιο 10 ......................................................................................................................... 85

Ερωτήσεις ........................................................................................................................ 85

Υποπρογράμματα Ασκήσεις ............................................................................................ 87

Page 3: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 3 από 100

Κεφάλαιο 1

Ερωτήσεις

1. Πρόβλημα είναι μια μαθηματική κατάσταση που πρέπει να αντιμετωπίσουμε

2. Αν υποβάλλουμε τα δεδομένα σε επεξεργασία παίρνουμε πληροφορίες

3. Ο υπολογιστής και το πρόβλημα είναι έννοιες που εξαρτώνται άμεσα η μια από την άλλη

4. Για την επίλυση ενός προβλήματος απαιτείται η σωστή διατύπωσή του

5. Ένα πρόβλημα μπορεί να αναλυθεί σε πολλά επιμέρους προβλήματα

6. Ο ανθρώπινος εγκέφαλος είναι ένας μηχανισμός επεξεργασίας δεδομένων

7. Ο ταχύτερος μηχανισμός επεξεργασίας δεδομένων είναι ο υπολογιστής

8. Η κατανόηση ενός προβλήματος ακολουθεί την ανάλυσή του

9. Ο Η/Υ δεν μπορεί να επιτελέσει όλες τις λειτουργίες του ανθρώπινου εγκεφάλου

10. Η χρήση Η/Υ για την επίλυση προβλημάτων ενδείκνυται στις περιπτώσεις που χρειάζεται

διαχείριση μεγάλου όγκου δεδομένων

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

σε έναν Η/Υ

12. Ο Η/Υ μπορεί να επιλύσει με άνεση οποιοδήποτε πολύπλοκο πρόβλημα χωρίς τη βοήθεια του

ανθρώπου

13. Για κάθε πρόβλημα υπάρχει και μοναδικός αλγόριθμος επίλυσής του

14. Με τη χρήση Η/Υ μπορούμε να επιλύσουμε οποιοδήποτε πρόβλημα

15. Για την επίλυση ενός προβλήματος πρέπει να έχουν καθοριστεί τα δεδομένα και τα ζητούμενα

16. Τα προβλήματα για τα οποία δεν μπορούμε να απαντήσουμε ακόμη, εάν είναι δυνατόν να επιλυθούν

ονομάζονται μη επιλύσιμα

17. Η επίλυση της πρωτοβάθμιας εξίσωσης αποτελεί αδόμητο πρόβλημα

18. Άλυτα ονομάζουμε τα προβλήματα των οποίων η λύση δεν έχει βρεθεί

19. Δομή ενός προβλήματος είναι η εύρεση του συνόλου των μερών που το απαρτίζουν

20. Τα δεδομένα ενός προβλήματος είναι πάντοτε κάποιοι αριθμοί

21. Για την παραγωγή πληροφοριών απαιτούνται δεδομένα ή άλλες πληροφορίες

22. Ένα δομημένο πρόβλημα είναι πάντοτε επιλύσιμο

23. Ένα επιλύσιμο πρόβλημα είναι πάντοτε δομημένο

24. Με τη χρήση αλγορίθμων επιλύονται όλα τα προβλήματα

25. Αλγόριθμος είναι μια "συνταγή" που ορίζει τι πρέπει να γίνει ώστε να φτάσουμε στον επιθυμητό

σκοπό

26. Ένα άλυτο πρόβλημα είναι και αδόμητο

27. Η πρόσθεση είναι μια από τις βασικές λειτουργίες που μπορεί να επιτελέσει έναν Η/Υ

28. Πληροφορία είναι το αποτέλεσμα από την επεξεργασία των δεδομένων

29. Πριν από την επίλυση ενός προβλήματος πρέπει αυτό να έχει διατυπωθεί με ακρίβεια και σαφήνεια

30. Με την επεξεργασία πληροφοριών μπορούν να εξαχθούν και άλλες πληροφορίες

31. Η κατανόηση ενός προβλήματος εξαρτάται μόνο από την διατύπωσή του

32. Στη δομή ενός προβλήματος περιλαμβάνονται τα συστατικά του μέρη

33. Το ότι το ύψος ενός ατόμου είναι 1,90 αποτελεί δεδομένο, ενώ είναι πληροφορία ότι το άτομο αυτό

είναι ψηλό

34. Ανοικτά είναι τα προβλήματα που δεν είναι άλυτα ούτε επιλύσιμα

35. Η κακή διατύπωση ενός προβλήματος μπορεί να οδηγήσει στην μη επίλυσή του

36. Ο υπολογισμός του εμβαδού ενός τριγώνου είναι ανοικτό πρόβλημα

37. Ο υπολογισμός του εμβαδού ενός τριγώνου είναι δομημένο πρόβλημα

Page 4: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 4 από 100

38. Με κριτήριο την δυνατότητα επίλυσης ενός προβλήματος οι κατηγορίες είναι: επιλύσιμα,

υπολογιστικά και άλυτα

39. Τα δεδομένα μπορούν να παρέχουν πληροφορίες όταν υποβάλλονται σε ____________

40. Το πρόβλημα μεγιστοποίησης των κερδών μιας επιχείρησης είναι πρόβλημα _____________

41. Για την επίλυση ενός προβλήματος πρέπει να γίνει ο καθορισμός _____________

42. Η ____________ είναι η βάση της επίλυσης ενός προβλήματος

43. Σημαντικός παράγοντας στην κατανόηση ενός προβλήματος είναι η ___________ του

44. Τα συστατικά μέρη που αποτελούν ένα πρόβλημα προσδιορίζουν τη ____________ του

45. Η ______________ ______________ μπορεί να χρησιμοποιηθεί για την απεικόνιση της δομής

ενός προβλήματος

46. Τα δεδομένα ενός προβλήματος πρέπει

α) να έχουν καθοριστεί με σαφήνεια β) να είναι δομημένα γ) να είναι αριθμητικά

47. Η διαδικασία μέσω της οποίας βρίσκουμε το ζητούμενο ενός προβλήματος ονομάζεται

α) επίλυση β) ανάλυση γ) αξιολόγηση δ) εύρεση

48. Τα στάδια αντιμετώπισης προβλήματος είναι: Κατανόηση => ________________ =>Επίλυση

49. Οι λόγοι για τους οποίους αναθέτουμε την επίλυση προβλημάτων σ' έναν Η/Υ είναι:

α) Ταχύτητα εκτέλεσης πράξεων β) Χειρισμός μεγάλου όγκου δεδομένων γ) Ικανότητα εκτέλεσης

συγκρίσεων

δ) Ικανότητα για ανάλυση δεδομένων ε) Μπορεί να λύσει όλα τα υπολογιστικά προβλήματα δεδομένων

50. Με τον όρο _______ προβλήματος αναφερόμαστε στα συστατικά μέρη του προβλήματος

51. Οι βασικές λειτουργίες που μπορεί να επιτελέσει ένας Η/Υ είναι:

α) πολλαπλασιασμός β) Χειρισμός μεγάλου όγκου δεδομένων γ) μεταφορά δεδομένων

δ) Ικανότητα για ανάλυση δεδομένων ε) σύγκριση στ) δυνάμεις

52. Να συνδέσετε τα στοιχεία της στήλης Α με τα στοιχεία της στήλης Β (κάθε στοιχείο της στήλης Α

μπορεί να ταιριάζει με περισσότερα στοιχεία της στήλης Β)

Α Τιμή Β Τύπος Δεδομένων

1. Πρόβλημα υπολογιστικό Α) Εύρεση εμβαδού κύκλου

2. Πρόβλημα βελτιστοποίησης Β) Αγορά αυτοκινήτου

3. Πρόβλημα απόφασης Γ) Εύρεση γρηγορότερης διανομής γραμμάτων

Δ) Πόσοι μαθητές θα πάρουν αριστείο

Ε) Ένας αριθμός είναι άρτιος

ΣΤ) Ο μαθητής Ιωάννου θα πάρει αριστείο

53. Να συνδέσετε τα στοιχεία της στήλης Α με τα στοιχεία της στήλης Β

Α Τιμή Β Τύπος Δεδομένων

1. Ανοικτό Α) Έχουμε φτάσει στην παραδοχή ότι δεν επιδέχονται λύση

2. Δομημένο Β) Απαντά σε ένα ερώτημα με ένα "Ναι" ή "Όχι"

3. Απόφασης Γ) Η λύση προέρχεται από μια αυτοματοποιημένη διαδικασία

Δ) Η λύση τους δεν έχει βρεθεί αλλά δεν έχει αποδειχτεί οτι δεν επιδέχονται λύση

Ε) Η λύση τους επιδιώκεται στα πλαίσια ενός εύρους πιθανών λύσεων

ΣΤ) Ζητάμε το βέλτιστο αποτέλεσμα για τα δεδομένα του προβλήματος

Κεφάλαιο 2

Ερωτήσεις

1. Χρησιμοποιούμε τη δομή επιλογής όταν θέλουμε μια ομάδα εντολών να εκτελεστεί πολλές

φορές

Page 5: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 5 από 100

2. Η σύζευξη δύο λογικών συνθηκών είναι ψευδής όταν μόνο μία από τις δύο λογικές συνθήκες

είναι αληθής

3. Μια δομή επιλογής μπορεί να εκτελεστεί πολλές φορές

4. Η δομή της επιλογής χρησιμοποιείται στις περιπτώσεις όπου υπάρχει μία συγκεκριμένη σειρά

βημάτων για την επίλυση ενός προβλήματος

5. Όταν χρειάζεται να υπάρξει απόφαση με βάση κάποιο κριτήριο, τότε χρησιμοποιείται η δομή

της επιλογής

6. Η δομή της επιλογής περιλαμβάνει τον έλεγχο κάποιας συνθήκης που μπορεί να έχει δύο τιμές

(Αληθής ή Ψευδής)

7. Οι διαδικασίες των πολλαπλών επιλογών εφαρμόζονται στα προβλήματα όπου εκτελούνται

κάποιες εντολές ανάλογα με την τιμή που παίρνει μία μεταβλητή

8. Μία εντολή «Αν…τότε» δεν μπορεί να περιληφθεί στα όρια κάποιας άλλης εντολής "Αν…τότε"

9. Με την εντολή "Αν Χ div 2 = 0 " ελέγχουμε αν ο Χ είναι άρτιος

10. 10. Μία εντολή «Αν…τότε» περιλαμβάνει κάποια: α) συνθήκη β) ακολουθία γ) ανάθεση δ)

επανάληψη

11. Με την ερώτηση "Αν (Α mod 2=0)", εννοούμε εν γένει, ότι επιθυμούμε να εξετάσουμε αν

α) o Α είναι περιττός β) ο Α είναι μικρότερος του 2 γ) ο Α ισούται με 2 δ) ο Α διαιρείται

ακριβώς με το 2

12. Η λογική πρόταση "Χ ^ 2 >= 0" είναι πάντοτε αληθής

13. Στη δομή απλής επιλογής η ομάδα εντολών εντός της δομής εκτελείται όταν η συνθήκη είναι

αληθής

14. Στην πολλαπλή επιλογή κάθε περίπτωση αντιστοιχεί σε διαφορετική τιμή της συνθήκης

15. Για τον υπολογισμό του μέσου όρου αριθμών πρέπει να χρησιμοποιηθεί η δομή επιλογής

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

17. Κάθε εντολή Αν περιέχει Αλλιώς

18. Κάθε εντολή πολλαπλής επιλογής μπορεί να αναπαρασταθεί από πολλά απλά Αν

19. Στην δομή Επίλεξε εκτελείται πάντα το "Περίπτωση Αλλιώς"

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

ακολoυθίας

21. Μια δομή επιλογής μπορεί να περιλαμβάνει μόνο εντολές εκχώρησης τιμής

22. Σε μια έκφραση εκτελούνται πρώτα οι συγκριτικοί τελεστές και στη συνέχεια οι αριθμητικοί

23. Αν μετά την εκτέλεση του κάτωθι τμήματος αλγορίθμου:

Αν (x mod y < x div y) τότε

a ← 0

b ← 0

Αλλιώς

a ← x div y

b ← x mod y

Τέλος_αν

το a = 0 και το b = 3,τι τιμές θα μπορούσαν να έχουν τα x και y; α) x=7, y=2 β) x=4, y=3 γ)

x=3, y=5 δ) x=9, y=3

24. Στη δομή επανάληψης Για δεν είναι δυνατόν η αρχική τιμή να είναι να είναι μεγαλύτερη από την

τελική

25. Δεν μπορούμε να έχουμε μια δομή επανάληψης μέσα σε μια άλλη δομή επανάληψης

26. Η λογική των επαναληπτικών διαδικασιών εφαρμόζεται στις περιπτώσεις, όπου μία ακολουθία

εντολών πρέπει να εφαρμοσθεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι κοινό

27. Με χρήση της εντολής “Όσο...επανάλαβε” επιτυγχάνεται η επανάληψη μίας διαδικασίας με βάση

κάποια συνθήκη

28. Με την εντολή "Αρχή_επανάληψης…Μέχρις_ότου…" υπάρχει ένας βρόχος που εκτελείται

τουλάχιστον μία φορά

29. Η εντολή "Για i από .. μέχρι .. βήμα .." πρέπει να περιλαμβάνει για βήμα πάντοτε ένα θετικό

αριθμό

30. Στη δομή επανάληψης Για το βήμα δεν μπορεί να είναι μηδέν

Page 6: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 6 από 100

31. Όταν το πλήθος των επαναλήψεων είναι γνωστό δεν μπορεί να χρησιμοποιηθεί η δομή

επανάληψης "Όσο...επανάλαβε"

32. Οι εντολές του βρόχου "Για" εκτελούνται τουλάχιστον μια φορά

33. Ο πολλαπλασιασμός _____ _____________ απαιτεί πολλαπλασιασμό επί δύο, διαίρεση δια

δύο και πρόσθεση

34. Στην δομή «Όσο», η ομάδα εντολών εκτελείται μέχρι η συνθήκη να γίνει ψευδής

35. Στην δομή «Μέχρις_ότου», υπάρχει περίπτωση η ομάδα εντολών του βρόχου να μην

εκτελεστεί καμία φορά

36. Στις δομές "Όσο" και "Μέχρις_ότου", οι συνθήκες είναι μεταξύ τους αντίθετες

37. Η δομή "Όσο...Επανάλαβε" χρησιμοποιείται μόνο όταν γνωρίζουμε το πλήθος των επαναλήψεων

38. Κάθε πρόβλημα που απαιτεί τη χρήση δομής επανάληψης μπορεί να επιλυθεί με τη χρήση της

δομής επανάληψης "Για"

39. Κάθε πρόβλημα που απαιτεί τη χρήση δομής επανάληψης μπορεί να επιλυθεί με τη χρήση της

δομής επανάληψης "Όσο"

40. Κάθε πρόβλημα που απαιτεί τη χρήση δομής επανάληψης μπορεί να επιλυθεί με τη χρήση της

δομής επανάληψης "Μέχρις_ότου"

41. Η δομή "Μέχρις_ότου" τερματίζεται όταν η συνθήκη είναι αληθής

42. Κάθε βρόχος "Για" μπορεί να μετατραπεί σε "Όσο"

43. Κάθε βρόχος "Όσο" μπορεί να μετατραπεί σε "Για"

44. Κάθε βρόχος "Όσο" μπορεί να μετατραπεί σε "Μέχρις_ότου"

45. Εντός μιας δομής επιλογής δεν μπορεί να περιέχεται δομή επανάληψης

46. Εντός μιας δομής επανάληψης δεν μπορεί να περιέχεται δομή επιλογής

47. Στην δομή επανάληψης "Μέχρις_ότου" οι μεταβλητές που συμμετέχουν στην συνθήκη πρέπει

να αρχικοποιούνται πριν το βρόχο

48. Στην δομή επανάληψης "Όσο" οι μεταβλητές που συμμετέχουν στην συνθήκη πρέπει να πάρουν

τιμή πριν το βρόχο

49. Οι εμφωλευμένες δομές περιλαμβάνουν συνδυασμό:

α) συνθήκης και εκτύπωσης β) διαφόρων αλγοριθμικών δομών γ) συνθήκης και ανάγνωσης

δ) ανάγνωσης και εκτύπωσης

50. Με την δομή "Όσο ((a mod 2=0) και (b mod 2=1)) επανάλαβε", πετυχαίνουμε να εκτελούμε

τον βρόχο όσο

α) o a είναι περιττός και ο b άρτιος β) ο a είναι άρτιος και ο b περιττός γ) ο a και o b είναι

άρτιοι δ) ο a και ο b είναι περιττοί

51. Οι επαναληπτικές δομές χρησιμοποιούνται στην περίπτωση που μια ομάδα εντολών πρέπει να

εκτελεστεί πολλές φορές

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

να τερματίζεται

53. Στη δομή επανάληψης Για πρέπει η τιμή του μετρητή να μεταβάλλεται εντός του βρόχου

54. Η επαναληπτική δομή που περιλαμβάνει έλεγχο επανάληψης στο τέλος της διαδικασίας ξεκινά

με τη φράση «Αρχή_επανάληψης» και λήγει με τη φράση ______________

55. Ο αλγόριθμος που δεν διαθέτει τρόπο τερματισμού χαρακτηρίζεται ως _____________

βρόχος

56. Μία εμφωλευμένη δομή χρησιμοποιείται όταν χρειάζεται:

α) μία ενέργεια να περιληφθεί μέσα σε άλλη ενέργεια β) να υπάρχει επανάληψη

τυποποιημένων ενεργειών

γ) να υπάρχει εκτύπωση και ανάγνωση τιμών δ) να επαναληφθεί μία ενέργεια

πολλές φορές

57. Η λογική πράξη "ή" μεταξύ 2 προτάσεων είναι αληθής όταν:

α) οποιαδήποτε από τις δύο προτάσεις είναι αληθής β) η πρώτη πρόταση είναι ψευδής

γ) η δεύτερη πρόταση είναι ψευδής δ) και οι δύο προτάσεις είναι αληθής

58. Η λογική πράξη και μεταξύ 2 προτάσεων είναι αληθής όταν:

α) οποιαδήποτε από τις δύο προτάσεις είναι αληθής β) η πρώτη πρόταση είναι αληθής

γ) η δεύτερη πρόταση είναι αληθής δ) και οι δύο προτάσεις είναι αληθείς

Page 7: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 7 από 100

59. Η λογική των επαναληπτικών διαδικασιών εφαρμόζεται στις περιπτώσεις όπου:

α) μία ακολουθία εντολών πρέπει να εφαρμοσθεί σε δύο περιπτώσεις

β) μία ακολουθία εντολών πρέπει να εφαρμοσθεί σε ένα σύνολο περιπτώσεων

γ) υπάρχει απαίτηση να ληφθεί μία απόφαση με βάση κάποια συνθήκη

δ) υπάρχουν δύο συνθήκες που πρέπει να ισχύουν η μία μετά την άλλη

60. Τα αναγνωριστικά των οποίων οι τιμές μεταβάλλονται κατά τη διάρκεια του αλγορίθμου

ονομάζονται ____________ και εκείνα των οποίων οι τιμές δεν μπορούν να μεταβληθούν

______________

61. Η δομή "______ i από τ1 μέχρι τ2 με_βήμα β" αποτελεί ένα επαναληπτικό σχήμα ορισμένων

επαναλήψεων

62. Μία διαδικασία που δεν ολοκληρώνεται μετά από πεπερασμένο πλήθος βημάτων δεν αποτελεί

αλγόριθμο, αλλά:

α) δεδομένα β) μία υπολογιστική διαδικασία γ) μία εκτέλεση δ) ατέρμονα έλεγχο δεδομένων

63. Η επαναληπτική δομή "Όσο...Επανάλαβε" περιλαμβάνει διαδικασίες και λήγει με τη φράση

______________

64. Η εκτέλεση του κάτωθι τμήματος αλγορίθμου:

s ← 0

p ← 0

διάβασε a

Όσο (a>0) επανάλαβε

Αν(a mod 2=1) τότε

s ← s + a

αλλιώς

p ← p * a

Τέλος_αν

Διάβασε a

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

όπου a ακέραιος, μας δίνει

α) το γινόμενο των περιττών και 0 για τους αρτίους β) το άθροισμα των περιττών και

το γινόμενο των άρτιων

γ) το άθροισμα των περιττών και 0 για τους άρτιους δ) το άθροισμα των αρτίων και 0

για τους περιττούς

65. Δίνεται το παρακάτω τμήμα αλγορίθμου

da ← 0

dp ← 0

Για i από a μέχρι 4 με_βήμα –2

Αν (i mod 2=0) τότε

da ← da + 1

αλλιώς

dp ← dp + 1

Τέλος_αν

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

αν το αποτέλεσμα είναι da=0 και dp=3, τότε ποια τιμή θα μπορούσε να έχει το a;

α) a=11 β) a=9 γ) a=8 δ) a=2

66. Τι θα εκτυπωθεί, μετά την εκτέλεση του παρακάτω αλγορίθμου:

α ← 2

β ← -3

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

β ← β + 1

α ← α + β - 1

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

Εκτύπωσε α

α) 2 β) -4 γ) -1 δ) 4

Page 8: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 8 από 100

67. Οι εντολές μεταξύ του "Αρχή_Επανάληψης...Μέχρις_ότου" ...

α. εκτελούνται μέχρι η συνθήκη να γίνει αληθής

β. εκτελούνται μέχρι η συνθήκη να γίνει ψευδής

γ. μπορεί να μην εκτελεστούν καμία επανάληψη

δ. θα εκτελεστούν οπωσδήποτε μια φορά

68. Το παρακάτω τμήμα αλγορίθμου

Σ ← 0

Για i από 100 μέχρι 999 με_βήμα 2

Σ ← Σ + i

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

α. Υπολογίζει το άθροισμα των τριψήφιων αριθμών

β. Υπολογίζει το άθροισμα των τριψήφιων άρτιων αριθμών

γ. Υπολογίζει το άθροισμα των τριψήφιων περιττών

69. Όταν σε μια δομή "Για" παραλείπεται το βήμα, τότε εννοείται ως βήμα το 1

70. Η δομή "Όσο" τερματίζεται όταν η συνθήκη γίνεται ψευδής

71. Εντός της δομής "Για" δεν επιτρέπεται η τροποποίηση της τιμής του μετρητή

72. Να αντιστοιχίσετε τα στοιχεία των δυο στηλών

Α Εκφράσεις Β Αλγοριθμικές Έννοιες

1. α > β - 1 Α) Δομή επιλογής

2. Εκτύπωσε Χ Β) Δομή επανάληψης

3. Αν α > 3 τότε

...

Τέλος_αν

Γ) Αριθμητική έκφραση

4. α ← α + 2 Δ) Μεταβλητή

5. α + β / 2 Ε) Εντολή εξόδου

6. Διάβασε Σ ΣΤ) Εντολή εισόδου

Ζ) Λογική έκφραση

Η) Εντολή εκχώρησης τιμής

Ασκήσεις στις Αλγοριθμικές δομές Δομή Ακολουθίας

Άσκηση 1. Ποιά από τα κάτω αλφαριθμητικά είναι αποδεκτά ως ονόματα μεταβλητών σε έναν

αλγόριθμο

i. Τιμή Αποδεκτό

ii. Τιμή-1 Μη αποδεκτός ο χαρακτήρας "-", είναι το σύμβολο της αφαίρεσης

iii. Τιμή_2 Αποδεκτό

iv. Χασρτοπσ Αποδεκτό, ο αλγόριθμος δεν ενδιαφέρεται για την ορθογραφία

v. Τιμή.δ Μη αποδεκτός ο χαρακτήρας ".", χρησιμοποιείται στους δεκαδικούς αριθμούς

vi. τ Αποδεκτό

Άσκηση 2. Να κρίνετε για την ορθότητά τους τις παρακάτω εντολές εκχώρησης τιμής

i. τιμή ← "αρκετά" Σωστή

ii. τιμή ← τιμή + 3 Σωστή, αν η μεταβλητή τιμή είναι αριθμητική

iii. α + τιμή ← 6 Λάθος

iv. τιμή ← ασ ← 6 Λάθος

v. τιμή ← α*β+5 Σωστή, αν οι μεταβλητές α, β και τιμή είναι αριθμητικές

vi. τιμή ← "δ" + 5 Λάθος

vii. τιμή ← "τιμή" + 5 Λάθος, Το "τιμή" δεν είναι μεταβλητή αλλά κείμενο

viii. 2 * τιμή ← 6 Λάθος

Page 9: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 9 από 100

Άσκηση 3. Πώς θα διατυπωθεί σε εντολή εκχώρησης τιμής, η κάθε μία από τις παρακάτω

αλγεβρικές παραστάσεις

i.

A ← (5 * x ^ 3 + 7 * x ^ 2 + 8) / (8 * x - 6)

ii.

B ← 6 * x ^ 4 - z * ((7 * y + 6)/(2 * (x + 3))- 2) +

(9 - y) ^ 3

Άσκηση 4. Ποιο είναι το αποτέλεσμα από την εκτέλεση των παρακάτω πράξεων

i. 14 mod 5 – 25 mod 8 = 4 – 1 = 3

ii.3 * (3 mod 2) + 4 div (5 mod 3) = 3 * 1 + 4 div 2 = 3 + 2 = 5

iii. 13 mod (27 div 4) = 13 mod 6 = 1

iv. 2^3 + 3 * (27 mod (25 mod 7)) = 8 + 3 * (27 mod 4) = 8 + 3 * 3 = 8 + 9 = 17

v. 13/2 – 3 mod 2 – 3 div 2 = 6.5 – 1 – 1 = 4.5

παρατήρηση: το σχολικό βιβλίο δεν ορίζει την ιεραρχία σε σχέση με τους τελεστές mod, div και τις

κλασικές πράξεις

Άσκηση 5. Δίνεται ο παρακάτω αλγόριθμος. Να παρουσιαστεί ο πίνακας τιμών και οι τιμές που

θα εκτυπωθούν

Αλγόριθμος Πίνακας_Τιμών2

X ← 3

Y ← X ^ 3 - 4

Z ← Y div X

Εκτύπωσε Y, Z, X

X ← (X + Z) mod Y

Y ← (Y + Z) div X

Z ← X * Y - Z ^ 2

Εκτύπωσε Y, Z, X

Τέλος Πίνακας_Τιμών2

Λύση

X : 3 10

Y : 23 3

Z : 7 -19

Θα εκτυπωθούν οι τιμές 23, 7, 3 και 3, -19, 10

Άσκηση 6. Δίνεται το παρακάτω διάγραμμα ροής. Να γραφεί σε μορφή ψευδοκώδικα. Ποιός

είναι ο πίνακας τιμών αν από το χρήστη εισαχθούν οι τιμές α=5 και β=-2;

Page 10: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 10 από 100

Λύση

Αλγόριθμος Μετατροπή

Διάβασε α, β

Χ ← α mod 2

Y ← 2 * α + β ^ 3

Χ ← Y * X

Y ← (Y div X) ^ 2

Εκτύπωσε Χ, Υ

Τέλος Μετατροπή

Για τον πίνακα τιμών τοποθετούμε σε μια στήλη όλες τις μεταβλητές του αλγορίθμου και εκτελούμε

σειριακά τις εντολές και τροποποιούμε την αντίστοιχη μεταβλητή

Χ : 1 2

Υ : 2 1

Θα εκτυπωθεί το ζεύγος τιμών 2, 1

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

άθροισμα, το γινόμενο και το μέσο όρο τους

Λύση

Αλγόριθμος Υπολογισμοί

Διάβασε α, β, γ

άθροισμα ← α + β + γ

γινόμενο ← α * β * γ

μέσος_όρος ← (α + β + γ) / 3 ! θα μπορούσε να είναι και άθροισμα / 3

Εκτύπωσε "Το άθροισμα είναι ", άθροισμα

Εκτύπωσε "Το γινόμενο είναι ", γινόμενο

Εκτύπωσε "Ο μέσος όρος είναι ", μέσος_όρος

Τέλος Υπολογισμοί

Άσκηση 7Α. Να αναπτυχθεί αλγόριθμος στον οποίο θα δίνονται τιμές σε δύο μεταβλητές και

θα γίνεται αντιμετάθεση των τιμών των μεταβλητών αυτών.

Λύση

Αλγόριθμος Αντιμετάθεση

Page 11: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 11 από 100

Διάβασε α, β

προσωρινήα

αβ

βπροσωρινή

Τέλος Αντιμετάθεση

Άσκηση 8. Να αναπτυχθεί αλγόριθμος που θα διαβάζει ένα χρηματικό ποσό σε δραχμές και θα

υπολογίζει και θα εκτυπώνει το αντίστοιχο ποσό σε ευρώ

Άσκηση 9. Να αναπτυχθεί αλγόριθμος που θα διαβάζει μια γωνία σε μοίρες και θα εκτυπώνει

τη την τιμή της σε ακτίνια (rad). Ισχύει πως μια πλήρης γωνία 360 μοιρών είναι 2π ακτίνια

Άσκηση 10. Στην αλυσίδα καταστημάτων MakroX markets οι τιμές των προϊόντων στις

ετικέτες αναγράφονται χωρίς το ΦΠΑ. Να αναπτυχθεί ο αλγόριθμος που εκτελεί η ταμειακή

μηχανή που θα διαβάζει την τιμή πληρωμής (χωρίς ΦΠΑ) και το ποσό που έδωσε ο πελάτης

και θα υπολογίζει το πληρωτέο ποσό και τα ρέστα που δικαιούται ο πελάτης (συντελεστής ΦΠΑ

18%)

Λύση

Αλγόριθμος Ταμειακή_Μηχανή

Διάβασε τιμή

Πληρωτέο_Ποσό ← τιμή + 0.18 * τιμή ! Θα μπορούσε να είναι και 1.18 * τιμή

Διάβασε Χαρτονόμισμα ! Θεωρούμε οτι Χαρτονόμισμα > Πληρωτέο_Ποσό

Ρέστα ← Χαρτονόμισμα - Πληρωτέο_Ποσό

Εκτύπωσε "Το πληρωτέο ποσό είναι ", Πληρωτέο_Ποσό, " ενώ υπάρχουν και ρέστα ", Ρέστα

Τέλος Ταμειακή_Μηχανή

Άσκηση 11. Να αναπτυχθεί αλγόριθμος που θα διαβάζει το όνομα ενός μαθητή της Γ' Λυκείου,

τους βαθμούς του στα δυο τετράμηνα καθώς και τον γραπτό του βαθμό στις πανελλήνιες

εξετάσεις και να υπολογίζει τον βαθμός πρόσβασης του μαθητή αυτού στο συγκεκριμένο μάθημα

(Σημείωση: ο βαθμός πρόσβασης υπολογίζεται από την πράξη 70% * γραπτός βαθμός και 30%

* προφορικός βαθμός, όπου ο προφορικός βαθμός είναι ο μέσος όρος των βαθμών στα δυο

τετράμηνα)

Άσκηση 12. Να αναπτυχθεί αλγόριθμος ο οποίος θα διαβάζει έναν θετικό αριθμό x και θα

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

Λύση

Αλγόριθμος ΣυνάρτησηFx

Διάβασε Χ ! Χ > 0

Fx ← (X - 4) / (X + 1) ^ 3

Εκτύπωσε "Η τιμή της συνάρτησης είναι", Fx

Τέλος ΣυνάρτησηFx

Άσκηση 13. Η εταιρεία κινητής τηλεφωνίας CityTel παρέχει στους συνδρομητές της λογότυπα

και μελωδίες για τα κινητά τους. Υπάρχουν δύο εναλλακτικές προσφορές:

α. Εγγραφή στο CityTel club, με πάγιο μηνιαίο κόστος 1.40 €, και επιπλέον χρέωση 0.23 €

για κάθε λογότυπο ή μελωδία που καταβιβάζεται στο κινητό του συνδρομητή

β. Χρέωση 0,53 € για κάθε λογότυπο ή μελωδία που ζητείται

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

συνδρομητής καταβίβασε στο κινητό του και να εκτυπώνει τη χρέωση και με τις δυο παραπάνω

προσφορές

Λύση

Αλγόριθμος CityTel

Διάβασε logos, melodies

κόστος1 ← 1.40 + 0.23 * (logos + melodies)

κόστος2 ← 0.53 * (logos + melodies)

Page 12: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 12 από 100

Εκτύπωσε "Σύμφωνα με την πρώτη προσφορά θα πληρώσετε ", κόστος1

Εκτύπωσε "Σύμφωνα με την δεύτερη προσφορά θα πληρώσετε ", κόστος2

Τέλος CityTel

Άσκηση 14. Η εταιρεία κινητής τηλεφωνίας CityTel αποφάσισε να δώσει δωρεά σε ιδρύματα

ποσοστό 60% επί των εσόδων της από την αποστολή γραπτών μηνυμάτων μέσω του δικτύου

της τις διακοπές των Χριστουγέννων, το κόστος κάθε μηνύματος είναι 0.072 €. Να

αναπτύξετε αλγόριθμο που θα διαβάζει το πλήθος των μηνυμάτων που στάλθηκαν τα

Χριστούγεννα και να εκτυπώνει το ποσό που θα δοθούν στα ιδρύματα και τα κέρδη της

εταιρείας

Άσκηση 15. Δίνεται ο παρακάτω αλγόριθμος. Να παρουσιαστεί ο πίνακας τιμών και οι τιμές

που θα εκτυπωθούν. Να δημιουργήσετε και το διάγραμμα ροής

Αλγόριθμος Πίνακας_Τιμών1

κ ← 3

λ ← κ + 2

μ ← λ ^ (κ - 1) -3

κ ← μ div 3

Εκτύπωσε κ, λ, μ

μ ← λ ^ 3

λ ← λ + 2

Εκτύπωσε μ, κ, λ

Τέλος Πίνακας_Τιμών3

Άσκηση 16. Να αναπτυχθεί αλγόριθμος ο οποίος θα διαβάζει έναν θετικό αριθμό x και θα

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

Άσκηση 17. Ο μαθηματικός τύπος που υπολογίζει το ύψος ενός ανθρώπου σε σχέση με το

βάρος είναι: 'Υψος = (1.05 * Βάρος + 50) * 1.2 + 11. Να αναπτύξετε αλγόριθμο που θα

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

Άσκηση 18. Κάθε εργαζόμενος της εταιρείας ΧΥΖ πληρώνεται με ημερομίσθιο 55 €, ενώ ο

μισθός του υπόκειται σε κρατήσεις 12%. Να αναπτυχθεί αλγόριθμος που θα διαβάζει το

ονοματεπώνυμο ενός εργαζομένου της εταιρεία ΧΥΖ, τις ημέρες που εργάστηκε τον περασμένο

μήνα και να εκτυπώνει τις καθαρές αποδοχές του καθώς και το ποσό των κρατήσεων

Άσκηση 19. Σύμφωνα με την νέα φορολογική νομοθεσία η φορολόγηση των μικρομεσαίων

εταιρειών είναι 25% επί των ετήσιων μικτών κερδών. Να αναπτύξετε αλγόριθμο που θα

διαβάζει τα μικτά κέρδη μιας εταιρείας καθώς και τα έξοδα και να εκτυπώνει τα καθαρά κέρδη

για την τρέχουσα χρονιά

Άσκηση 20. Τέσσερις φίλοι αποφάσισαν να καταθέσουν από κοινού ένα δελτίο στοιχήματος.

Αποφάσισαν τα ενδεχόμενα κέρδη να μοιραστούν με βάση τη συμμετοχή τους στην πληρωμή του

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

και το ποσό που πλήρωσε κάθε ένας από τους τέσσερις και να εκτυπώνει το κέρδος που

αναλογεί στον καθένα

Λύση

Αλγόριθμος Δελτίο_Στοιχήματος

Διάβασε κέρδη

Διάβασε συμμετοχή_Α, συμμετοχή_Β, συμμετοχή_Γ, συμμετοχή_Δ

Συνολικά_δόθηκαν ← συμμετοχή_Α + συμμετοχή_Β + συμμετοχή_Γ + συμμετοχή_Δ

ποσό_Α ← κέρδη * (συμμετοχή_Α / Συνολικά_δόθηκαν)

ποσό_Β ← κέρδη * (συμμετοχή_Β / Συνολικά_δόθηκαν)

ποσό_Γ ← κέρδη * (συμμετοχή_Γ / Συνολικά_δόθηκαν)

ποσό_Δ ← κέρδη * (συμμετοχή_Δ / Συνολικά_δόθηκαν)

Page 13: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 13 από 100

Εκτύπωσε "Το ποσό που θα πάρει ο πρώτος φίλος είναι ", ποσό_Α

Εκτύπωσε "Το ποσό που θα πάρει ο δεύτερος φίλος είναι ", ποσό_Β

Εκτύπωσε "Το ποσό που θα πάρει ο τρίτος φίλος είναι ", ποσό_Γ

Εκτύπωσε "Το ποσό που θα πάρει ο τέταρτος φίλος είναι ", ποσό_Δ

Τέλος Δελτίο_Στοιχήματος

Άσκηση 21. Να αναπτυχθεί αλγόριθμος που θα διαβάζει έναν τριψήφιο αριθμό και θα

επιστρέφει το άθροισμα των ψηφίων του (για παράδειγμα για τον αριθμό 523 θα ισχύει 5 + 2

+ 3 = 10)

Λύση

Για να απομονώσουμε τα 3 ψηφία θα χρησιμοποιήσουμε τον τελεστή div. Θα διαιρέσουμε τον αριθμό με

το 100, 10

Αλγόριθμος Τριψήφιος

Διάβασε αριθμός

εκατοντάδες ← αριθμός div 100

βοηθητική ← αριθμός mod 100

δεκάδες ← βοηθητική div 10

μονάδες ← βοηθητική mod 10

άθροισμα ← εκατοντάδες + δεκάδες + μονάδες

Εκτύπωσε "Το άθροισμα είναι = ", άθροισμα

Τέλος Τριψήφιος

Άσκηση 22. Μια μεταφορική εταιρεία έχει αναλάβει να μεταφέρει μηχανήματα. Τα containers

της εταιρείας έχουν χωρητικότητα 100, 50, 10, 5 και 1 τεμάχια. Να αναπτυχθεί αλγόριθμος

που θα διαβάζει τον αριθμό των μηχανημάτων που πρέπει να μεταφερθούν και να εκτυπώνει

πόσα containers από κάθε είδος πρέπει να χρησιμοποιηθούν

Άσκηση 23. Το Ενιαίο Λύκειο Χιλιομοδίου Κορινθίας αποτελείται από 6 τμήματα γενικής

παιδείας - δύο για κάθε τάξη. Να αναπτυχθεί ο αλγόριθμος που θα διαβάζει τον αριθμό των

αγοριών και των κοριτσιών ανά τμήμα και θα υπολογίζει και θα εκτυπώνει:

i. Το πλήθος των μαθητών ανά τάξη και το πλήθος των μαθητών του σχολείου.

ii. Το πλήθος των αγοριών και το πλήθος των κοριτσιών του σχολείου

iii. Το ποσοστό των αγοριών και κοριτσιών επί του συνόλου

Λύση

Αλγόριθμος Στατιστικά_Λυκείου_Χιλιομοδίου

Διάβασε Α1_αγόρια, Α1_κορίτσια, Α2_αγόρια, Α2_κορίτσια

Διάβασε Β1_αγόρια, Β1_κορίτσια, Β2_αγόρια, Β2_κορίτσια

Διάβασε Γ1_αγόρια, Γ1_κορίτσια, Γ2_αγόρια, Γ2_κορίτσια

! ερώτημα i

Α_τάξη ← Α1_αγόρια + Α1_κορίτσια + Α2_αγόρια + Α2_κορίτσια

Β_τάξη ← Β1_αγόρια + Β1_κορίτσια + Β2_αγόρια + Β2_κορίτσια

Γ_τάξη ← Γ1_αγόρια + Γ1_κορίτσια + Γ2_αγόρια + Γ2_κορίτσια

σχολείο ← Α_τάξη + Β_τάξη + Γ_τάξη

Εκτύπωσε "Το πλήθος των μαθητών της Α τάξης είναι ", Α_τάξη

Εκτύπωσε "Το πλήθος των μαθητών της Β τάξης είναι ", Β_τάξη

Εκτύπωσε "Το πλήθος των μαθητών της Γ τάξης είναι ", Γ_τάξη

Εκτύπωσε "Το πλήθος των μαθητών του σχολείου είναι ", σχολείο

! τέλος ερώτημα i

! ερώτημα ii

αγόρια ← Α1_αγόρια + Α2_αγόρια + Β1_αγόρια + Β2_αγόρια + Γ1_αγόρια + Γ2_αγόρια

κορίτσια ← Α1_κορίτσια + Α2_κορίτσια + Β1_κορίτσια + Β2_κορίτσια + Γ1_κορίτσια + Γ2_κορίτσια

Εκτύπωσε "Το πλήθος των αγοριών του σχολείου είναι ", αγόρια

Εκτύπωσε "Το πλήθος των κοριτσιών του σχολείου είναι ", κορίτσια

! τέλος ερώτημα ii

ποσοστό_αγοριών ← 100 * (αγόρια / σχολείο) ! ερώτημα iii

ποσοστό_κοριτσιών ← 100 * (κορίτσια / σχολείο)

Page 14: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 14 από 100

Εκτύπωσε "Το ποσοστό των αγοριών στο σχολείο είναι ", ποσοστό_αγοριών

Εκτύπωσε "Το ποσοστό των κοριτσιών στο σχολείου είναι ", ποσοστό_κοριτσιών

Τέλος Στατιστικά_Λυκείου_Χιλιομοδίου

Άσκηση 24. Η ημερήσια αποζημίωση ενός εργαζόμενου είναι 35 €. Το ποσοστό των κρατήσεων

για ασφάλεια είναι 11% και για φόρο 8.5%. Να αναπτυχθεί αλγόριθμος που θα διαβάζει το

όνομα ενός εργαζομένου και τις ημέρες απασχόλησής του για τον τρέχοντα μήνα και θα

εμφανίζει τις καθαρές αποδοχές για τον εργαζόμενο αυτό

Δομή επιλογής Άσκηση 1. Να συμπληρώσετε τον παρακάτω πίνακα με τις τιμές αληθής - ψευδής

α

β

γ

(α mod 2 = 0) ή (β

<= 3)

(α <= β) και (β

>= γ)

όχι (α > β) ή (γ

>=2)

(γ >= α) και (β div

2 = 1)

2 -1 0

-3 1 -

4

Λύση

Α β γ (α mod 2 = 0) ή (β

<= 3)

(α <= β) και (β >=

γ)

όχι (α > β) ή (γ

>=2)

(γ >= α) και (β div 2

= 1)

2 -1 0 αληθής ψευδής ψευδής ψευδής

-3 1 -4 αληθής αληθής αληθής ψευδής

Άσκηση 2. Δίνεται ο παρακάτω αλγόριθμος. Ποιός είναι ο πίνακας τιμών;

Αλγόριθμος Πίνακας_Τιμών1

Χ ← 2

Υ ← Χ ^ 2 - 1

Ζ ← 2 * Χ + Υ - 1

Αν (Χ > Υ) τότε

Υ ← Ζ mod X

Z ← X ^ 2

Αλλιώς

X ← Ζ mod Y

Z ← Y ^ 2

Τέλος_Αν

Εκτύπωσε X, Y, Z

Τέλος Πίνακας_Τιμών1

Λύση

Για τον πίνακα τιμών τοποθετούμε σε μια στήλη όλες τις μεταβλητές του αλγορίθμου και εκτελούμε

σειριακά τις εντολές και τροποποιούμε την αντίστοιχη μεταβλητή

Χ : 2 0

Υ : 3

Z : 6 9

Θα εκτυπωθούν οι τιμές 0 3 9

Άσκηση 3. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τί θα εκτυπωθεί;

Αλγόριθμος Πίνακας_Τιμών2

α ← 3

β ← 1

γ ← 5

Αν (α mod 2 = 1) ή (β >= 2) τότε

γ ← γ + 2

Αν (γ < β) τότε

α ← α ^ 3

Αλλιώς

Page 15: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 15 από 100

β ← 4 * β

Τέλος_αν

Τέλος_αν

α ← α mod β

β ← β mod γ

γ ← γ mod α

Εκτύπωσε α, β, γ

Τέλος Πίνακας_Τιμών2

Άσκηση 4. Να σχηματίσετε το διάγραμμα ροής του παρακάτω αλγορίθμου

Αλγόριθμος Διάγραμμα_Ροής2

Διάβασε τιμή

Αν (τιμή <= 0) τότε

α_τ ← (-1) * τιμή

Αλλιώς

α_τ ← τιμή

Τέλος_Αν

Εκτύπωσε α_τ

Τέλος Διάγραμμα_Ροής2

Λύση

Άσκηση 5. Να σχηματίσετε το διάγραμμα ροής του παρακάτω αλγορίθμου

Αλγόριθμος Διάγραμμα_Ροής3

Διάβασε α

Αν (α <= 2) τότε

τιμή ← 15

Αλλιώς_αν (α <= 10) τότε

τιμή ← 11

Αλλιώς_αν (α <= 20) τότε

τιμή ← 9

Αλλιώς

τιμή ← 5

Τέλος_αν

Εκτύπωσε τιμή

Τέλος Διάγραμμα_Ροής3

Λύση

Page 16: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 16 από 100

Άσκηση 6. Να αναπτυχθεί αλγόριθμος που θα διαβάζει έναν αριθμό που αντιστοιχεί στο βαθμό

ενός μαθητή και θα εκτυπώνει μήνυμα αν είναι αποδεκτός (εντός των ορίων [0, 20]) ή όχι

Λύση

Αλγόριθμος Αποδοχή

Διάβασε αριθμός

Αν αριθμός >= 0 και αριθμός <= 20 τότε

Εκτύπωσε "Ο αριθμός είναι αποδεκτός"

Αλλιώς

Εκτύπωσε "Ο αριθμός δεν είναι αποδεκτός"

Τέλος_Αν

Τέλος Αποδοχή

Άσκηση 7. Να αναπτυχθεί αλγόριθμος ο οποίος θα διαβάζει έναν αριθμό x και θα υπολογίζει

και θα εκτυπώνει την τιμή της ακόλουθης συνάρτησης

Λύση

Προσοχή στη συγκεκριμένη άσκηση πρέπει να δοθεί στο ότι η δοθείσα συνάρτηση δεν ορίζεται για την

τιμή 1. Έτσι, πρέπει να γίνει έλεγχος, ώστε αν δοθεί από τον χρήστη η τιμή 1, να εκτυπώνεται το

μήνυμα "Η συνάρτηση δεν ορίζεται για x = 1". Μ' αυτόν τον τρόπο φροντίζουμε να ικανοποιείται το

κριτήριο της καθοριστικότητας

Αλγόριθμος ΣυνάρτησηFx

Διάβασε Χ

Αν Χ = 1 τότε

Εκτύπωσε "Η συνάρτηση δεν ορίζεται για x = 1"

Αλλιώς

Fx ← (3 * X) / (X - 1) ^ 2

Εκτύπωσε "Η τιμή της συνάρτησης είναι ", Fx

Page 17: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 17 από 100

Τέλος_Αν

Τέλος ΣυνάρτησηFx

Άσκηση 8. Να αναπτυχθεί αλγόριθμος ο οποίος θα διαβάζει έναν αριθμό x και θα υπολογίζει

και θα εκτυπώνει την τιμή της ακόλουθης συνάρτησης

Άσκηση 9. Να αναπτυχθεί αλγόριθμος που θα διαβάζει έναν ακέραιο αριθμό και αν είναι

τριψήφιος να αντιστρέφει τα ψηφία του, για παράδειγμα ο αριθμός 128 θα γίνει 821

Λύση

Αλγόριθμος Αντιστροφή_Τριψήφιου

Διάβασε αριθμός

Αν (αριθμός >= 100) και (αριθμός <= 999) τότε ! αλλιώς δεν είναι τριψήφιος

εκατοντάδες ← αριθμός div 100

βοηθητική ← αριθμός mod 100

δεκάδες ← βοηθητική div 10

μονάδες ← βοηθητική mod 10

νέος_αριθμός ← μονάδες * 100 + δεκάδες * 10 + εκατοντάδες

Εκτύπωσε "Ο νέος αριθμός είναι ", νέος_αριθμός

Τέλος_Αν

Τέλος Αντιστροφή_Τριψήφιου

Άσκηση 10. Να αναπτυχθεί αλγόριθμος που θα διαβάζει τις δικαιολογημένες και τις

αδικαιολόγητες απουσίες ενός μαθητή και να αποφαίνεται αν ο μαθητής απορρίπτεται λόγω

απουσιών ή παραπέμπει σε έλεγχο της βαθμολογίας (σημειώνεται ότι τα όρια των απουσιών

είναι 64 δικαιολογημένες και 50 αδικαιολόγητες)

Λύση

Αλγόριθμος Έλεγχος_απουσιών

Διάβασε δικαιολογημένες, αδικαιολόγητες

Αν (δικαιολογημένες > 64) ή (αδικαιολόγητες > 50) τότε

Εκτύπωσε "Ο μαθητής απορρίπτεται"

Αλλιώς

Εκτύπωσε "Ο μαθητής δεν έχει πρόβλημα απουσιών"

Τέλος_αν

Τέλος Έλεγχος_απουσιών

Άσκηση 11. Ο κλιματισμός στα γραφεία της εταιρείας ΧΣΧ διαθέτει 3 αισθητήρες και

ενεργοποιείται μόνο αν ο μέσος όρος των θερμοκρασιών στα 3 σημεία είναι μικρότερος από 8oC

ή αν σε κάποιο από τα τρία σημεία είναι μικρότερο από 4 oC. Να αναπτυχθεί αλγόριθμος που

θα εκτυπώνει αν πρέπει να ενεργοποιηθεί ο κλιματισμός ή όχι

Άσκηση 12. Να αναπτυχθεί αλγόριθμος ο οποίος θα διαβάζει το μέσο όρο ενός μαθητή κατά

την περασμένη σχολική χρονιά και θα εκτυπώνει το αντίστοιχο μήνυμα σύμφωνα με τα

ακόλουθα: Αν ο βαθμός είναι μικρότερος από 9,5 ο μαθητής απορρίπτεται στο μάθημα, αν

είναι μεγαλύτερος από 9,5 και μικρότερος από 13 τότε ο χαρακτηρισμός του μαθητή είναι

"Σχεδόν καλά", αν είναι μεγαλύτερος του 13 έως 16 ο χαρακτηρισμός είναι "Καλά", αν είναι

μικρότερος του 18 "Πολύ καλά", ενώ τέλος αν ο μέσος όρος είναι μεγαλύτερος του 18 ο

χαρακτηρισμός είναι "Άριστα"

Λύση

Σημειώνεται ότι στα πλαίσια του αλγορίθμου θα πραγματοποιήσουμε έλεγχο και για την περίπτωση ο

Page 18: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 18 από 100

χρήστης να έχει εισάγει κάποιον αριθμό εκτός των ορίων [0, 20] και σε αυτήν την περίπτωση να

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

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

εισόδου.

Για την υλοποίηση του αλγορίθμου και δεδομένου ότι πρέπει να ελεγχθούν ουσιαστικά 6 περιπτώσεις η

δομή επιλογής δεν αρκεί. Πρέπει να χρησιμοποιήσουμε την δομή πολλαπλής επιλογής. Θα υλοποιήσουμε

τον αλγόριθμο και με τις δομές πολλαπλής επιλογής που έχουν παρουσιαστεί

Αλγόριθμος Χαρακτηρισμός_ΜΟ

Διάβασε μέσος_όρος

Αν μέσος_όρος < 9.5 τότε

Εκτύπωσε "Ο μαθητής απορρίπτεται"

Αλλιώς_αν μέσος_όρος < 13 τότε ! εννοείται σε αυτό το σημείο οτι μέσος_όρος >= 9,5

Εκτύπωσε "Σχεδόν καλά"

Αλλιώς_αν μέσος_όρος < 16 τότε ! εννοείται σε αυτό το σημείο οτι μέσος_όρος >= 13

Εκτύπωσε "Καλά"

Αλλιώς_αν μέσος_όρος < 18 τότε ! εννοείται σε αυτό το σημείο οτι μέσος_όρος >= 16

Εκτύπωσε "Πολύ καλά"

Αλλιώς_αν μέσος_όρος <= 20 τότε ! εννοείται σε αυτό το σημείο οτι μέσος_όρος >= 18

Εκτύπωσε "Άριστα"

Αλλιώς ! μέσος_όρος > 20

Εκτύπωσε "Λάθος καταχώρηση δεδομένων"

Τέλος_αν

Τέλος Χαρακτηρισμός_ΜΟ

Άσκηση 13. Σύμφωνα με το Διατραπεζικό Σύστημα Συναλλαγών ΔΙΑΣ, κάποιος καταθέτης

μπορεί να πραγματοποιήσει ανάληψη από κάποια άλλη τράπεζα πέραν αυτής που συνεργάζεται

από ένα μηχάνημα ΑΤΜ. Για την υπηρεσία αυτή υπάρχει χρέωση η οποία ισούται με το ένα

εκατοστό του ποσού της ανάληψης. Η χρέωση αυτή δεν πρέπει να είναι μικρότερη από 1 €

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

υπόλοιπο του λογαριασμού του πελάτη, να διαβάζει το ποσό της ανάληψης από ένα ΑΤΜ του

ΔΙΑΣ, να ελέγχει αν μπορεί να πραγματοποιηθεί η συναλλαγή και να εκτυπώνει το υπόλοιπο

του λογαριασμού και τη χρέωση που θα έχει ο πελάτης σύμφωνα με το ΔΙΑΣ

Λύση

Για να μπορεί να πραγματοποιηθεί η συναλλαγή πρέπει το διαθέσιμο υπόλοιπο να υπερβαίνει το ποσό

της ανάληψης καθώς και το ποσό της χρέωσης απο το ΔΙΑΣ

Αλγόριθμος ΔΙΑΣ

Δεδομένα // κωδικός_πελάτη, διαθέσιμα //

Διάβασε ανάληψη

χρέωση ← 0.01 * ανάληψη

Αν χρέωση < 1 τότε

χρέωση ← 1

Αλλιώς_αν χρέωση > 3 Τότε

χρέωση ← 3

Τέλος_Αν

αφαιρούμενο_ποσό ← ανάληψη + χρέωση

Αν διαθέσιμα >= αφαιρούμενο_ποσό τότε

διαθέσιμα ← διαθέσιμα - αφαιρούμενο_ποσό

Εκτύπωσε "Το νέο διαθέσιμο υπόλοιπο είναι ", διαθέσιμα

Εκτύπωσε "Η χρέωση από το σύστημα ΔΙΑΣ είναι ", χρέωση

Αλλιώς

Εκτύπωσε "Το διαθέσιμο υπόλοιπο δεν επαρκεί ..."

Τέλος_αν

Αποτελέσματα // κωδικός_πελάτη, διαθέσιμα //

Page 19: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 19 από 100

Τέλος ΔΙΑΣ

Άσκηση 14. Μια ιδιωτική εταιρεία αποφάσισε να εφαρμόσει ενιαία πολιτική στη μισθοδοσία του

προσωπικού της. Έτσι, ο βασικός μισθός είναι 1200 €. Για τους αποφοίτους ΑΕΙ/ΤΕΙ

υπάρχει επίδομα 20% ενώ αν κάποιος διαθέτει μεταπτυχιακό τίτλο τότε το επίδομα σπουδών

γίνεται 29%. Επιπρόσθετα, κάθε υπάλληλος λαμβάνει χρονοεπίδομα 15% επί του βασικού

μισθού αν βρίσκεται μέχρι και 5 χρόνια στην εταιρεία, 25% αν βρίσκεται μέχρι και 15 χρόνια

ενώ 35% αν εργάζεται περισσότερα από 15 χρόνια στην εταιρεία. Να αναπτύξετε αλγόριθμο

που θα διαβάζει το όνομα του μισθωτού, το επίπεδο σπουδών (1. βασική εκπαίδευση, 2.

ΑΕΙ/ΤΕΙ και 3. Μεταπτυχιακές σπουδές) καθώς και τα έτη υπηρεσίας και στη συνέχεια να

υπολογίζει και να εκτυπώνει τις μηνιαίες αποδοχές του

Άσκηση 15. Η εταιρεία κινητής τηλεφωνίας CityTel παρέχει στους συνδρομητές της λογότυπα

και μελωδίες για τα κινητά τους Για να καταβιβάσει κάποιος συνδρομητής στο κινητό του κάτι

από τα παραπάνω πρέπει να εγγραφεί στο CityTel club, με πάγιο μηνιαίο κόστος 0.90 €, και

επιπλέον χρέωση 0.25 € για κάθε λογότυπα και 0.15 € για κάθε μελωδία που καταβιβάζετε

στο κινητό του συνδρομητή. Να γραφεί αλγόριθμος που με δεδομένο το διαθέσιμο υπόλοιπο

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

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

διαθέσιμο υπόλοιπο του το επιτρέπει να υπολογίζει το νέο υπόλοιπο

Λύση

Αλγόριθμος CityTel_Club1

Δεδομένα // διαθέσιμο_υπόλοιπο //

Διάβασε logos, melodies

κόστος ← 0.90 + 0.25 * logos + 0.15 * melodies

Αν διαθέσιμο_υπόλοιπο < κόστος τότε

Εκτύπωσε "Οι μονάδες δεν επαρκούν, το διαθέσιμο υπόλοιπο είναι ", διαθέσιμο_υπόλοιπο

Αλλιώς

διαθέσιμο_υπόλοιπο ← διαθέσιμο_υπόλοιπο - κόστος

Εκτύπωσε "Τα στοιχεία που ζητήσατε καταβιβάστηκαν επιτυχώς..."

Τέλος_αν

Αποτελέσματα // διαθέσιμο_υπόλοιπο //

Τέλος CityTel_Club1

Άσκηση 16. Η εταιρεία κινητής τηλεφωνίας CityTel παρέχει στους συνδρομητές της υπηρεσίες

αποστολής μηνυμάτων σύμφωνα με τον παρακάτω πίνακα:

Είδος Μήνυμα Τιμή €

1. Απλό sms 0.085

2. Sms με ενσωματωμένο ήχο/εικόνα 0.67

3. Εικονομήνυμα με επιπλέον στοιχεία 0.93

4. Μήνυμα ενσωματωμένο βιντεο 1.25

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

συνδρομητή, θα διαβάζει το είδος του μηνύματος που επιθυμεί ο χρήστης να στείλει και - αν αυτό

αυτό είναι εφικτό - θα επιστρέφει το νέο διαθέσιμο υπόλοιπο του συνδρομητή

Άσκηση 17. Οι τιμές 4 διαφορετικών συσκευασιών γιαουρτιού σε ένα σούπερ μάρκετ

παρουσιάζονται στον επόμενο πίνακα:

Φίρμα Ποσότητα Τιμή €

Αγελαδίτσα αγάπη μου 500 ml 0.79

Φάρμα ΙΙΙ 1.2 lt 1.40

Cows 850 ml 0.95

Να αναπτύξετε αλγόριθμο που θα εμφανίζει ποιο γιαούρτι έχει την πλέον συμφέρουσα τιμή

Λύση

Αλγόριθμος Γιαούρτι

Page 20: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 20 από 100

! αναγωγή στην ίδια μονάδα μέτρησης για σύγκριση: € ανά ml

δείκτης_1 ← 0.79 / 500

δείκτης_2 ← 1.40 / 1200

δείκτης_3 ← 0.95 / 850

Αν δείκτης_1 < δείκτης_2 τότε ! εύρεση ελαχίστου μεταξύ 3 αριθμών

Αν δείκτης_1 < δείκτης_3 τότε

Εκτύπωσε "Νο1 Αγελαδίτσα αγάπη μου"

Αλλιώς ! δείκτης_1 >= δείκτης_3

Εκτύπωσε "Νο3 Cows"

Τέλος_αν

Αλλιώς ! δείκτης_1 >= δείκτης 2

Αν δείκτης_2 < δείκτης_3 τότε

Εκτύπωσε "Νο2 Φάρμα ΙΙΙ"

Αλλιώς ! δείκτης_2 >= δείκτης_3

Εκτύπωσε "Νο3 Cows"

Τέλος_αν

Τέλος_αν

Τέλος Γιαούρτι

Άσκηση 18. Να αναπτυχθεί αλγόριθμος που θα διαβάζει τρεις αριθμούς και θα εκτυπώνει τον

μικρότερο

Λύση

Για την εύρεση του ελαχίστου θα χρησιμοποιήσουμε μια βοηθητική μεταβλητή με όνομα ελάχιστος και

θα εκχωρήσουμε σε αυτήν τον πρώτο αριθμό. Στη συνέχεια θα συγκρίνουμε τη μεταβλητή ελάχιστος με

το τις τιμές των άλλων δυο μεταβλητών. Αν εντοπίσουμε μικρότερη τιμή θα εκχωρήσουμε αυτήν την

τιμή στην βοηθητική μεταβλητή

Αλγόριθμος Ελάχιστος_Μέγιστος

Διάβασε α, β, γ

ελάχιστος ← α

Αν β < ελάχιστος τότε

ελάχιστος ← β

Τέλος_αν

Αν γ < ελάχιστος τότε

ελάχιστος ← γ

Τέλος_αν

Εκτύπωσε "Ο ελάχιστος αριθμός είναι ", ελάχιστος

Τέλος Ελάχιστος_Μέγιστος

Δεύτερος, αλλά πιο επίπονος τρόπος για την εύρεση π.χ. του μεγίστου από 3 αριθμούς παρουσιάζεται

στη συνέχεια. Αντίστοιχα, μπορεί να εντοπιστεί ο ελάχιστος

Αλγόριθμος Μέγιστος_απο_3_εναλλακτικός

Διάβασε α, β, γ

Αν β > α τότε

Αν γ > β τότε

μέγιστος ← γ

Αλλιώς

μέγιστος ← β

Τέλος_αν

Αλλιώς ! β <= α

Αν γ > α τότε

μέγιστος ← γ

Αλλιώς

μέγιστος ← α

Τέλος_αν

Τέλος_αν

Page 21: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 21 από 100

Εκτύπωσε "Ο μέγιστος αριθμός είναι = ", μέγιστος

Τέλος Μέγιστος_απο_3_εναλλακτικός

Άσκηση 19. Το Internet Cafe της γειτονιάς σας έχει την εξής πολιτική χρέωσης: Τα πρώτα

30 λεπτά χρεώνονται 1.45 €, ενώ κάθε επόμενο 30λεπτο χρεώνεται προς 1.10 €. Πρέπει να

επισημανθεί ότι μόλις περάσει έστω και ένα λεπτό χρεώνεται το 30λεπτο. Να αναπτυχθεί

αλγόριθμος που θα διαβάζει το χρόνο (σε λεπτά) που παρέμεινε κάποιος πελάτης στο Internet

Cafe και να εκτυπώνει το λογαριασμό

Λύση

Πρέπει να υπολογιστούν τα μισάωρα που παρέμεινε κάποιος πελάτης στο Internet Cafe. Ας δούμε ένα

παράδειγμα: Αν ο χρόνος παραμονής είναι 260 λεπτά τότε έχει παραμείνει 8 μισάωρα (8 = 260 div 30)

και 20 ακόμη λεπτά (20 = 260 mod 30) που θα χρεωθούν ως ολόκληρο 30λεπτο

Αλγόριθμος Internet_Cafe

Διάβασε χρόνος_ομιλίας ! ο χρόνος ομιλίας είναι σε λεπτά

μισάωρα ← χρόνος_ομιλίας div 30

υπόλοιπο ← χρόνος_ομιλίας mod 30

Αν υπόλοιπο <> 0 τότε

μισάωρα ← μισάωρα + 1

Τέλος_αν

χρέωση ← 1.45 + (μισάωρα - 1) * 1.10 ! αν μισάωρα = 1, ο τύπος μας καλύπτει

Εκτύπωσε "Ο πελάτης ", όνομα, " οφείλει ", χρέωση

Τέλος Internet_Cafe

Άσκηση 20. Έστω η εξίσωση δευτέρου βαθμού αx2+βx+γ=0. Να αναπτύξετε αλγόριθμο που θα

υπολογίζει και θα εκτυπώνει τις πιθανές λύσεις της εξίσωσης

Λύση

Όπως είναι γνωστό, οι τιμές των μεταβλητών α, β και γ θα καθορίσει τις λύσεις της εξισώσεις. Έτσι, αν

0, τότε υπολογίζουμε τη διακρίνουσα Δ= β2-4αγ και αν Δ<0 τότε η εξίσωση δεν έχει πραγματικές

ρίζες, αν Δ=0 μία διπλή ρίζα ενώ αν Δ>0 τότε υπάρχουν δυο ρίζες ρ1, ρ2. Τέλος, αν α = 0, τότε η

εξίσωση γίνεται πρωτοβάθμια

Αλγόριθμος Δευτεροβάθμια_εξίσωση

Δεδομένα // α, β, γ //

Αν α <> 0 τότε

Δ ← β ^ 2 - 4 * α * γ

Αν Δ > 0 τότε

ρίζα_Δ ← ! μπορούμε να γράψουμε και ρίζα(Δ)

x1 ← ((-1) * β + ρίζα_Δ) / (2 * α)

x2 ← ((-1) * β - ρίζα_Δ) / (2 * α)

Εκτύπωσε "Η εξίσωση έχει δύο ρίζες x1 = ", x1, " και x2 = ", x2

Αλλιώς_αν Δ = 0 τότε

x ← ((-1) * β) / (2 * α)

Εκτύπωσε "Η εξίσωση έχει διπλή ρίζα x = ", x

Αλλιώς ! Δ < 0

Εκτύπωσε "Η εξίσωση δεν έχει πραγματικές ρίζες"

Τέλος_αν

Αλλιώς ! α = 0

Αν β = 0 τότε

Αν γ <> 0 τότε

Εκτύπωσε "Η εξίσωση είναι αδύνατη"

Αλλιώς ! γ = 0

Εκτύπωσε "Η εξίσωση είναι αόριστη"

Τέλος_αν

Αλλιώς ! β <> 0

x ← (-1) * γ / β

Page 22: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 22 από 100

Εκτύπωσε "Η εξίσωση έχει λύση την τιμή ", x

Τέλος_αν

Τέλος_αν

Τέλος Δευτεροβάθμια_εξίσωση

Άσκηση 21. Να αναπτυχθεί αλγόριθμος που θα διαβάζει δυο αριθμούς και ένα εκ των

συμβόλων: +, -, *, /, div, mod και θα εκτελεί την αντίστοιχη πράξη εκτυπώνοντας το

αποτέλεσμα

Άσκηση 22. Η εταιρεία καρτοκινητής τηλεφωνίας CityTel CartU προσφέρει σύνδεση στο

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

πραγματοποιείται κάθε 30 δευτερόλεπτα (μια κλήση που διαρκεί 33'' θα στοιχίσει όσο μια των

60''). Το κόστος για κάθε μισό λεπτό είναι 0.09 €, ωστόσο αν μια κλήση διαρκέσει πέραν των

3 λεπτών η χρέωση του επιπλέον χρόνου είναι 0.065 €/30'' κλήσης. Να αναπτυχθεί

αλγόριθμος που θα διαβάζει το όνομα του πελάτη και τη χρονική διάρκεια μιας κλήσης και την

χρέωση της κλήσης αυτής. Σημειώνεται ότι στα παραπάνω ποσά υπάρχει επιβάρυνση ΦΠΑ

18%

Άσκηση 23. Να αναπτυχθεί αλγόριθμος που θα διαβάζει το όνομα ενός μαθητή της Γ' Λυκείου,

τους βαθμούς του στα δυο τετράμηνα καθώς και τον γραπτό του βαθμό στις πανελλήνιες

εξετάσεις και να υπολογίζει τον βαθμό πρόσβασης του μαθητή αυτού στο συγκεκριμένο μάθημα.

Πρέπει να σημειωθεί ότι ο βαθμός πρόσβασης υπολογίζεται από την πράξη 70% * γραπτός

βαθμός και 30% * προφορικός βαθμός, όπου ο προφορικός βαθμός είναι ο μέσος όρος των

βαθμών στα δυο τετράμηνα ενώ υπόκειται σε προσαρμογή αν έχει διαφορά από τον γραπτό

βαθμό μεγαλύτερη του 2

Λύση

Αλγόριθμος Εξετάσεις

Διάβασε Α_τ, Β_τ, γραπτός

προφ_βαθμός ← (Α_τ + Β_τ) / 2

Αν (προφ_βαθμός - γραπτός > 2) τότε ! διόρθωση βαθμού

προφ_βαθμός ← γραπτός + 2

Αλλιώς_αν (γραπτός - προφ_βαθμός > 2) τότε

προφ_βαθμός ← γραπτός – 2

Τέλος_αν

βαθμός_πρόσβασης ← 0.7 * γραπτός + 0.3 * προφ_βαθμός

Εκτύπωσε "Ο βαθμός πρόσβασης είναι ", βαθμός_πρόσβασης

Τέλος Εξετάσεις

Άσκηση 24. Τα ταχυδρομικά τέλη για την ταχυδρομική εταιρεία Courier Hellas υπολογίζονται

ως εξής:

- για φακέλους μικρότερους των 20 γραμμαρίων, 1.20 €

- για φακέλους μικρότερους των 150 γραμμαρίων, 2 €

- για φακέλους μεγαλύτερους των 150 γραμμαρίων, 0.015 € για κάθε γραμμάριο

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

υπολογίζει και θα εκτυπώνει την χρέωση

Λύση

Αλγόριθμος Courier_Hellas

Διάβασε βάρος

Αν (βάρος < 20) τότε

κόστος ← 1.20

Αλλιώς_αν (βάρος < 150) τότε

κόστος ← 2

Αλλιώς

κόστος ← βάρος * 0.015

Τέλος_αν

Εκτύπωσε "Η οφειλή είναι ", κόστος

Τέλος Courier_Hellas

Page 23: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 23 από 100

Άσκηση 25. Σύμφωνα με τον τελευταίο νόμο του Υπουργείου Οικονομικών οι μεγαλοοφειλέτες

μπορούν να προσέλθουν στις κατά τόπους εφορίες και να προβούν σε διακανονισμό για την

πληρωμή των οφειλών τους. Έτσι, αν κάποιος χρωστά περισσότερα από 500.000 € θα έχει

έκπτωση 20%, ενώ διαφορετικά θα έχει έκπτωση 30%. Αν κάποιος πληρώσει μετρητοίς τότε

θα έχει επιπλέον έκπτωση 5% επί του ποσού της οφειλής. Να αναπτυχθεί αλγόριθμος που θα

διαβάζει το όνομα του οφειλέτη, το ποσό της οφειλής του καθώς και το πλήθος των δόσεων

που θα εξοφλήσει (δόσεις = 1 σημαίνει πληρωμή μετρητοίς) και θα εκτυπώνει το ποσό κάθε

δόσης στην εφορία

Λύση

Αλγόριθμος Φορολόγηση

Διάβασε όνομα, οφειλή, δόσεις

Αν οφειλή > 500000 τότε

οφειλή ← οφειλή – 0.20 * οφειλή

Αλλιώς

οφειλή ← οφειλή – 0.30 * οφειλή

Τέλος_αν

Αν δόσεις = 1 τότε

οφειλή ← οφειλή – 0.05 * οφειλή

Εκτύπωσε "Ο φορολογούμενος ", όνομα, " θα πληρώσει ", οφειλή, " σε 1 δόση"

Αλλιώς

ποσό_δόσης ← οφειλή / δόσεις

Εκτύπωσε "Ο φορολογούμενος ", όνομα, " θα πληρώσει ", οφειλή, " με ποσό δόσης ", ποσό_δόσης

Τέλος_αν

Τέλος Φορολόγηση

Άσκηση 26. Η βιοτεχνία κατασκευής ενδυμάτων ΖΧΧ ακολουθεί την εξής τιμολογιακή πολιτική

για την πώληση (χονδρικής) των προϊόντων της: Για παραγγελία άνω των 800 τεμαχίων, 17

€/τεμάχιο, για παραγγελία άνω των 350 τεμαχίων, 21 €/τεμάχιο και για παραγγελία άνω των

150 τεμαχίων, 25 €/τεμάχιο, παραγγελίες μικρότερες των 150 τεμαχίων δεν γίνονται δεκτές.

Να αναπτυχθεί αλγόριθμος που θα διαβάζει το όνομα του πελάτη και των πλήθος των

τεμαχίων της παραγγελίας και θα εκτυπώνει το κόστος της παραγγελίας. Σημειώνεται πως αν

το κόστος της παραγγελίας υπερβεί τα 1500 € πραγματοποιείται έκπτωση 9%

Άσκηση 27. Στο εργοστάσιο ΨΖΧ συνέβη εργατικό ατύχημα με αποτέλεσμα τον σοβαρό

τραυματισμό ενός εργάτη. Οι συνάδελφοί του αποφάσισαν να πραγματοποιήσουν έρανο για τα

έξοδα νοσηλείας του. Αποφάσισαν ο καθ' ένας να προσφέρει ανάλογα με τις αποδοχές του, ως

εξής:

Μηνιαίες απολαβές (σε €) Συντελεστής %

Μέχρι 800 4

801 - 1200 8

1201 και άνω 12

Να αναπτύξετε αλγόριθμο που θα διαβάζει το όνομα και το μισθό ενός εργαζομένου του

εργοστασίου, να υπολογίζει και να εκτυπώνει το ποσό που θα χορηγήσει ως δωρεά καθώς και τον

μισθό που τελικά θα εισπράξει τον τρέχοντα μήνα

Άσκηση 28. Σύμφωνα με το νέο φορολογικό νόμο ο συντελεστής φόρου για τους ιδιώτες

φορολογούμενους απεικονίζεται στον παρακάτω πίνακα:

Εισόδημα (σε €) Συντελεστής %

Μέχρι 15.000 0

15.001 - 30.000 8

30.001 - 45.000 11

45.001 - 60.000 14

Page 24: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 24 από 100

60.000 και άνω 18

Ωστόσο, αν ο φορολογούμενος υποβάλλει την φορολογική του δήλωση από το διαδίκτυο (σύστημα

TAXIS), έχει έκπτωση 10%. Να αναπτύξετε αλγόριθμο που θα διαβάζει το όνομα ενός

φορολογούμενου που υπέβαλε τη δήλωσή του από το διαδίκτυο, το εισόδημα που δήλωσε και θα

υπολογίζει και θα εκτυπώνει το ποσό που πρέπει να εισπραχθεί από την εφορία καθώς και την

έκπτωση

Λύση

Αλγόριθμος TAXIS

Διάβασε όνομα, εισόδημα

Αν εισόδημα < 15000 τότε

φόρος ← 0

Αλλιώς_αν εισόδημα < 30000 τότε

φόρος ← 0 + (εισόδημα - 15000) * 0.08

Αλλιώς_αν εισόδημα < 45000 τότε

φόρος ← 0 + 15000 * 0.08 + (εισόδημα - 30000) * 0.11

Αλλιώς_αν εισόδημα < 60000 τότε

φόρος ← 0 + 15000 * 0.08 + 15000 * 0.11 + (εισόδημα - 45000) * 0.14

Αλλιώς

φόρος ← 0 + 15000 * 0.08 + 15000 * 0.11 + 15000 * 0.14 + (εισόδημα - 60000) * 0.18

Τέλος_αν

έκπτωση ← 0.10 * φόρος

φόρος ← φόρος – έκπτωση

Εκτύπωσε "Η έκπτωση είναι ", έκπτωση

Εκτύπωσε "Ο φόρος που πρέπει να καταβληθεί είναι ", φόρος

Τέλος TAXIS

Άσκηση 29. Γνωστή αλυσίδα ηλεκτρικών ειδών ανακοίνωσε διαγωνισμό που υπόσχεται μεγάλα

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

πιθανότητες έχει να κερδίσει μεγάλα δώρα. Οι πόντοι κάθε συμμετέχοντα εξαρτώνται από το

πλήθος των μηνυμάτων sms που έχει αποστείλει σε ειδικό τηλεφωνικό αριθμό, σύμφωνα με τον

παρακάτω πίνακα (κλιμακωτός υπολογισμός):

Μηνύματα που εστάλησαν Πόντοι

μέχρι και 50 10 πόντοι

περισσότερα από 50 μέχρι και 100 1 πόντος ανά μήνυμα

λιγότερα από 200 2 πόντοι ανά μήνυμα

μέχρι και 500 . 4 πόντοι ανά μήνυμα

περισσότερα από 500 μέχρι και 1000 6 πόντοι ανά μήνυμα

περισσότερα από 1000 διπλασιασμός προηγούμενων πόντων

+ 1 πόντο για κάθε μήνυμα από το πρώτο

Να αναπτύξετε αλγόριθμο που θα διαβάζει το πλήθος των μηνυμάτων που έστειλε κάποιος

διαγωνιζόμενος και να εκτυπώνει τους πόντους με τους οποίους συμμετέχει στην κλήρωση.

Άσκηση 30. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τι θα εμφανιστεί

τελικά αν εισαχθούν οι τιμές: 2, 10, 5

Αλγόριθμος Πίνακας_Τιμών

Διάβασε x, y

x ← Α_Τ (x – y)

y ← Α_Τ (x – y)

Αν y mod x <= 3 τότε

Διάβασε x

y ← y + x div 2

Αλλιώς

Page 25: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 25 από 100

x ← x – y div 5

Διάβασε y

Τέλος_αν

Εμφάνισε x, y

Τέλος Πίνακας_Τιμών

Λύση

x y

Αρχικοποίηση 2 10

8 2

2 mod 8 <= 3, ισχύει 5 4

Θα εμφανιστεί 5, 4

Άσκηση 31. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τι θα εμφανιστεί

τελικά αν εισαχθούν οι τιμές i. 10, 3 , ii. 3, 7 και iii. 4, 4

Αλγόριθμος Πίνακας_Τιμών

Διάβασε κ, λ

Αν κ > λ τότε

ζ ← Α_Τ (λ – κ)

t ← ζ

ζ ← κ

κ ← t

Αλλιώς_αν κ < λ τότε

ζ ← κ mod 3

λ ← Α_M ( Τ_Ρ(κ) )

κ ← (-1) * κ * ζ

Αλλιώς

κ ← κ + 2

λ ← λ – 2

ζ ← κ + λ – 10

Τέλος_αν

Εμφάνισε κ, λ

Τέλος Πίνακας_Τιμών

Άσκηση 32. Να αναπτύξετε αλγόριθμο που θα διαβάζει έναν αριθμό να εκτυπώνει σχετικά με

το αν είναι θετικός διψήφιος ή όχι. Αν είναι να εκτυπώνει το κατάλληλο από τα επόμενο

μηνύματα: «και τα δυο ψηφία είναι άρτιοι», «και τα δυο ψηφία είναι περιττοί», «το πρώτο

ψηφίο είναι άρτιος και το δεύτερο περιττός» και «το πρώτο ψηφίο είναι περιττός και το

δεύτερο άρτιος»

Άσκηση 33. Μεγάλο εμπορικό κέντρο της Τενεούπολης διαθέτει παρκινγκ και χρεώνει

κλιμακωτά τη στάθμευση ως εξής: ολιγόωρη παραμονή στο παρκινγκ δεν χρεώνεται ενώ για

παραμονή από 2 ώρες και άνω κάθε ώρα χρεώνεται 3€ για όλες τις ώρες. Για περισσότερες

από 6 ώρες στάθμευσης η χρέωση είναι 5 € για κάθε επιπλέον ώρα. Τέλος, αν κάποιο όχημα

είναι σταθμευμένο άνω των 10 ωρών τότε υπάρχει 20% προσαύξηση στη χρέωση. Στα

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

διαβάζει το πλήθος των ωρών που ένα όχημα έμεινε σταθμευμένο στο παρκινγκ και θα

εκτυπώνει το ποσό που θα πρέπει να πληρώσει ο οδηγός του, το ποσό που θα εισπράξει το

παρκινγκ καθώς και το ποσό που θα πρέπει να αποδοθεί στο δήμο

Λύση

Αλγόριθμος Εμπορικό

Διάβασε ώρες

Αν ώρες < 2 τότε

χρέωση ← 0

Αλλιώς_αν ώρες <= 6 τότε

χρέωση ← 3 * ώρες

Page 26: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 26 από 100

Αλλιώς

χρέωση ← 3 * 5 + 5 * (ώρες – 6)

Τέλος_αν

Αν ώρες > 10 τότε

χρέωση ← χρέωση + 20/100 * χρέωση

Τέλος_αν

δήμος ← 10/100 * χρέωση

παρκινγκ ← 90/100 * χρέωση

Εκτύπωσε δήμος, παρκινγκ

Τέλος Εμπορικό

Άσκηση 34. Οι εκπτώσεις ενός καταστήματος προσφέρονται ανάλογα με το ποσό των αγορών

που έχουν πραγματοποιηθεί. Έτσι, αν το ποσό των αγορών είναι μεγαλύτερο από 500€, τότε

το ποσό της έκπτωσης είναι 80€ αυξημένο κατά 2% του συνολικού ποσό αγορών που έχει

πραγματοποιήσει ο πελάτης. Διαφορετικά, το ποσό της έκπτωσης είναι 60€. Ωστόσο, αν το

συνολικό ποσό αγορών είναι μικρότερο από 150€ η έκπτωση είναι 2% του συνολικού ποσό

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

και θα εμφανίζει το ποσό της έκπτωσης καθώς και το ποσό που καλείται τελικά να πληρώσει

για τις αγορές του.

Άσκηση 35. Η τράπεζα Τενεούπολης σε μια προσπάθεια χορήγησης νέων πιστωτικών καρτών

ανακοίνωσε ότι σε κάθε κάτοχο πιστωτικής θα επιστρέφεται ανά τρίμηνο, χρηματικό ποσό

ανάλογα με τους πόντους που έχει συγκεντρώσει χρησιμοποιώντας την κάρτα, σύμφωνα με τον

παρακάτω πίνακα (κλιμακωτός υπολογισμός):

Πόντοι από αγορές

(Π)

Ποσό € ανά

πόντο

1000 ≤ Π < 3000 1.20

3000 ≤ Π ≤ 6000 2

6000 < Π 3

Να αναπτύξετε αλγόριθμο που θα διαβάζει τον αριθμό των πόντων ενός συνδρομητή πιστωτικής

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

Άσκηση 36. Τα ταχυδρομικά τέλη για την ταχυδρομική εταιρεία Courier Hellas υπολογίζονται

ως εξής (κλιμακωτός υπολογισμός):

- Για φακέλους 20 γραμμάρια και μικρότερους, α €

- Για φακέλους 150 γραμμάρια και μικρότερους, 1.5*α €

- Για φακέλους μεγαλύτερους από 150 γραμμάρια, α/10 € για κάθε γραμμάριο. (όπου α

θετικός αριθμός). Στις παραπάνω τιμές υπάρχει προσαύξηση 19% ΦΠΑ. Να αναπτύξετε

αλγόριθμο που θα διαβάζει τον αριθμό α, το βάρος ενός φακέλου που θα ταχυδρομηθεί και θα

εμφανίζει τη χρέωση

Άσκηση 37. Στην εταιρεία Αρβίλογλου κάθε εργαζόμενος αμείβεται σύμφωνα με τις μηνιαίες

ώρες εργασίας κλιμακωτά όπως φαίνεται στον παρακάτω πίνακα:

Ώρες εργασίας (Ω) Ωρομίσθιο €

Ω < 30 32

30 ≤ Ω < 100 42

100 ≤ Ω 55

Επιπρόσθετα, ο μισθός προσαυξάνεται σύμφωνα με την προϋπηρεσία κάθε εργαζομένου και

υπολογίζεται επίσης με βαθμιαία αύξηση, όπως φαίνεται στον παρακάτω πίνακα:

Έτη εργασίας Αύξηση ανά έτος (€)

περισσότερα από 15 40

περισσότερα από 9 30

περισσότερα από 3 20

Στις συνολικές μικτές αποδοχές υπάρχουν κρατήσεις της τάξης του 12%. Να αναπτύξετε

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

εμφανίζει το όνομα και τις καθαρές αποδοχές.

Page 27: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 27 από 100

Άσκηση 38. Το Εθνικό Συμβούλιο Απόδημου Ελληνισμού αποφάσισε να τιμήσει με χρηματικό

βραβείο τα παιδιά των ομογενών που εισήχθησαν στα Ελληνικά πανεπιστήμια σύμφωνα με τον

παρακάτω πίνακα:

Τόπος διαμονής

γονέων

Χρηματικό

έπαθλο (€)

Β. Αμερική 1200

Ν. Αμερική 1800

Ευρώπη 1000

Αυστραλία 1800

Υπόλοιπος κόσμος 2500

Να αναπτυχθεί αλγόριθμος που θα διαβάζει τον τόπο διαμονής των γονέων ενός ομογενή φοιτητή

και θα εκτυπώνει το χρηματικό βραβείο που θα λάβει.

Άσκηση 39. Η CityTel αποφάσισε να προσφέρει νέα υπηρεσία: αποστολή τηλεγραφημάτων σε

όλες τις χώρες του κόσμου. Το κοστολόγιο της νέας αυτής υπηρεσίας υπολογίζεται σύμφωνα με

τον ακόλουθο πίνακα κλιμακωτά:

Κείμενο (σε λέξεις) Κόστος (€ ανά λέξη)

1 – 10 0.20

11 – 20 0.23

21 και άνω 0.25

Το παραπάνω ποσό υπόκειται σε ΦΠΑ 18%. Να αναπτυχθεί αλγόριθμος που θα διαβάζει το

πλήθος των λέξεων που ενός τηλεγραφήματος και θα εκτυπώνει το κόστος αποστολής του

Άσκηση 40. Σύμφωνα με τον τελευταίο νόμο του Υπουργείου Οικονομικών οι μεγαλοοφειλέτες

μπορούν να προσέλθουν στις κατά τόπους εφορίες και να προβούν σε διακανονισμό για την

πληρωμή των οφειλών τους. Έτσι, αν κάποιος χρωστά περισσότερα από 500.000 € θα έχει

έκπτωση 20%, ενώ διαφορετικά θα έχει έκπτωση 30%. Αν κάποιος πληρώσει μετρητοίς τότε

θα έχει επιπλέον έκπτωση 5% επί του ποσού της οφειλής. Να αναπτυχθεί αλγόριθμος που θα

διαβάζει το όνομα του οφειλέτη, το ποσό της οφειλής του καθώς και το πλήθος των δόσεων

που θα εξοφλήσει (δόσεις = 1 σημαίνει πληρωμή μετρητοίς) και θα εκτυπώνει το ποσό κάθε

δόσης στην εφορία.

Δομές Επανάληψης Άσκηση 1. Πόσες φορές θα εκτελεστούν οι επαναληπτικές δομές στα παρακάτω τμήματα

αλγορίθμων;

x ← 5

Όσο (x > 0) επανέλαβε

Εμφάνισε x

x ← x - 1

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

x ← 5

Όσο (x >= 0) επανέλαβε

Εμφάνισε x

x ← x - 1

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

x ← -5

Όσο (x >= 0) επανέλαβε

Εμφάνισε x

x ← x - 1

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

x ← 5

Όσο (x >= 0) επανέλαβε

Εμφάνισε x

x ← x + 1

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

Λύση

1) Στην πρώτη περίπτωση η μεταβλητή x θα πάρει τις τιμές 5, 4, 3, 2, 1 (οι οποίες και θα

εμφανιστούν), 0 οπότε και θα τερματιστεί ο βρόχος και συνεπώς θα εκτελεστεί 5 φορές

2) Στην δεύτερη περίπτωση η μεταβλητή x θα πάρει τις τιμές 5, 4, 3, 2, 1, 0 (οι οποίες και θα

εμφανιστούν), -1 οπότε και θα τερματιστεί ο βρόχος και συνεπώς θα εκτελεστεί 6 φορές

3) Στην τρίτη περίπτωση ο βρόχος δεν θα εκτελεστεί καμία φορά αφού η τιμή -5 δεν είναι >= 0

4) Στην τέταρτη περίπτωση η μεταβλητή x θα πάρει τις τιμές 5, 6, 7, 8, .... Παρατηρούμε ότι δεν θα

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

ατέρμων βρόχο, δηλαδή άπειρο πλήθος επαναλήψεων

Άσκηση 2. Υπάρχει κάποιο λάθος στα παρακάτω τμήματα αλγορίθμων;

Α Β Γ

S ← 0

Για i από -3 μέχρι 3

S ← 0

Για i από -1 μέχρι -3

S ← 0

Για i από 2 μέχρι 5

Page 28: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 28 από 100

Για j από 10 μέχρι 20 με_βήμα i

S ← S + 1

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

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

Εκτύπωσε S

Για j από 18 μέχρι 13 με_βήμα i

S ← S + i * j

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

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

Εκτύπωσε S

Για j από 14 μέχρι i

S ← S + 2

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

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

Εκτύπωσε S

Λύση

Α. Οι τιμές που θα πάρει ο μετρητής του εξωτερικού βρόχου - το i είναι: -3, -2, -1, 0, 1, 2, 3. Το βήμα

για την αύξηση του μετρητή του εσωτερικού βρόχου j είναι το i. Όταν λοιπόν το i πάρει την τιμή 0, ο

εσωτερικό βρόχος δεν θα τερματιστεί ποτέ (ατέρμων βρόχος), παραβιάζεται λοιπόν το κριτήριο της

περατότητας

Β. Η τελική τιμή του εξωτερικού βρόχου είναι είναι μικρότερη της αρχικής ενώ το βήμα είναι θετικό

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

επομένως και του εσωτερικού. Άρα θα εκτυπωθεί η (αρχική) τιμή 0

Γ. Οι τιμές που θα πάρει ο μετρητής του εξωτερικού βρόχου - το i είναι: 2, 3, 4, 5. Αυτές οι τιμές

αποτελούν την τελική τιμή για τον εσωτερικό βρόχο. Ωστόσο, η εκτέλεση του αλγορίθμου δεν θα

εισαχθεί ποτέ στον εσωτερικό βρόχο καθώς σε κάθε περίπτωση η τελική τιμή θα είναι μικρότερη της

αρχικής με βήμα θετικό. Άρα δεν θα εκτελεστεί η εντολή εκχώρησης τιμής καμία φορά, επομένως θα

εκτυπωθεί η (αρχική) τιμή 0

Άσκηση 3. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τί θα εκτυπωθεί

τελικά;

Αλγόριθμος Άσκηση12

α ← 0

Όσο (α <= 22) επανάλαβε

Για i από 1 μέχρι 3

α ← α + i

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

α ← α + 5

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

Εκτύπωσε α

Τέλος Άσκηση12

Λύση

i α

0

0 <= 22 Ισχύει, 1η εξωτερική επανάλ

1η επανάλ 1 1

2η επανάλ 2 3

3η επανάλ 3 6

Πράξεις 11

11 <= 22 Ισχύει, 2η εξωτερική επανάλ

1η επανάλ 1 12

2η επανάλ 2 14

3η επανάλ 3 17

Πράξεις 22

22 <= 22 Ισχύει, 3η εξωτερική επανάλ

1η επανάλ 1 23

2η επανάλ 2 25

3η επανάλ 3 28

Πράξεις 33

Page 29: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 29 από 100

33 <= 22 Δεν ισχύει

3η τερματισμός επανάληψης

Θα εκτυπωθεί η τιμή 33

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

δομές επανάληψης και να σχηματίσετε το διάγραμμα ροής

α ← 2

β ← 3

Αρχή_επανάληψης

Εκτύπωσε β

β ← β + 2

Μέχρις_ότου (β > 11)

Λύση

α ← 2

β ← 3

Όσο (β <= 11) επανάλαβε

Εκτύπωσε β

β ← β + 2

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

α ← 2

Για β από 3 μέχρι 11 με_βήμα 2

Εκτύπωσε β

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

Άσκηση 5. Να αναπαραστήσετε τον αλγόριθμο που αντιστοιχεί στο παρακάτω διάγραμμα ροής

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

Λύση

Αλγόριθμος Διάγραμμα_Ροής

i ← 1

S ← 0

Όσο (i <= 5) επανάλαβε

i ← i + 1

S ← S + (-1) ^ i * i ^2

Ή

Αλγόριθμος Διάγραμμα_Ροής_Εναλ

S ← 0

Για i από 1 μέχρι 5

S ← S + (-1) ^ i * i ^ 2

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

Εμφάνισε S

Page 30: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 30 από 100

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

Εμφάνισε S

Τέλος Διάγραμμα_Ροής

Τέλος Διάγραμμα_Ροής_Εναλ

Η άσκηση θα εκτυπώσει το αποτέλεσμα της σειράς S = -1 + 4 - 9 + 16 - 25. Η δομή επανάληψης θα

εκτελεστεί για 5 επαναλήψεις

Επανάληψη: 1η 2η 3η 4η 5η

S : 0 -1 3 -6 10 -15

i : 0 1 2 3 4 5 6

Θα εκτυπωθούν η τιμή: -15

Άσκηση 6. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τί θα εκτυπωθεί

τελικά;

Αλγόριθμος Πίνακας_Τιμών2

α ← 2

β ← 1

Όσο (α >= β) και (α div 10 < 1) επανάλαβε

α ← α ^ 2

Αν (α div β > 2) τότε

β ← β + 1

Αλλιώς

α ← α + 1

Τέλος_αν

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

Εκτύπωσε α, β

Τέλος Πίνακας_Τιμών2

Λύση

2 >= 1 και 2 div 10

= 0 < 1

Ισχύει 1η

επανάληψη

4 div 1 = 4

> 2

Iσχύει

4 >= 2 και 4 div 10 = 0

< 1 Ισχύει

2η επανάληψη

16 div 2 = 8

> 2

Isx;yei

16 >= 3 και 16 div

10 = 1 < 1

Δεν ισχύει

α

:

2 4 16

β : 1 2 3

Θα εκτυπωθούν οι τιμές 16, 3

Άσκηση 7. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τί θα εκτυπωθεί

τελικά;

Αλγόριθμος Πίνακας_Τιμών3

α ← 6

β ← 11

Αρχή_επανάληψης

γ ← (α + β) div 2

Αν (γ > α) τότε

α ← γ - α

β ← β - γ

Αλλιώς

α ← 3 + α - γ

β ← γ - β

Τέλος_αν

ποσότητα ← γ + α * β

Μέχρις_οτου (ποσότητα < 0)

Εκτύπωσε α, β, γ

Τέλος Πίνακας_Τιμών3

Page 31: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 31 από 100

Άσκηση 8. Να αναπτύξετε αλγόριθμο ο οποίος θα εκτυπώνει τις τιμές της συνάρτησης αν το χ

παίρνει τιμές στο διάστημα [-0.5, 5] με βήμα 0.05

Λύση

Αλγόριθμος ΣυνάρτησηFx

Για X από -0.5 μέχρι 5 με_βήμα 0.05

Αν (Χ <> -1) τότε

Fx ← (X - 4) / (X + 1) ^ 3

Εκτύπωσε "Για x = ", X, "η τιμή της συνάρτησης είναι", Fx

Αλλιώς

Εκτύπωσε "Η συνάρτηση δεν ορίζεται για x = -1"

Τέλος_αν

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

Τέλος ΣυνάρτησηFx

Άσκηση 9. Να αναπτύξετε αλγόριθμο ο οποίος θα υπολογίζει και θα εκτυπώνει το άθροισμα 1

+ 2 + 3 + 4 + 5 + 6 + ... + 1000

Λύση

Αλγόριθμος Άθροισμα

S ← 0

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

S ← S + i

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

Εκτύπωσε "Το άθροισμα είναι ", S

Τέλος Άθροισμα

Άσκηση 10. Να αναπτυχθεί αλγόριθμος που θα διαβάζει έναν αριθμό Ν και να υπολογίζει τη

σειρά

Λύση

Την αλλαγή του πρόσημου μπορούμε να την επιτύχουμε με την ύψωση του -1 σε άρτια ή περιττή δύναμη

(αφού εναλλάξ πηγαίνουν και τα πρόσημα) όμοια με την εξέλιξη των τιμών του μετρητή της δομής

επανάληψης. Παρατηρούμε πως όταν ο αριθμός υψώνεται σε περιττή δύναμη το πρόσημο είναι θετικό

και σε άρτια αρνητικό...

Αλγόριθμος Σειρά_Πρόσημο

Διάβασε N

S ← 5

Για i από 1 μέχρι Ν

S ← S + (-1) ^ (i+1) * 3 ^ i

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

Εκτύπωσε "Η τιμή της σειράς είναι ", S

Τέλος Σειρά_Πρόσημο

Άσκηση 11. Να αναπτυχθεί αλγόριθμος που θα εκτυπώνει τους τριψήφιους αριθμούς που είναι

πολλαπλάσια του 7 καθώς και το πόσοι είναι οι αριθμοί αυτοί

Λύση

Αλγόριθμος Πολλαπλάσια_7

πλήθος ← 0

Για i από 100 μέχρι 999

Αν (i mod 7 = 0) τότε

πλήθος ← πλήθος + 1

Εκτύπωσε "Ο αριθμός", i, " ικανοποιεί την εκφώνηση"

Page 32: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 32 από 100

Τέλος_αν

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

Εκτύπωσε "Το πλήθος των αριθμών που ικανοποιούν την εκφώνηση είναι ", πλήθος

Τέλος Πολλαπλάσια_7

Η άσκηση μπορεί να λυθεί και με άλλο τρόπο. Θα ξεκινήσουμε από τον πρώτο τριψήφιο αριθμό που είναι

πολλαπλάσιο του 7 (που είναι ο αριθμός 105) και με βήμα 7 θα "σαρώνει" τους αριθμούς μέχρι τον

τελευταίο τριψήφιο αριθμό που είναι πολλαπλάσιο του 7 (που είναι ο αριθμός 994)

Αλγόριθμος Πολλαπλάσια_7_αλλιώς

πλήθος ← 0

Για i από 105 μέχρι 994 με_βήμα 7

πλήθος ← πλήθος + 1

Εκτύπωσε "Ο αριθμός", i, " ικανοποιεί την εκφώνηση"

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

Εκτύπωσε "Το πλήθος των αριθμών που ικανοποιούν την εκφώνηση είναι ", πλήθος

Τέλος Πολλαπλάσια_7_αλλιώς

Άσκηση 12. Να αναπτύξετε αλγόριθμο ο οποίος θα εντοπίζει και θα εκτυπώνει όλους τους

τριψήφιους αριθμούς που το άθροισμα τετραγώνων των ψηφίων τους είναι μικρότερο από

αυτούς (για παράδειγμα 131, 12+32+12 = 11 < 131)

Άσκηση 13. Να αναπτυχθεί αλγόριθμος που θα διαβάζει έναν ακέραιο αριθμό και θα εμφανίζει

όλους τους διαιρέτες του καθώς και το πλήθος τους

Άσκηση 14. Να αναπτυχθεί αλγόριθμος που θα διαβάζει Ν αριθμούς και θα υπολογίζει και θα

εκτυπώνει τον ελάχιστο (η ίδια λογική εφαρμόζεται και για την εύρεση του μέγιστου)

Λύση

Για την εύρεση ελαχίστου η μεθοδολογία είναι η εξής: Διαβάζω τον πρώτο αριθμό και τοποθετώ την

τιμή του στη μεταβλητή με όνομα ελάχιστος. Στη συνέχεια διαβάζω έναν - έναν όλους τους υπόλοιπους

αριθμούς και τους συγκρίνουμε με την μεταβλητή ελάχιστο, αν εντοπιστεί κάποιος αριθμός μικρότερος

τότε καταχωρώ την τιμή αυτή στη μεταβλητή ελάχιστος. Ακολουθεί ο αλγόριθμος:

Αλγόριθμος Εύρεση_Ελαχίστου

Δεδομένα // Ν //

Διάβασε αριθμός ! Διαβάζω τον πρώτο αριθμό

ελάχιστος ← αριθμός

Για i από 2 μέχρι Ν ! Διαβάζω τους υπόλοιπους

Διάβασε αριθμός

Αν (αριθμός < ελάχιστος) τότε

ελάχιστος ← αριθμός

Τέλος_αν

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

Εκτύπωσε "Ο ελάχιστος αριθμός είναι ", ελάχιστος

Τέλος Εύρεση_Ελαχίστου

Άσκηση 15. Να αναπτυχθεί αλγόριθμος που θα διαβάζει έναν αριθμό (μεγαλύτερο του 0) και

να υπολογίζει τη σειρά

μέχρι να ξεπεράσει την τιμή του αριθμού αυτού και να εκτυπώνει το πλήθος των επαναλήψεων

που χρειάστηκαν

Λύση

Αλγόριθμος Σειρά_Όριο

Αρχή_επανάληψης

Διάβασε Όριο

Μέχρις_ότου (Όριο > 0)

i ← 1

S ← 0

Όσο (S <= Όριο) επανάλαβε

Page 33: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 33 από 100

S ← S + i ^ i

i ← i + 1

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

Εκτύπωσε "Απαιτήθηκαν ", i, " επαναλήψεις"

Τέλος Σειρά_Όριο

Άσκηση 16. Να αναπτύξετε αλγόριθμο που θα διαβάζει αριθμούς αγνώστου πλήθους και θα

εκτυπώνει το μέσο όρο των θετικών. Η επαναληπτική διαδικασία να τερματίζεται όταν δοθεί ο

αριθμός 0

Λύση

Αλγόριθμος Μέσος_Όρος_Αριθμών

άθροισμα ← 0

πλήθος ← 0

Αρχή_επανάληψης

Διάβασε αριθμός

Αν αριθμός > 0 τότε ! Ο αριθμός δεν πρέπει είναι 0

άθροισμα ← άθροισμα + αριθμός

πλήθος ← πλήθος + 1

Τέλος_αν

Μέχρις_ότου αριθμός = 0

Αν πλήθος <> 0 τότε

μέσος_όρος ← άθροισμα / πλήθος

Εκτύπωσε "Τα στοιχεία που διαβάστηκαν είναι ", πλήθος

Εκτύπωσε "Ο μέσος όρος είναι ", μέσος_όρος

Αλλιώς

Εκτύπωσε "Τελικά δεν δόθηκε κανένας αριθμός"

Τέλος_αν

Τέλος Μέσος_Όρος_Αριθμών

Παρατηρούμε πως υπάρχει η περίπτωση να μην εκτελεστεί το τμήμα εντολών του βρόχου καμία φορά,

άρα μάλλον ταιριάζει η δομή όσο...επανάλαβε στην άσκηση αυτή. Στη συνέχεια παρατίθεται λοιπόν, η

εναλλακτική μορφή του αλγορίθμου

Αλγόριθμος Μέσος_Όρος_Αριθμών_εναλ

άθροισμα ← 0

πλήθος ← 0

Διάβασε αριθμός

Όσο αριθμός <> 0 επανάλαβε

Αν αριθμός ← 0 τότε

άθροισμα ← άθροισμα + αριθμός

πλήθος ← πλήθος + 1

Τέλος_αν

Διάβασε αριθμός

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

Αν πλήθος <> 0 τότε

μέσος_όρος ← άθροισμα / πλήθος

Εκτύπωσε "Τα στοιχεία που διαβάστηκαν είναι ", πλήθος

Εκτύπωσε "Ο μέσος όρος είναι ", μέσος_όρος

Αλλιώς

Εκτύπωσε "Τελικά δεν δόθηκε κανένας αριθμός"

Τέλος_αν

Τέλος Μέσος_Όρος_Αριθμών_εναλ

Παρατηρούμε επίσης, πως έχει προστεθεί άλλη μια εντολή Διάβασε πριν τη δομή επανάληψης κάτι που

ξεχνάνε συχνά οι μαθητές σε αντίστοιχα παραδείγματα. Η ενέργεια αυτή είναι απαραίτητη καθώς

πρέπει να έχει αρχικοποιηθεί η μεταβλητή αριθμός προτού χρησιμοποιηθεί στη συνθήκη του Όσο. Στη

συνέχεια, στο τέλος του βρόχου διαβάζεται η επόμενη τιμή για να χρησιμοποιηθεί στον επόμενο έλεγχο

Page 34: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 34 από 100

Άσκηση 17. Να αναπτυχθεί αλγόριθμος που θα διαβάζει άγνωστο πλήθος αριθμών και θα

εντοπίζει και εκτυπώνει το ποσοστό αυτών που είναι πολλαπλάσια του 5. Ο αλγόριθμος θα

τερματίζεται όταν εισαχθεί ο αριθμός 0

Άσκηση 18. Από έρευνες έχει φανεί ότι μια κοινότητα μελισσών υπό κανονικές συνθήκες

αναπτύσσεται με ρυθμό 3.8 % ετησίως. Αν ένας μελισσοκόμος διαθέτει μελίσσια με συνολικό

πληθυσμό 1200 μέλισσες σε πόσα έτη θα ξεπεράσει τη χωρητικότητα των κυψελών του που

είναι 2000 μέλισσες;

Λύση

Δεδομένου ότι δεν είναι γνωστό το πλήθος των επαναλήψεων που θα χρειαστούν θα χρησιμοποιήσουμε

την δομή επανάληψης Μέχρις_ότου. στη δομή θα εντάξουμε και την μεταβλητή Έτη που θα μετρά τα

χρόνια

Αλγόριθμος Μέλισσες

Μέλισσες ← 1200

Ρυθμός ← 0.038

Όριο ← 2000

Έτη ← 0

Αρχή_επανάληψης

Μέλισσες ← Μέλισσες * (1 + Ρυθμός)

Έτη ← Έτη + 1

Μέχρις_ότου Μέλισσες > Όριο

Εκτύπωσε "Το όριο θα ξεπεραστεί σε ", Έτη

Τέλος Μέλισσες

Άσκηση 19. Ο μισθός του κύριου Αρβίλογλου είναι 1250 €, ενώ σύμφωνα με το μισθολόγιο

αυξάνεται κατά 11% ετησίως. Κάθε μήνα έχει αποφασίσει να αποταμιεύει 9% του μισθού για το

όνειρό του που είναι η αγορά φουσκωτού σκάφους. Να αναπτύξετε αλγόριθμο που θα

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

φουσκωτού αξίας 7000 €

Λύση

Αλγόριθμος Φουσκωτό

μισθός ← 1250

συγκεντρωθέν_ποσό ← 0

μήνες ← 0

Όσο (συγκεντρωθέν_ποσό <= 7000) επανάλαβε

συγκεντρωθέν_ποσό ← συγκεντρωθέν_ποσό + 0.09 * μισθός

μήνες ← μήνες + 1

Αν μήνες mod 12 = 0 τότε ! συμπληρώθηκε νέο έτος

μισθός ← μισθός + 0.11 * μισθός

Τέλος_άν

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

Εκτύπωσε "Το ποσό των 7000 € θα συγκεντρωθεί σε ", μήνες

Τέλος Φουσκωτό

Άσκηση 20. Να αναπτυχθεί ο αλγόριθμος που εκτελείται στα διόδια. Για κάθε αυτοκίνητο που

περνά να διαβάζεται ο τύπος του ("Φ" για φορτηγό, "Α" για αυτοκίνητο και "Μ" για

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

τύπο οχήματος "Τέλος" και να εκτυπώνει τις εισπράξεις της ημέρας. Πρέπει να επισημανθεί

ότι το κόστος διέλευσης είναι 2.50 € για ένα φορτηγό, 1.40 για ένα αυτοκίνητο και 0.90 για

μια μοτοσικλέτα

Άσκηση 21. Οι βαθμολογητές των γραπτών των πανελληνίων εξετάσεων βαθμολογούν με

άριστα το 100, ενώ κάθε γραπτό διορθώνεται από 2 άτομα χωρίς να γνωρίζει ο ένας τη

βαθμολογία του άλλου. Ωστόσο, αν μεταξύ των δυο βαθμολογιών παρατηρηθεί διαφορά

μεγαλύτερη των 11 μορίων τότε το γραπτό διορθώνεται και από τρίτο βαθμολογητή και σε

αυτήν την περίπτωση ο τελικός γραπτός βαθμός είναι ο μέσος όρος των 3 βαθμολογιών,

διαφορετικά αν δεν υπάρξει αναβαθμολόγηση τελικός βαθμός θεωρείται ο μέσος όρος των 2

Page 35: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 35 από 100

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

Λυκείου, και για κάθε έναν από τα 9 μαθήματα που εξετάζεται πανελλαδικά τους προφορικούς

του βαθμούς και τους βαθμούς του γραπτού του από τους δυο βαθμολογητές (και το βαθμό του

τρίτου βαθμολογητή μόνο στην περίπτωση που αυτό είναι απαραίτητο) και θα εμφανίζει τους

βαθμούς πρόσβασης σε κάθε μάθημα καθώς και το γενικό βαθμό πρόσβασης στις πανελλήνιες

εξετάσεις (μέσος όρος βαθμών πρόσβασης). Ισχύει ότι βαθμός πρόσβασης = 70% * γραπτός

βαθμός και 30% * προφορικός βαθμός

Άσκηση 22. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τί θα εκτυπωθεί

τελικά;

Αλγόριθμος Πίνακας_Τιμών1

α ← 3

β ← 0

Για i από 51 μέχρι 10 με_βήμα -11

α ← α + 2

Αν(α > 4) τότε

β ← β + i div α

Αλλιώς

β ← β - i

Τέλος_Αν

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

α ← α - β

Εκτύπωσε α, β

Τέλος Πίνακας_Τιμών1

Λύση

i α β

Αρχικοποίηση 11

1η επανάληψη Για 51 5

5 > 4, ισχύει 10

2η επανάληψη Για 40 7

7 > 4, ισχύει 15

3η επανάληψη Για 29 9

9 > 4, ισχύει 18

4η επανάληψη Για 18 11

11 > 4, ισχύει 19

-8 19

Άσκηση 23. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τί θα εκτυπωθεί

τελικά;

Αλγόριθμος Πίνακας_Τιμών10

β ← 0

γ ← 2

Για i από 1 μέχρι 3

α ← 20 * i

Αρχή_επανάληψης

β ← β + α div 4

α ← γ + α

Μέχρις_ότου (β > 20 * i)

β ← (3 * α) div 2

γ ← α div γ

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

Εμφάνισε α, β

Τέλος Πίνακας_Τιμών10

Page 36: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 36 από 100

Άσκηση 24. Να μεταφέρετε τα παρακάτω διαγράμματα ροής σε μορφή ψευδοκώδικα

i.

ii.

Λύση

ι.β ← 0

α ← 12

Αρχή_επανάληψης

β ← β + α * 5

α ← α – 2

Εμφάνισε β

Μέχρις_ότου (β > 11)

ii.άθροισμα ← 0

i ← 1

Όσο (i <= 20) επανάλαβε

Διάβασε α

άθροισμα ← άθροισμα + 0.35 * αριθμός

i ← i + 2

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

Άσκηση 25. Να αναπτυχθεί αλγόριθμος που θα διαβάζει έναν αριθμό (μεγαλύτερο του 0) και

να υπολογίζει τη σειρά

Λύση

Αλγόριθμος Σειρά_Πρόσημο

Διάβασε N

S ← 0

Για i από 1 μέχρι Ν

S ← S + (–1) ^ (i + 1) * 1 / i

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

Εκτύπωσε "Η τιμή της σειράς είναι ", S

Τέλος Σειρά_Πρόσημο

Page 37: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 37 από 100

Άσκηση 26. Να αναπτύξετε αλγόριθμο οποίος θα υπολογίζει τη σειρά

i.

ii.

μέχρι το άθροισμα να ξεπεράσει το 1004

Άσκηση 27. Να αναπτυχθεί αλγόριθμος που θα εκτυπώνει το άθροισμα των τετραγώνων των

διψήφιων άρτιων αριθμών

Άσκηση 28. Να αναπτυχθεί αλγόριθμος που να διαβάζει άγνωστο πλήθος αριθμών και να

υπολογίζει και να εκτυπώνει το άθροισμα και το μέσο όρο τους. Η επανάληψη να τερματίζεται

όταν θα διαβαστεί ο αριθμός –9999 ή όταν διαβαστούν 50 αριθμοί

Άσκηση 29. Η χρέωση (κλιμακωτή) στους λογαριασμούς της TEVERLAS Telephony είναι η

εξής:

Πάγιο: 15 €

Αστικές μονάδες: 0.030 € ανά μονάδα

Υπεραστικές μονάδες:

0 - 150 0.045 € ανά μονάδα

151 - 500 0.039 € ανά μονάδα

501 - 0.033 € ανά μονάδα

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

και τις υπεραστικές μονάδες που κατανάλωσε και να εκτυπώνει το ποσό του λογαριασμού του,

μέχρι να διαβαστεί ως όνομα του "Τέλος". Ο αλγόριθμος πρέπει να επιστρέφει στο τέλος το

συνολικό ποσό εισπράξεων της TEVERLAS

Λύση

Αλγόριθμος Λογαριασμός_CityTel

πάγιο ← 15

εισπράξεις ← 0

Διάβασε όνομα

Όσο (όνομα <> "Τέλος") επανάλαβε

Διάβασε αστικές, υπεραστικές

χρέωση ← πάγιο + αστικές * 0.030

Αν υπεραστικές <= 150 τότε

χρέωση ← χρέωση + 0.045 * υπεραστικές

Αλλιώς_αν υπεραστικές <= 500 τότε

χρέωση ← χρέωση + 0.045 * 150 + 0.0039 * (υπεραστικές- 150)

Αλλιώς ! υπεραστικές > 500

χρέωση ← χρέωση + 0.045 * 150 + 0.0039 * 350 + 0.0033 * (υπεραστικές- 500)

Τέλος_αν

χρέωση ← χρέωση + χρέωση * 0.04

Εκτύπωσε "Ο πελάτης ", όνομα, " οφείλει ", χρέωση

εισπράξεις ← εισπράξεις + χρέωση

Διάβασε όνομα

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

Εκτύπωσε "Οι συνολικές εισπράξεις είναι ", εισπράξεις

Τέλος Λογαριασμός_CityTel

Άσκηση 30. Ο κύριος Αρβίλογλου σύναψε δάνειο στην τράπεζα Τενεούπολης ώστε να

ανακαινίσει το σπίτι του. Η τράπεζα του ανακοίνωσε το νέο της πρόγραμμα δανείων που είναι

το εξής:

- Η πρώτη δόση είναι 100 €, ενώ κάθε εξάμηνο αυξάνεται κατά 50 €, μέχρι να φτάσει το

ποσό των 400 € (δεν μπορεί η δόση να είναι μεγαλύτερη από 400 €).

- Με τη συμπλήρωση κάθε χρόνου από τη σύναψη του δανείου, το υπολειπόμενο ποσό

τοκίζεται με επιτόκιο 10.5%.

Page 38: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 38 από 100

Σημείωση: κατά τη σύναψη του δανείου τοκίζεται το αρχικό ποσό.

Να αναπτύξετε αλγόριθμο που θα διαβάζει το ποσό που σκέφτεται να δανειστεί ο κος

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

Λύση

Αλγόριθμος Τράπεζα

Διάβασε ποσό_δανείου

υπολοιπόμενο ← ποσό_δανείου + ποσό_δανείου * 10.5/100

μήνες ← 0

δόση ← 100

Όσο (υπολοιπόμενο > 0) επανάλαβε

υπολοιπόμενο ← υπολοιπόμενο - δόση

μήνες ← μήνες + 1

Αν (μήνες mod 6 = 0) τότε

! αλλαγή δόσης για τον επόμενο μήνα (επανάληψη)

δόση ← δόση + 50

Αν (δόση > 400) τότε

δόση ← 400

Τέλος_αν

Τέλος_αν

Αν (μήνες mod 12 = 0) τότε

! πρέπει να τοκιστεί το ποσό

υπολοιπόμενο ← υπολοιπόμενο + υπολοιπόμενο* 10.5/100

Τέλος_αν

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

Εμφάνισε "Οι μήνες για την αποπληρωμή είναι:", μήνες

Τέλος Τράπεζα

Άσκηση 31 . Ένα τυπογραφείο εκτυπώνει διαφημιστικά φυλλάδια για κάθε ενδιαφερόμενο και

χρησιμοποιεί δυο τιμολογιακές πολιτικές χρέωσης:

- Πάγια χρέωση 800 € και επιπλέον 0.75 € ανά φυλλάδιο.

- Χρέωση 3.20 € για κάθε ένα από τα 300 πρώτα φυλλάδια, ενώ η τιμή για κάθε ένα από τα

επόμενα 200 μειώνεται κατά 30 λεπτά του ευρώ. Τέλος, κάθε ένα φυλλάδιο πλέον των 500

χρεώνεται με 2.30 €.

Είναι προφανές ότι ο πρώτος τρόπος ενδείκνυται σε περίπτωση που πρόκειται να εκτυπωθεί

μεγάλος αριθμός φυλλαδίων, ενώ για λιγότερα φυλλάδια προτιμάται ο δεύτερος. Σημειώνεται

επίσης, ότι τα φυλλάδια εκτυπώνονται ανά εκατό (100).

Γνωστό ψητοπωλείο ενδιαφέρεται να εκτυπώσει διαφημιστικά φυλλάδια. Να αναπτύξετε

αλγόριθμο που θα εντοπίζει και θα εμφανίζει το πλήθος των φυλλαδίων που πρέπει να

παραγγείλει ώστε να είναι οικονομικότερος ο δεύτερος τρόπος τιμολόγησης.

Η διαδικασία που πρέπει να ακολουθήσετε είναι η εξής: να υπολογίζεται το κόστος των φυλλαδίων και με τους δυο τρόπους ανά 100 φυλλάδια (100, 200, 300, ...) έως ότου το κόστος το ποσό που προκύπτει με τη δεύτερη τιμολόγηση να είναι μεγαλύτερο από αυτό με την πρώτη.

Λύση

Αλγόριθμος Ψητοπωλείο

εκτύπωση ← 0

φυλλάδια ← 100

πακέτο1 ← 800 + 0.75 * φυλλάδια ! για τα πρώτα 100, Α πακέτο

πακέτο2 ← 3.20 * φυλλάδια ! για τα πρώτα 100, Β πακέτο

Όσο (πακέτο2 < πακέτο1) επανάλαβε

εκτύπωση ← φυλλάδια ! αφού ισχύει η συνθήκη, μπορούν να εκτυπωθούν

φυλλάδια ← φυλλάδια + 100 ! να βάλω άλλα 100, πόσο θα κάνουν;

πακέτο1 ← 800 + 0.75 * φυλλάδια

Αν φυλλάδια <= 300 τότε

Page 39: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 39 από 100

πακέτο2 ← 3.20 * φυλλάδια

Αλλιώς_αν φυλλάδια <= 500 τότε

πακέτο2 ← 3.20 * 300 + 2.90 * (φυλλάδια – 300)

Αλλιώς_αν φυλλάδια <= 500 τότε

πακέτο2 ← 3.20 * 300 + 2.90 * 200 + 2.30 * (φυλλάδια – 500)

Τέλος_αν

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

Εμφάνισε εκτύπωση

Τέλος Ψητοπωλείο

Άσκηση 32. Ο φόρος μεταβίβασης που πρέπει να καταβληθεί για την αγορά ακινήτου κατά το

οικονομικό έτος 2006 προκύπτει από τον παρακάτω πίνακα (κλιμακωτός υπολογισμός):

Αντικειμενική αξία

ακινήτου (σε €) Ποσοστό %

περισσότερα από 80.000 3

περισσότερα από 150.000 5

περισσότερα από 250.000 8

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

ακινήτου η φορολόγηση προσαυξάνεται κατά 12% της διαφοράς αυτής. Κατά το οικονομικό έτος

2005 ο αντίστοιχος πίνακας ήταν ο εξής (κλιμακωτός υπολογισμός):

Ποσό αγοράς

ακινήτου (σε €) Ποσοστό %

μέχρι και 100.000 4

μέχρι και 200.000 6

περισσότερα από 200.000 9

Να αναπτύξετε αλγόριθμο που θα διαβάζει για κάθε μια από τις 150.000 μεταβιβάσεις ακινήτων

την αντικειμενική αξία του ακινήτου καθώς και το τελικό ποσό αγοράς κατά το 2006 και (α) να

εκτυπώνει το φόρο που πρέπει να πληρωθεί καθώς και το ποσό του φόρου που θα πληρωνόταν αν

η μεταβίβαση πραγματοποιούταν το 2005, (β) να εκτυπώνει την επί τοις εκατό μεταβολή του

φόρου. (γ) Το υπουργείο οικονομικών ανακοίνωσε ότι με τις αλλαγές αυτές προσμένει αύξηση των

εσόδων μεταξύ των δυο ετών κατά 12%, με περιθώριο λάθους 0.5%. Πρέπει ο αλγόριθμος να

εκτυπώνει μήνυμα σχετικά με το αν επετεύχθη ο στόχος αυτός και στην αντίθετη περίπτωση να

εκτυπώνει το ποσοστό αύξησης των εσόδων.

Λύση

Αλγόριθμος Μεταβιβάσεις

άθροισμα_2006 ← 0

άθροισμα_2005 ← 0

Για i από 1 μέχρι 150000

Διάβασε αντικειμενική, αγορά

Αν αντικειμενική <= 80000 τότε ! φόρος 2006

φόρος_2006 ← 0

Αλλιώς_αν αντικειμενική <= 150000 τότε

φόρος_2006 ← 3 / 100 * (αντικειμενική – 80000)

Αλλιώς_αν αντικειμενική <= 250000 τότε

φόρος_2006 ← 3 / 100 * 70000 + 5 / 100 * (αντικειμενική – 150000)

Αλλιώς

φόρος_2006 ← 3 / 100 * 70000 + 5 / 100 * 100000 + 8 / 100 * (αντικειμενική – 250000)

Τέλος_αν

Αν αγορά > αντικειμενική τότε

φόρος_2006 ← φόρος_2006 + 12 / 100 * (αγορά – αντικειμενική)

Τέλος_αν

Αν αγορά <= 100000 τότε ! φόρος 2005

Page 40: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 40 από 100

φόρος_2005 ← 4 / 100 * αγορά

Αλλιώς_αν αντικειμενική <= 200000 τότε

φόρος_2005 ← 4 / 100 * 100000 + 6 / 100 * (αγορά – 100000)

Αλλιώς

φόρος_2005 ← 4 / 100 * 100000 + 6 / 100 * 100000 + 9 / 100 * (αγορά – 200000)

Τέλος_αν

Εκτύπωσε φόρος_2006, φόρος_2005

ποσοστό ← 100 * (φόρος_2006 – φόρος_2005) / φόρος_2005

Εκτύπωσε ποσοστό

άθροισμα_2006 ← άθροισμα_2006 + φόρος_2006

άθροισμα_2005 ← άθροισμα_2005 + φόρος_2005

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

συν_ποσοστό ← 100 * (άθροισμα_2006 – άθροισμα_2005) / άθροισμα_2005

Αν (συν_ποσοστό >= 11.5) και (συν_ποσοστό <= 12.5) τότε ! 12 +- 0.5

Εκτύπωσε "Ο οικονομικός στόχος επετεύχθη"

Αλλιώς

Εκτύπωσε ποσοστό

Τέλος_αν

Τέλος Μεταβιβάσεις

Άσκηση 33. Α. Δίνεται το παρακάνω τμήμα αλγορίθμου:

S ← 0

i ← 5

Όσο (i > 1) επανάλαβε

S ← S + i

i ← i – 1

Εμφάνισε i

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

Εμφάνισε S

Μπορείτε δημιουργήσετε κωδικοποίηση σε ψευδογλώσσα που έχει την ίδια έξοδο με τις παραπάνω

εντολές χρησιμοποιώντας τη δομής επανάληψης Όσο … επανάλαβε.

B. Δίνεται το παρακάνω τμήμα αλγορίθμου:

Διάβασε Χ

α ← 30

Αρχή_επανάληψης

α ← α + α div 6

Εκτύπωσε α

Μέχρις_ότου (α > Χ)

Μπορείτε δημιουργήσετε κωδικοποίηση σε ψευδογλώσσα που έχει την ίδια έξοδο με τις παραπάνω

εντολές χρησιμοποιώντας τη δομής επανάληψης Για.

Άσκηση 34. Α. Να μετατρέψετε την παρακάτω δομή στις άλλες δυο δομές επανάληψης

α ← 0

Για i από 100 μέχρι 1 με_βήμα –2

α ← α + 2 ^ i

Εκτύπωσε α

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

Β. Να μετατρέψετε την παρακάτω δομή στις άλλες δυο δομές επανάληψης αν μπορεί να γίνει

α ← 0

i ← 1

Αρχή_επανάληψης

α ← α + i ^ 2

i ← i + 2

Μέχρις_ότου i div 7 > 5

Εμφάνισε α

Page 41: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 41 από 100

Λύση

Λύση

A. α ← 0

i ← 100

Όσο i >= 1 επανάλαβε

α ← α + 2 ^ i

i ← i – 2

Εκτύπωσε α

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

α ← 0

i ← 100

Αρχή_επανάληψης

α ← α + 2 ^ i

i ← i – 2

Εκτύπωσε α

Μέχρις_ότου i < 1

B. α ← 0

i ← 1

Όσο όχι (i div 7 > 5) επανάλαβε

α ← α + i ^ 2

i ← i + 2

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

Εμφάνισε α

Ο αλγόριθμος δεν μπορεί να υλοποιηθεί με τη δομή Για

Άσκηση 35. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου αν i) x = 8, ii) x =

11.

Αλγόριθμος Πίνακας_Τιμών

Διάβασε x

Αν (x mod 2 = 1) τότε

Για i από 1 μέχρι 5

x ← x + 2

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

Αλλιώς

Για i από 8 μέχρι 4 με_βήμα –1

x ← x + i

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

Τέλος_αν

Εκτύπωσε x

Τέλος Πίνακας_Τιμών

Λύση

i. x = 8 ii. x = 11

i x

Αρχικοποίηση 8

8 mod 2 = 1 δεν ισχύει

1η επανάληψη 8 16

2η επανάληψη 7 23

3η επανάληψη 6 29

4η επανάληψη 5 34

5η επανάληψη 4 38

i x

Αρχικοποίηση 11

11 mod 2 = 1 ισχύει

1η επανάληψη 1 13

2η επανάληψη 2 15

3η επανάληψη 3 17

4η επανάληψη 4 19

5η επανάληψη 5 21

Άσκηση 36. Α. Μπορείτε δημιουργήσετε κωδικοποίηση σε ψευδογλώσσα που θα έχει το ίδιο

αποτέλεσμα με τις παρακάτω εντολές, χωρίς να χρησιμοποιήσετε τη δομή Για;

Page 42: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 42 από 100

Χ ← 2

C ← 5

Όσο C > 0 επανάλαβε

Για i από 7 μέχρι 12 με_βήμα 2

X ← X + 3

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

C ← C div 2

X ← X + C

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

Β. Μπορείτε δημιουργήσετε κωδικοποίηση σε ψευδογλώσσα που θα έχει το ίδιο αποτέλεσμα με τις

παρακάτω εντολές, χρησιμοποιώντας μόνο τη δομή επανάληψης Για;

α ← 7

Όσο α >= 1 επανάλαβε

β ← α

Αρχή_επανάληψης

Εμφάνισε β

β ← β – 1

Μέχρις_ότου β = 0

α ← α – 2

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

Άσκηση 37. Ένα φορτηγό μπορεί να μεταφέρει 20 τόνους χώματος. Κατά τη διάρκεια

χωματουργικών εργασιών τα εκσκαφικά μηχανήματα σταδιακά ρίχνουν χώματα στο φορτηγό

αυτό. Να αναπτύξετε αλγόριθμο που θα διαβάζει επαναληπτικά το βάρος των χωμάτων που

δέχεται το φορτηγό μέχρι να εισαχθεί αρνητικός αριθμός ή το μηδέν. Στο τέλος αν το όχημα

περιέχει φορτίο ακριβώς όσο μπορεί να μεταφέρει να εκτυπώνεται το μήνυμα «όχημα εντάξει»,

αν μπορεί να φορτωθεί επιπλέον βάρος να εντυπώνεται το μήνυμα «επιπλέον βάρος» και το

βάρος που μπορεί να φορτωθεί ή διαφορετικά να εκτυπώνεται το μήνυμα «παραβίαση βάρους»

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

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

Λύση

Αλγόριθμος φορτηγό

ρίψεις ← 0

συν_βάρος ← 0

Διάβασε βάρος

Όσο βάρος > 0 επανάλαβε

συν_βάρος ← συν_βάρος + βάρος

ρίψεις ← ρίψεις + 1

Διάβασε βάρος

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

Αν συν_βάρος < 20000 τότε

Εκτύπωσε "Επιπλέον βάρος", 20000 – συν_βάρος

Αλλιώς_αν συν_βάρος = 20000 τότε

Εκτύπωσε "Όχημα εντάξει"

Αλλιώς

Εκτύπωσε "Παραβίαση βάρους", συν_βάρος – 20000

Τέλος_αν

Εκτύπωσε ρίψεις

Τέλος φορτηγό

Άσκηση 38. Ένας πελάτης της τράπεζας Τενεούπολης, καταθέτει στην τράπεζα κάποιο ποσό

χρημάτων. Το επιτόκιο καταθέσεων της τράπεζας είναι 3.5% και αυξάνεται 0.3% ετησίως με

ανώτατη τιμή το 6.5%. Να αναπτύξετε αλγόριθμο που θα διαβάζει το ποσό θα κατατεθεί και

τα έτη που θα παραμείνει στην τράπεζα (θεωρώντας ότι δεν θα γίνει ανάληψη) και να

εμφανίζει το τελικό ποσό που θα είναι διαθέσιμο στον πελάτη αυτό.

Page 43: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 43 από 100

Λύση

Αλγόριθμος τράπεζα

Διάβασε ποσό, έτη

επιτόκιο ← 3.5/100

Για i από 1 μέχρι έτη

ποσό ← ποσό + επιτόκιο * ποσό

επιτόκιο ← επιτόκιο + 0.3/100

Αν επιτόκιο > 6.5/100 τότε

επιτόκιο ← 6.5/100

Τέλος_αν

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

Εμφάνισε ποσό

Τέλος τράπεζα

Άσκηση 39. Οι καταθέσεις σας στην τράπεζα είναι 6500€ και το επιτόκιο της κατάθεσης είναι

5.4%. Να αναπτυχθεί αλγόριθμος που θα υπολογίζει σε πόσα έτη το κεφάλαιο θα ξεπεράσει

τα 11.000€

Άσκηση 40. Η φοίτηση σε ένα ιδιωτικός γυμνάσιο κοστίζει 3.500 € για την Α’ τάξη, 4.600 €

για τη Β’ και 5.800 € για τη Γ’ τάξη. Να αναπτύξετε αλγόριθμο που εκτελείται κατά την

περίοδο των εγγραφών και: α. θα διαβάζει επαναληπτικά το όνομα ενός μαθητή και την τάξη

που θα φοιτήσει ελέγχοντας την εγκυρότητα της καταχώρησης για την τάξη φοίτησης. Η

επανάληψη θα τερματίζεται όταν δοθεί ως όνομα η λέξη "τέλος". β. να εκτυπώνει πόσοι

μαθητές είναι εγγεγραμμένοι σε κάθε τάξη. γ. να εκτυπώνει πόσα τμήματα θα σχηματιστούν σε

κάθε τάξη. Κάθε τμήμα αριθμεί το πολύ 20 μαθητές. δ. να εκτυπώνει το ποσοστό των

μαθητών κάθε τάξης στο σχολείο; ε. να εκτυπώνει τα έσοδα του σχολείου. στ. να εκτυπώνει

ποιο τμήμα έχει τους λιγότερους μαθητές. Παρατήρηση: θεωρούμε ότι υπάρχει τουλάχιστον

ένας μαθητής σε κάθε τάξη.

Λύση

Αλγόριθμος Γυμνάσιο

α ← 0

β ← 0

γ ← 0

έσοδα ← 0

Διάβασε όνομα

Όσο όνομα <> "τέλος" επανάλαβε

Αρχή_επανάληψης

Διάβασε τάξη

Μέχρις_ότου τάξη = "Α" ή τάξη = "Β" ή τάξη = "Γ"

Επίλεξε τάξη

Περίπτωση "Α"

α ← α + 1

έσοδα ← έσοδα + 3500

Περίπτωση "Β"

β ← β + 1

έσοδα ← έσοδα + 4600

Περίπτωση αλλιώς

γ ← γ + 1

έσοδα ← έσοδα + 5800

Τέλος_επιλογών

Διάβασε όνομα

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

Εκτύπωσε α, β, γ

τμ_Α ← α div 20

Αν α mod 20 <> 0 τότε

Page 44: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 44 από 100

τμ_Α ← τμ_Α + 1

Τέλος_αν

! ... όμοια και για τις Β, Γ

Εκτύπωσε τμ_Α, τμ_Β, τμ_Γ

ποσ_Α ← 100 * α / (α + β + γ)

! ... όμοια και για τις Β, Γ

Εκτύπωσε ποσ_Α, ποσ_Β, ποσ_Γ

Εκτύπωσε έσοδα

! ... θα συγκρίνω τα τελευταία τμήματα κάθε τάξης (mod 20), αφού τα άλλα τμήματα είναι 20άρια

! ... όμοια με άσκηση 3.41

Τέλος Γυμνάσιο

Άσκηση 41. Η TEVERLAS χρεώνει κλιμακωτά τους συνδρομητές της για κάθε τηλεφώνημα,

σύμφωνα με τον παρακάτω πίνακα:

Επιπλέον στις

παραπάνω χρεώσεις

υπάρχει κόστος για

κάθε κλήση 0.05 €. Το μηνιαίο πάγιο είναι 10 € ενώ υπάρχει και ΦΠΑ 19% επί της συνολικής

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

τηλεφωνημάτων που πραγματοποίησε συνδρομητής στη διάρκεια του μήνα (σε δευτερόλεπτα). Η

διαδικασία θα τερματίζεται όταν δοθεί η τιμή -1. β. Θα εμφανίζει το πλήθος των κλήσεων που

πραγματοποιήθηκαν. γ. Θα εμφανίζει τη συνολική χρέωση του συνδρομητή.

Λύση

Αλγόριθμος teverlas

σύνολο ← 10

κλήσεις ← 0

Διάβασε διάρκεια

Όσο διάρκεια <> –1 επανάλαβε

Αν διάρκεια <= 120 τότε

χρέωση ← 0.0020 * διάρκεια

Αλλιώς_αν διάρκεια <= 360 τότε

χρέωση ← 0.0020 * 120 + 0.0016 * (διάρκεια – 120)

Αλλιώς

χρέωση ← 0.0020 * 120 + 0.0016 * 240 + 0.010 * (διάρκεια – 360)

Τέλος_αν

κλήσεις ← κλήσεις + 1

σύνολο ← σύνολο + χρέωση + 0.05

Διάβασε διάρκεια

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

σύνολο ← σύνολο + 19/100 * σύνολο

Εμφάνισε κλήσεις, σύνολο

Τέλος teverlas

Άσκηση 42. Για τις ανάγκες του εφετινού διαγωνισμού ΑΣΕΠ έχουν δεσμευτεί 350 αίθουσες

διαφορετικής χωρητικότητας σε εξεταστικά κέντρα σε ολόκληρη τη χώρα. Ο αριθμός των

επιτηρητών που απαιτούνται ανά αίθουσα καθορίζεται από το πλήθος των εξεταζομένων που

βρίσκονται σε αυτή, σύμφωνα με τον παρακάτω πίνακα:

Άτομα που διαγωνίζονται Αριθμός επιτηρητών

μέχρι και 12 1

από 13 μέχρι και 22 2

περισσότερα από 22 3

Να αναπτύξετε αλγόριθμο ο οποίος: α. Για κάθε αίθουσα, i. θα διαβάζει επαναληπτικά τα

ονόματα των εξεταζομένων που θα βρίσκονται σε αυτήν. Η επαναληπτική διαδικασία πρέπει να

Χρόνος συνδιάλεξης (δευτ.) Χρέωση (euro / δευτ.)

Μέχρι και 120 0.0020

Από 120 μέχρι και 360 0.0016

Άνω των 360 0.0010

Page 45: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 45 από 100

τερματίζεται μόλις εισαχθεί ως όνομα εξεταζομένου το λεκτικό "τέλος". ii. θα εκτυπώνεται το

πλήθος των επιτηρητών που απαιτούνται για αυτήν. β. θα εκτυπώνει το πλήθος των επιτηρητών

που απαιτούνται συνολικά για τη διενέργεια των εξετάσεων. γ. θα εκτυπώνει το μεγαλύτερο

πλήθος εξεταζομένων που θα εξεταστούν σε κάποια αίθουσα. Παρατήρηση: η καταχώρηση των

ατόμων για κάθε αίθουσα είναι σωστή, δεν υπάρχει περίπτωση να παραβιάζεται η χωρητικότητα

κάποιας αίθουσας

Άσκηση 43. Κάθε εισηγμένη στο χρηματιστήριο εταιρεία είναι υποχρεωμένη στο τέλος κάθε

οικονομικού έτους να αποδώσει μέρισμα στους μετόχους της. Η διοίκηση της εταιρείας

ΑΡΒΙΛΟΓΛΟΥ ανακοίνωσε ότι τα μερίσματα που θα αποδοθούν, θα εξαρτηθούν από το πλήθος

των μετοχών και το έτος απόκτησης της παλαιότερης μετοχής του κάθε ενδιαφερόμενου

σύμφωνα με τον παρακάτω πίνακα:

Έτος αγοράς

παλαιότερης μετοχής Πλήθος μετοχών Ευρώ ανά μετοχή

1997 και πρωτύτερα για όλες 2.05

Μεταγενέστερα του 1998 λιγότερες από 150 1.15

από 150 και άνω 1.52

Μεταγενέστερα του 2004 μέχρι και 100 0.92

περισσότερες από 100 1.13

Αν η παλαιότερη μετοχή είναι προγενέστερη του 1985 ή οι μετοχές υπερβαίνουν τις 500 το

μέρισμα προσαυξάνεται κατά 15%. Να αναπτύξετε αλγόριθμο που θα διαβάζει για κάθε έναν από

τους 500.000 μετόχους της εταιρείας το πλήθος των μετοχών που διαθέτει και το έτος που

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

που θα λάβει ως μέρισμα. 2. θα εκτυπώνει το μέσο μέρισμα που θα αποδοθεί ανά μετοχή. 3. θα

διαβάζει το ποσό που δόθηκε ως συνολικό μέρισμα κατά το προηγούμενο οικονομικό έτος και θα

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

Λύση

Αλγόριθμος Χρηματιστήριο

συνολικό_μέρισμα ← 0

Για i από 1 μέχρι 500000

Διάβασε μετοχές, έτος

Αν (έτος > 2004) τότε

Αν (μετοχές <= 100) τότε

μέρισμα ← 0.92 * μετοχές

Αλλιώς

μέρισμα ← 0.92 * 100 + 1.13 * (μετοχές – 100)

Τέλος_αν

Αλλιώς_αν (έτος > 1998) τότε

Αν (μετοχές < 150) τότε ! <= 149

μέρισμα ← 1.15 * μετοχές

Αλλιώς ! >= 150

μέρισμα ← 1.15 * 149 + 1.52 * (μετοχές – 149)

Τέλος_αν

Αλλιώς

μέρισμα ← 2.05 * μετοχές

Τέλος_αν

Αν (έτος < 1985) ή (μετοχές > 500) τότε ! προσαύξηση

μέρισμα ← μέρισμα + 15 / 100 * μέρισμα

Τέλος_αν

Εκτύπωσε μέρισμα

συνολικό_μέρισμα ← συνολικό_μέρισμα + μέρισμα

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

Εκτύπωσε συνολικό_μέρισμα ! ερώτημα 2

Διάβασε συν_μέρισμα_πέρσι

Page 46: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 46 από 100

ποσοστό ← 100 * (συνολικό_μέρισμα – συν_μέρισμα_πέρσι) / συν_μέρισμα_πέρσι

Εκτύπωσε ποσοστό

Τέλος Χρηματιστήριο

Άσκηση 44. Δίνεται το παρακάνω τμήμα αλγορίθμου:

π ← 0

λ ← 0

Αρχή_επανάληψης

Διάβασε Χ

λ ← λ + Χ

π ← π + 1

Μέχρις_ότου λ > 100 ή π = 5 ή Χ = 0

Εμφάνισε λ, π

Μπορείτε δημιουργήσετε κωδικοποίηση σε ψευδογλώσσα που θα υλοποιεί τις παραπάνω εντολές με

τη χρήση της δομής επανάληψης Όσο...επανάλαβε.

Άσκηση 45. Α. Μπορείτε δημιουργήσετε κωδικοποίηση σε ψευδογλώσσα που θα έχει το ίδιο

αποτέλεσμα με τις παρακάτω εντολές, χωρίς να χρησιμοποιήσετε τη δομή Για;

Χ ← 2

C ← 5

Όσο C > 0 επανάλαβε

Για i από 7 μέχρι 12 με_βήμα 2

X ← X + 3

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

C ← C div 2

X ← X + C

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

Β. Μπορείτε δημιουργήσετε κωδικοποίηση σε ψευδογλώσσα που θα έχει το ίδιο αποτέλεσμα με τις

παρακάτω εντολές, χρησιμοποιώντας μόνο τη δομή επανάληψης Για;

α ← 7

Όσο α >= 1 επανάλαβε

β ← α

Αρχή_επανάληψης

Εμφάνισε β

β ← β – 1

Μέχρις_ότου β = 0

α ← α – 2

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

Άσκηση 46. Να αναπτυχθεί αλγόριθμος που θα διαβάζει 2 ακέραιους αριθμούς α, β (πρέπει β

> α) και στη συνέχεια: α. θα εμφανίζει το άθροισμα των ακέραιων αριθμών στο διάστημα [α,

β] β. θα εμφανίζει τους άρτιους αριθμούς στο διάστημα (0, α+β].

Λύση

Αλγόριθμος Αριθμοί

Αρχή_επανάληψης

Διάβασε α, β

Μέχρις_ότου β > α

S ← 0

Για i από α μέχρι β

S ← S + i

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

Εμφάνισε S

Για i από 2 μέχρι α+β με_βήμα 2

Εμφάνισε i

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

Τέλος Αριθμοί

Page 47: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 47 από 100

Άσκηση 47. Ένα παρκινγκ διαθέτει 120 θέσεις και χρεώνει κλιμακωτά τη στάθμευση σε αυτές

σύμφωνα με τον παρακάτω πίνακα:

Ώρες στάθμευσης Κόστος (€)

Λιγότερες από 3 2.5

Από 3 έως λιγότερες από 6 1.5

Από 6 ώρες έως λιγότερες από 9 1

Για τις επιπλέον ώρες το κόστος είναι 10 € για όλες τις

ώρες

Για παράδειγμα, αν ένα αυτοκίνητο έμεινε 4 ώρες θα πληρώσει 8 €, ενώ αν διέμεινε 7 ώρες θα

πληρώσει 11.5 €. Να κατασκευάσετε αλγόριθμο, ο οποίος: α) για κάθε αυτοκίνητο που στάθμευσε

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

οποία να δέχεται μόνο εφ’ όσον είναι μεγαλύτερη από το 0. Θεωρούμε ότι το παρκινγκ γέμισε και

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

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

αναλογεί. δ) να εμφανίζει τις συνολικές εισπράξεις του παρκινγκ. ε) να εμφανίζει το ποσοστό των

αυτοκινήτων που στάθμευσαν περισσότερες από 3 ώρες στο παρκινγκ. στ) Αν κάθε αυτοκίνητο

στάθμευε στο παρκινγκ για 3 ώρες, να εμφανίζεται μήνυμα σχετικά με το αν τα έσοδά του θα

ήταν περισσότερα, λιγότερα ή ίσα με τις πραγματικές εισπράξεις που πραγματοποιήθηκαν.

Λύση

Αλγόριθμος Παρκινγκ

π ← 0

S ← 0

Για i από 1 μέχρι 120

Διάβασε αρ_κυκ

Αρχή_επανάληψης

Διάβασε ώρες

Μέχρις_ότου ώρες > 0

Αν (ώρες <= 2) τότε

χρέωση ← 2.5 * ώρες

Αλλιώς_αν (ώρες <= 5) τότε

χρέωση ← 2 * 2.5 + 1.5 * (ώρες – 2)

Αλλιώς_αν (ώρες <= 8) τότε

χρέωση ← 2 * 2.5 + 1.5 * 3 + 1 * (ώρες – 5)

Αλλιώς

χρέωση ← 2 * 2.5 + 1.5 * 3 + 1 * 3 + 10

Τέλος_αν

Εμφάνισε αρ_κυκ, χρέωση

S ← S + χρέωση

Αν ώρες > 3 τότε

π ← π + 1

Τέλος_αν

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

Εμφάνισε S

Sθ ← 120 * (2 * 2.5 + 1.5 * 1)

ποσοστό ← 100 * π / 120

Εμφάνισε ποσοστό

Αν (Sθ > S) τότε

Εμφάνισε "Θα ήταν περισσότερα"

Αλλιώς_αν (Sθ < S) τότε

Εμφάνισε "Θα ήταν λιγότερα"

Αλλιώς

Εμφάνισε "Θα ήταν ίσα"

Τέλος_αν

Page 48: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 48 από 100

Τέλος Παρκινγκ

Κεφάλαιο 3

Ερωτήσεις 1. Οι δομές δεδομένων διακρίνονται σε στατιστικές και δυναμικές

2. Κάθε δομή μπορεί να χρησιμοποιηθεί σε οποιοδήποτε πρόβλημα ή εφαρμογή

3. Δυναμικές είναι οι δομές που αποθηκεύονται σε συνεχόμενες θέσεις μνήμης

4. Ένας πίνακας έχει σταθερό μέγεθος αλλά μεταβαλλόμενο περιεχόμενο

5. Ένας πίνακας μπορεί να αποθηκεύσει ακεραίους αριθμούς και ονόματα

6. Μία ουρά διατηρεί τα δεδομένα ταξινομημένα ως προς τη σειρά άφιξής τους

7. Η υλοποίηση της ουράς χρησιμοποιεί μία μόνο μεταβλητή-δείκτη για τη διαχείριση των

εισαγωγών/διαγραφών, όπως και η περίπτωση της στοίβας

8. Όταν ψάχνουμε σε ένα τηλεφωνικό κατάλογο χρησιμοποιούμε τη σειριακή μέθοδο αναζήτησης

9. Η δυναμική παραχώρηση μνήμης είναι η τεχνική που χρησιμοποιείται στους πίνακες

10. Υπερχείλιση συμβαίνει όταν συμβεί απώθηση σε γεμάτη στοίβα

11. Υποχείλιση συμβαίνει σε μια ουρά όταν ζητήσουμε διαγραφή και ο δείκτης εμπρός είναι ίσος με

τον δείκτη πίσω

12. Η ταξινόμηση είναι χρήσιμη διαδικασία γιατί έτσι εκτελείται γρηγορότερα η αναζήτηση

13. Δομή δεδομένων είναι ένα σύνολο δεδομένων που μπορούμε να εφαρμόσουμε μια σειρά

λειτουργιών

14. Αλγόριθμοι + Δεδομένα = Προγράμματα

15. Η ουρά και η στοίβα είναι οι μόνες δομές δεδομένων στις οποίες εφαρμόζονται και οι 8

λειτουργίες

16. Η ταξινόμηση ευθείας ανταλλαγής είναι πολύ αποτελεσματική αν ο πίνακας έχει λίγα στοιχεία

17. Για να εφαρμοστεί η μέθοδος της σειριακής αναζήτησης είναι απαραίτητο τα στοιχεία να είναι

ταξινομημένα

18. Τα στοιχεία ενός πίνακα είναι απαραίτητο να είναι όλα του ίδιου τύπου

19. Η σειριακή αναζήτηση μπορεί να οδηγήσει στην προσπέλαση ακόμη και ολόκληρου του πίνακα

20. Η ταξινόμηση έχει ως στόχο να διατάξει τα στοιχεία ενός μονοδιάστατου πίνακα με αύξουσα ή

φθίνουσα διάταξη

21. Η σειριακή αναζήτηση χρησιμοποιείται κυρίως για μικρούς ή μη ταξινομημένους πίνακες

22. Στην υλοποίηση της στοίβας με τη χρήση πίνακα χρησιμοποιούνται 2 δείκτες για να δείχνουν

την είσοδο και την έξοδο των δεδομένων

23. Στη στοίβα το στοιχείο που ωθείται τελευταίο απωθείται πρώτο

24. Η σειριακή αναζήτηση μπορεί να εκτελεστεί μόνο σε μη ταξινομημένους πίνακες

25. Στην ουρά το στοιχείο που εισάγεται πρώτο εξάγεται και πρώτο

26. Στη στοίβα το στοιχείο που εισάγεται τελευταίο εξάγεται και τελευταίο

27. Σε μια ουρά μπορούμε να προσθέσουμε στοιχεία στο μέσο της

28. Ο πίνακας είναι μια δυναμική δομή δεδομένων

29. Η ταξινόμηση της φυσαλίδας ταξινομεί τα στοιχεία ενός μονοδιάστατου πίνακα μόνο σε

αύξουσα σειρά

30. Η θέση ενός στοιχείου σ' έναν δισδιάστατο πίνακα καθορίζεται από δυο αριθμούς

31. Οι διαστάσεις ενός πίνακα μπορούν να μεταβληθούν κατά την διάρκεια εκτέλεσης ενός

αλγορίθμου

32. Η χρήση πινάκων έχει το μειονέκτημα της υπερβολικής χρήσης μνήμης

33. Η ταξινόμηση εφαρμόζεται και σε δισδιάστατους πίνακες

34. Στο ΠΙΝΑΚΑΣ[α, β] το α αντιστοιχεί στη γραμμή του πίνακα και το β στη στήλη

35. Προσπέλαση είναι η εύρεση ενός κόμβου με κάποιο κριτήριο

36. Για την υλοποίηση της ουράς χρησιμοποιούνται δυο δείκτες εμπρός και πίσω

37. Υποχείλιση συμβαίνει όταν εισαχθεί τιμή σε μια γεμάτη στοίβα

Page 49: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 49 από 100

38. Για να προσπελάσουμε τα στοιχεία ενός πίνακα χρησιμοποιούμε επαναληπτική δομή

39. Για τον υπολογισμό μέσου όρου 120 αριθμών πρέπει να χρησιμοποιηθεί πίνακας

40. Στην ουρά όποιο στοιχείο μπαίνει πρώτο, βγαίνει τελευταίο

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

στοιχείου του είναι πάντα

α) γραμμικός β) δισδιάστατος γ) μονοδιάστατος δ) τετραγωνικός

42. Η πληροφορική ως επιστήμη μελετά τους αλγορίθμους σε σχέση με την έννοια των

δεδομένων από τη σκοπιά:

α) υλικού β) θεωρητική γ) ανάλυσης δεδομένων δ) αρχείο

43. Θεωρούμε πίνακα Α διάστασης 3x3, όπου το A[i,j] στοιχείο δίνεται από τον τύπο A[i, j]=i*j.

Να βρεθεί τι θα τυπώσει το παρακάτω τμήμα αλγορίθμου:

s ← 0

p ← 1

Για i από 1 μέχρι 3

s ← s + A[i, i]

p ← p * A[i, i]

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

Εκτύπωσε “s=”, s, “p=”, p

α) s=12 p=48 β) s=14 p=36 γ) s=55 p= 108 δ) s=5 p=6

44. Έστω ο πίνακας Α που περιέχει με την σειρά τους 100 πρώτους άρτιους αριθμούς, (δηλ.

2,4,6,8,...), μετά την εκτέλεση του κάτωθι τμήματος αλγορίθμου:

s ← 0

Για i από 1 μέχρι n

s ←s + A[Α[2*i]]

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

αν το s=80 , τι τιμή θα έχει το n; α) n=2 β) n=3 γ) n=4 δ) n=5

45. Κατά την ώθηση στοιχείου σε στοίβα πραγματοποιείται έλεγχος για ______________

46. Σε μια ___________ δομή δεδομένων το μέγεθος της μνήμης που χρησιμοποιείται δεν είναι

προκαθορισμένο

47. Οι δυναμικές δομές δεδομένων στηρίζονται στην τεχνική ___________ ___________

__________

48. Δεν μπορεί να χρησιμοποιηθεί ο αλγόριθμος της φυσαλίδας σε πίνακα χαρακτήρων

49. Η ταξινόμηση της φυσαλίδας χρησιμοποιείται μόνο σε ταξινομημένους πίνακες

50. Οι δισδιάστατοι πίνακες μπορούν να θεωρηθούν ως μονοδιάστατοι πίνακες όπου κάθε θέση

τους θεωρούνται άλλοι μονοδιάστατοι πίνακες

51. Η σειριακή αναζήτηση και η δυαδική αναζήτηση μπορούν να χρησιμοποιηθούν σε όλους τους

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

52. Οι διαστάσεις ενός πίνακα μπορούν να τροποποιηθούν αν χρειάζεται κατά τη διάρκεια

εκτέλεσης ενός αλγορίθμου

53. Η ταξινόμηση δεν μπορεί να εφαρμοστεί σε δισδιάστατους πίνακες

54. Σε μια ουρά απαιτούνται δυο δείκτες, front και rear

55. Να αντιστοιχίσετε τα στοιχεία της στήλης Α και της στήλης Β

Α Β

1. Πίνακας Α) FIFO

2. Ουρά B) Δυναμική Δομή Δεδομένων

3. Στοίβα Γ) Στατική Δομή Δεδομένων

Δ) LIFO

Page 50: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 50 από 100

Μονοδιάστατοι Πίνακες Άσκηση 1. Ποιά θα είναι τα περιεχόμενα του πίνακα Α μετά την εκτέλεση του παρακάτω

αλγορίθμου;

Αλγόριθμος Δημιουργία_Πίνακα

Για i από 1 μέχρι 5

Α[i] ← i

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

Για i από 2 μέχρι 5

Αν (i mod 2 = 0) τότε

Α[i] ← 2 * A[i - 1] + 1

Αλλιώς

Α[i] ← A[i] + A[i - 1]

Τέλος_αν

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

Αποτελέσματα // Α //

Τέλος Δημιουργία_Πίνακα

Λύση

i A[1] A[2] A[3] A[4] A[5]

1η επανάλ 1 1

2η επανάλ 2 2

3η επανάλ 3 3

4η επανάλ 4 4

5η επανάλ 5 5

1η επανάλ 2 1 2 3 4 5

2 mod 2 = 0 - Ισχύει 3

2η επανάλ 3

3 mod 2 = 0 - Δεν ισχύει 6

3η επανάλ 4

4 mod 2 = 0 - Ισχύει 13

4η επανάλ 5

5 mod 2 = 0 - Δεν ισχύει 18

Οι τελικές τιμές του πίνακα είναι : 1 3 6 13 18

Άσκηση 2. Να αναπτύξετε αλγόριθμο που με δεδομένα τα στοιχεία ενός πίνακα Α[500] θα

μετρά το πλήθος των στοιχείων που είναι μικρότερα του 11 και αυτά που είναι μικρότερα

από το μισό του μέσου όρου.

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

αριθμών θα δημιουργεί νέο πίνακα όπου θα περιέχει μόνο τους θετικούς.

Λύση

Αλγόριθμος Θετικοί

Page 51: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 51 από 100

Δεδομένα // Ν, Α //

Μ ← 0 ! δείκτης νέου πίνακα

Για i από 1 μέχρι Ν

Αν (Α[i] > 0) τότε

Μ ← Μ + 1

Β[Μ] ← Α[i]

Τέλος_αν

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

Αποτελέσματα // Μ, Β //

Τέλος Θετικοί

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

αριθμών θα υπολογίζει και θα εκτυπώνει τον ελάχιστο καθώς και τη θέση του στον

πίνακα.

Άσκηση 5. Σε έναν πίνακα μπορούν να εισαχθούν μόνο οι αριθμοί 1, 9, 11, 25 και 32.

Να αναπτύξετε αλγόριθμο που με δεδομένα τα στοιχεία ενός τέτοιου πίνακα Α[100] θα

μετρά τη συχνότητα εμφάνισης για κάθε έναν από τους παραπάνω αριθμούς.

Λύση

Θα χρησιμοποιήσουμε πίνακα μετρητών 5 θέσεων όπου κάθε θέση θα αποτελεί μετρητή για τους

αριθμούς 1, 9, 11, 25, 32 αντίστοιχα

Αλγόριθμος Μελέτη_Πίνακα

Δεδομένα // Α //

Για i από 1 μέχρι 5

ΣΥΧΝΟΤΗΤΑ[i] ← 0 ! αρχικοποίηση πίνακα μετρητών

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

Για i από 1 μέχρι 100

Επίλεξε Α[i]

Περίπτωση 1

ΣΥΧΝΟΤΗΤΑ[1] ← ΣΥΧΝΟΤΗΤΑ[1] + 1

Περίπτωση 9

ΣΥΧΝΟΤΗΤΑ[2] ← ΣΥΧΝΟΤΗΤΑ[2] + 1

Περίπτωση 11

ΣΥΧΝΟΤΗΤΑ[3] ← ΣΥΧΝΟΤΗΤΑ[3] + 1

Περίπτωση 25

ΣΥΧΝΟΤΗΤΑ[4] ← ΣΥΧΝΟΤΗΤΑ[4] + 1

Περίπτωση Αλλιώς ! 32

ΣΥΧΝΟΤΗΤΑ[5] ← ΣΥΧΝΟΤΗΤΑ[5] + 1

Τέλος_Επιλογών

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

Αποτελέσματα // ΣΥΧΝΟΤΗΤΑ //

Τέλος Μελέτη_Πίνακα

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

αριθμών θα ελέγχει αν τα συμμετρικά του στοιχεία είναι ίσα.

Λύση

Αλγόριθμος Συμμετρικός_Πίνακας

Δεδομένα // Ν, Α //

συμμετρικός ← αληθής ! έστω οι ο πίνακας είναι συμμετρικός

Για i από 1 μέχρι (Ν div 2) ! έλεγχος μέχρι το μέσο του πίνακα

Αν Α[i] <> Α[Ν + 1 - i] τότε ! αν βρεθεί έστω και ένα ζευγάρι άνισων τιμών τότε ο πίνακας δεν

είναι συμμετρικός

συμμετρικός ← ψευδής

Page 52: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 52 από 100

Τέλος_αν

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

Αν (συμμετρικός = αληθής) τότε

Εκτύπωσε "Συμμετρικός πίνακας"

Αλλιώς

Εκτύπωσε "Όχι συμμετρικός πίνακας"

Τέλος_αν

Τέλος Συμμετρικός_Πίνακας

Παρατηρούμε οτι αν βρεθεί κάποιο ζευγάρι άνισων τιμών ο πίνακας αποχαρακτηρίζεται αλλά ο

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

τερματίζεται μόλις βρεθεί ένα άνισο ζεύγος τιμών

Αλγόριθμος Συμμετρικός_Πίνακας_Εναλ

Δεδομένα // Ν, Α //

συμμετρικός ← αληθής

i ← 1

Όσο (i <= N div 2) και (συμμετρικός = αληθής) επανάλαβε

Αν Α[i] <> Α[Ν + 1 - i] τότε

συμμετρικός < ψευδής

Αλλιώς

i ← i + 1

Τέλος_αν

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

Αν (συμμετρικός = αληθής) τότε

Εκτύπωσε "Συμμετρικός πίνακας"

Αλλιώς

Εκτύπωσε "Όχισυμμετρικός πίνακας"

Τέλος_αν

Τέλος Συμμετρικός_Πίνακας_Εναλ

Άσκηση 7. Ο καθηγητής πληροφορικής θέλει να επεξεργαστεί στατιστικά την απόδοση των

μαθητών στο μάθημα Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Από τη

μηχανογράφηση του σχολείου λαμβάνονται με ηλεκτρονικό τρόπο οι προφορικοί βαθμοί των

δυο τετραμήνων και οι γραπτοί βαθμοί μαθητών στις εξετάσεις. Έχοντας υπόψην οτι ο

μέσος προφορικός βαθμός διορθώνεται στην περίπτωση που η διαφορά του με τον γραπτό

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

στο βαθμό πρόσβσης είναι 30% και 70 % αντίστοιχα, να αναπτυχθεί αλγόριθμος που:

i. Θα υπολογίζει και θα εκτυπώνει τους βαθμούς πρόσβασης όλων των μαθητών

ii. Θα εκτυπώνει τα ονόματα των μαθητών με βαθμό πρόσβασης μικρότερο από 9.5

iii. Θα εκτυπώνει τα ονόματα των μαθητών με βαθμό πρόσβασης μεγαλύτερο από 18

iv. Ποιός είναι ο μέγιστος βαθμός πρόσβασης;

v. Πόσοι μαθητές έχουν βαθμός πρόσβασης ίσο με τον μέγιστο;

Λύση

Αλγόριθμος Εξαγωγή_Αποτελεσμάτων

Δεδομένα // ΟΝΟΜΑ, Α_ΤΕΤΡΑΜΗΝΟ, Β_ΤΕΤΡΑΜΗΝΟ, ΓΡΑΠΤΟΣ_ΒΑΘΜΟΣ //

Πλήθος ← 50000

Για i από 1 μέχρι Πλήθος

προφορικός_βαθμός ← (Α_ΤΕΤΡΑΜΗΝΟ[i] + Β_ΤΕΤΡΑΜΗΝΟ[i]) / 2

Αν (προφορικός_βαθμός - ΓΡΑΠΤΟΣ_ΒΑΘΜΟΣ[i] > 2) τότε ! διόρθωση βαθμού

προφορικός_βαθμός ← ΓΡΑΠΤΟΣ_ΒΑΘΜΟΣ[i] + 2

Αλλιώς_Αν (ΓΡΑΠΤΟΣ_ΒΑΘΜΟΣ[i] - προφορικός_βαθμός > 2) τότε

προφορικός_βαθμός ← ΓΡΑΠΤΟΣ_ΒΑΘΜΟΣ[i] - 2

Τέλος_αν

Page 53: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 53 από 100

ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[i] ← 0.7 * ΓΡΑΠΤΟΣ_ΒΑΘΜΟΣ[i] + 0,3 *

προφορικός_βαθμός ! υπολογισμός βαθμού πρόσβασης

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

Εκτύπωσε "Βαθμοί πρόσβασης < 9.5" ! ερώτημα ii

Για i από 1 μέχρι Πλήθος

Αν (ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[i] < 9.5) τότε

Εκτύπωσε ΟΝΟΜΑ[i], ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[i]

Τέλος_αν

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

Εκτύπωσε "Βαθμοί πρόσβασης >= 18" ! ερώτημα iii

Για i από 1 μέχρι Πλήθος

Αν (ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[i] >= 18) τότε

Εκτύπωσε ΟΝΟΜΑ[i], ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[i]

Τέλος_αν

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

μέγιστος < ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[1] ! ερώτημα iv

Για i από 2 μέχρι 30

Αν (ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[i] > μέγιστος) τότε

μέγιστος ← ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[i]

Τέλος_αν

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

Εκτύπωσε "Ο μεγαλύτερος βαθμός πρόσβασης είναι ", ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[θέση] ! τέλος

ερώτημα iv

! Για την επίλυση του ερωτήματος "v" θα προσπελάσουμε ξανά τον πίνακα

ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ, για τον εντοπισμό τιμών ίσων με το μέγιστο

Εκτύπωσε "Ακολουθουν οι βαθμοί πρόσβασης ίσοι με τον μέγιστο" ! ερώτημα v

Για i από 1 μέχρι 30

Αν (ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[i] = μέγιστος) τότε

Εκτύπωσε ΒΑΘΜΟΣ_ΠΡΟΣΒΑΣΗΣ[i]

Τέλος_αν

Τέλος_επανάληψης ! τέλος ερώτημα v

Τέλος Εξαγωγή_Αποτελεσμάτων

Άσκηση 8. Η τράπεζα του κου Αρβίλογλου διαθέτει πελατολόγιο 15000 κατόχων

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

δεδομένα τα στοιχεία των πελατών της τράπεζας και των οφειλών τους θα εκτυπώνει:

i. Τα ονόματα των πελατών της τράπεζας με οφειλές πάνω του μέσου όρου

ii. Τα ονόματα των πελατών με μηδενικές οφειλές

iii. Ποιά είναι η μεγαλύτερη οφειλή προς την τράπεζα

iv. Ποιοι πελάτες έχουν οφειλή ίση με την μέγιστη

Άσκηση 9. Το τμήμα μισθοδοσίας καταχωρεί τις εισπράξεις της αλυσίδας των 30

καταστημάτων "Γιαρίτσιος ΑΕ" που διαθέτει σε έναν πίνακα. Αντίστοιχα, σε έναν πίνακα

30 θέσεων καταχωρούνται τα ονόματα - επωνυμία των καταστημάτων. Να αναπτυχθεί

αλγόριθμος όπου:

i. Να εκτυπώνει το όνομα του καταστήματος με τις μεγαλύτερες εισπράξεις

ii. Να εκτυπώνει το όνομα του καταστήματος με τις μικρότερες εισπράξεις

iii. Να υπολογίζει και να εκτυπώνει το σύνολο των εισπράξεων της εταιρείας και τον μέσο

όρο για κάθε κατάστημα

Δισδιάστατοι Πίνακες Άσκηση 1. Να αναπτύξετε αλγόριθμο ο οποίος με δεδομένα τα στοιχεία δυο δισδιάστατων

πινάκων αριθμών ιδίων διαστάσεων θα εξετάζει αν οι πίνακες είναι ίσοι, ενώ στην

περίπτωση που δεν είναι θα εκτυπώνει το ποσοστό των στοιχείων που είναι ίσα.

Page 54: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 54 από 100

Λύση

Θα ελέγξουμε αν τα στοιχεία στις αντίστοιχες θέσεις είναι ένα προς ένα ίσα

Αλγόριθμος Ισότητα_Πινάκων

Δεδομένα // Ν, Μ, ΠΙΝΑΚΑΣ_1, ΠΙΝΑΚΑΣ_2 //

ισότητα ← αληθής ! έστω οτι οι δυο πίνακες είναι ίσοι

πλήθος ← 0

Για i από 1 μέχρι N

Για j από 1 μέχρι M

Αν ΠΙΝΑΚΑΣ_1[i, j] <> ΠΙΝΑΚΑΣ_2[i, j] τότε

! Αν βρεθεί έστω και ένα ζεύγος τιμών που δεν είναι ίσα τότε οι πίνακες δεν είναι ίσοι

ισότητα ← ψευδής

Αλλιώς

πλήθος ← πλήθος + 1

Τέλος_αν

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

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

Αν (ισότητα = αληθής) τότε

Εκτύπωσε "Οι δύο πίνακες είναι ίσοι"

Αλλιώς

ποσοστό ← πλήθος / (Ν * Μ)

Εκτύπωσε "Οι δύο πίνακες δεν είναι ίσοι, αλλά το ποσοστό των στοιχείων που είναι ίσα είναι ",

ποσοστό

Τέλος_αν

Τέλος Ισότητα_Πινάκων

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

πινάκων αριθμών ιδίων διαστάσεων θα επιστρέφει νέο πίνακα όπου κάθε στοιχείο του θα

είναι το άθροισμα των αντίστοιχων κελιών των δυο αρχικών πινάκων.

Άσκηση 3. Να αναπτύξετε αλγόριθμο ο οποίος θα διαβάζει τα στοιχεία ενός δισδιάστατου

πίνακα αριθμών:

i. Θα διαβάζει έναν αριθμό που θα αντιστοιχεί σε στήλη και θα υπολογίζει το ελάχιστο

της στήλης αυτής

ii. Θα διαβάζει έναν αριθμό που θα αντιστοιχεί σε γραμμή και θα υπολογίζει το μέγιστο

στοιχείο της γραμμής αυτής

Άσκηση 4. Να αναπτύξετε αλγόριθμο ο οποίος θα διαβάζει τα στοιχεία ενός δισδιάστατου

πίνακα αριθμών και θα υπολογίζει το ελάχιστο στοιχείο κάθε στήλης και το μέγιστο

στοιχείο κάθε γραμμής τοποθετώντας τα σε αντίστοιχους πίνακες

Λύση

Αλγόριθμος Επεξεργασία_Πινάκων2

Δεδομένα // Ν, Μ //

Για i από 1 μέχρι N

Για j από 1 μέχρι M

Διάβασε ΠΙΝΑΚΑΣ[i, j]

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

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

Για i από 1 μέχρι N

ΕΛΑΧ_ΓΡΑΜΜΩΝ[i] ← ΠΙΝΑΚΑΣ[i, 1] ! τοποθετώ το πρώτο στοιχείο

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

Αν ΠΙΝΑΚΑΣ[i, j] < ΕΛΑΧ_ΓΡΑΜΜΩΝ[i] τότε

ΕΛΑΧ_ΓΡΑΜΜΩΝ[i] ← ΠΙΝΑΚΑΣ[i, j]

Τέλος_αν

Page 55: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 55 από 100

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

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

Για j από 1 μέχρι M

μέγιστο ← ΠΙΝΑΚΑΣ[1, j] ! τοποθετώ το πρώτο στοιχείο

! προσοχή στο ότι ο πίνακας ΠΙΝΑΚΑΣ προσπελαύνεται στήλη-γραμμή

Για i από 2 μέχρι N

Αν ΠΙΝΑΚΑΣ[i, j] > μέγιστο τότε

μέγιστο ← ΠΙΝΑΚΑΣ[i, j]

Τέλος_αν

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

ΜΕΓ_ΣΤΗΛΩΝ[j]← μέγιστο

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

Αποτελέσματα // Ν, ΕΛΑΧ_ΓΡΑΜΜΩΝ, Μ, ΜΕΓ_ΣΤΗΛΩΝ //

Τέλος Επεξεργασία_Πινάκων2

Άσκηση 5. Να αναπτύξετε αλγόριθμο ο οποίος θα διαβάζει τα στοιχεία ενός δισδιάστατου

πίνακα αριθμών θα εξετάζει αν ο πίνακας είναι αραιός. Θεωρούμε ότι ένας πίνακας είναι

αραιός αν πάνω από 80% του πλήθους των στοιχείων του είναι μηδέν

Λύση

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

συγκριθεί με το 80% των στοιχείων του πίνακα

Αλγόριθμος Αραιός_Πίνακας

Δεδομένα // Ν, Μ //

Για i από 1 μέχρι N

Για j από 1 μέχρι M

Διάβασε Α[i, j]

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

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

πλήθος_μηδέν ← 0

Για i από 1 μέχρι N

Για j από 1 μέχρι M

Αν Α[i, j] = 0 τότε

πλήθος_μηδέν ← πλήθος_μηδέν + 1

Τέλος_αν

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

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

Αν πλήθος_μηδέν >= 0.80 * Ν *Μ τότε

Εκτύπωσε "Ο πίνακας είναι αραιός"

Αλλιώς

Εκτύπωσε "Ο πίνακας δεν είναι αραιός"

Τέλος_αν

Τέλος Αραιός_Πίνακας

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

(διαστάσεων ΝxN) δισδιάστατου πίνακα:

i. θα υπολογίζει και θα εκτυπώνει τo το άθροισμα των στοιχείων της κυρίας διαγωνίου

ii. θα υπολογίζει και θα εκτυπώνει τo το άθροισμα των στοιχείων της δευτερεύουσας

διαγωνίου

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

(διαστάσεων ΝxN) δισδιάστατου πίνακα, να ελέγχει αν ο πίνακας είναι:

i. Άνω τριγωνικός

Page 56: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 56 από 100

ii. Κάτω τριγωνικός

iii. Διαγώνιος

Λύση

i. Ένας πίνακας χαρακτηρίζεται ως άνω τριγωνικός όταν όλα τα στοιχεία που βρίσκονται κάτω

της κυρίας διαγωνίου (έχει οριστεί στην προηγούμενη άσκηση) είναι μηδέν. Τα στοιχεία αυτά είναι

τα περιεχόμενα των κελιών Α[i, j], όπου i > j

ii. Ένας πίνακας χαρακτηρίζεται ως κάτω τριγωνικός όταν όλα τα στοιχεία που βρίσκονται άνω

της κυρίας διαγωνίου (έχει οριστεί στην προηγούμενη άσκηση) είναι μηδέν. Τα στοιχεία αυτά είναι

τα περιεχόμενα των κελιών Α[i, j], όπου i < j

Παρατήρηση: έχει γίνει αντιληπτό ότι τα κελιά Α[i, j], όπου i = j ανήκουν στην κύρια διαγώνιο !!

iii. Ένας πίνακας χαρακτηρίζεται ως διαγώνιος αν είναι ταυτόχρονα άνω και κάτω τριγωνικός

Επομένως ο αλγόριθμος θα είναι:

Αλγόριθμος Τριγωνικοί

Δεδομένα // Ν, Α //

άνω_τριγωνικός ← αληθής ! έστω ότι ο πίνακας είναι άνω τριγωνικός

Για i από 1 μέχρι N

Για j από 1 μέχρι N

Αν (Α[i, j] <> 0) και (i > j) τότε ! αν βρεθεί έστω και ένα στοιχείο <> 0 τον αποχαρακτηρίζω

άνω_τριγωνικός ← ψευδής

Τέλος_αν

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

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

κάτω_τριγωνικός ← αληθής ! έστω ότι ο πίνακας είναι άνω τριγωνικός

Για i από 1 μέχρι N

Για j από 1 μέχρι N

Αν (Α[i, j] <> 0) και (i < j) τότε ! αν βρεθεί έστω και ένα στοιχείο <> 0 τον αποχαρακτηρίζω

κάτω_τριγωνικός ← ψευδής

Τέλος_αν

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

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

Αν (άνω_τριγωνικός = αληθής) και (κάτω_τριγωνικός = αληθής) τότε

Εκτύπωσε "Ο πίνακας είναι διαγώνιος..." ! ερώτημα iii

Αλλιώς_Αν (άνω_τριγωνικός = αληθής) τότε

Εκτύπωσε "Ο πίνακας είναι άνω τριγωνικός..." ! ερώτημα i

Αλλιώς_Αν (κάτω_τριγωνικός = αληθής) τότε

Εκτύπωσε "Ο πίνακας είναι κάτω τριγωνικός..." ! ερώτημα ii

Αλλιώς

Εκτύπωσε "Ο πίνακας δεν έχει καμία απο τις ιδιότητες της εκφώνησης..."

Τέλος_αν

Τέλος Τριγωνικοί

Άσκηση 8. Να μετατρέψετε σε κωδικοποίηση το παρακάτω διάγραμμα ροής

Page 57: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 57 από 100

Λύση

max ← Α[1, 1]

Για i από 1 μέχρι 20

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

Αν (Α[i, j] > max) τότε

max ← Α[i, j]

Τέλος_αν

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

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

Εκτύπωσε max

Άσκηση 9. Να αναπτύξετε αλγόριθμο που θα συνενώνει (λειτουργία συγχώνευσης) δύο

πίνακες: Α διαστάσεων Ν1xM και Β διαστάσεων Ν2xM

Page 58: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 58 από 100

Λύση

Θα μεταφέρουμε τον πίνακα Α στο "πάνω μέρος" του πίνακα Γ στις γραμμές 1..Ν1 και στη συνέχεια

θα μεταφερθεί ο πίνακας Β στον πίνακα Γ στις γραμμές Ν1+1..Ν1+Ν2. Όμοια, η συνένωση θα

μπορούσε να πραγματοποιηθεί κατά "πλάτος"

Αλγόριθμος Συνένωση_Πινάκων

Δεδομένα // Ν1, Μ, Ν2, Α, Β //

Για i από 1 μέχρι Ν1

Για j από 1 μέχρι Μ

Γ[i, j] ← A[i, j]

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

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

Για i από N1+1 μέχρι N1+Ν2

Για j από 1 μέχρι M

Γ[i, j] ← B[i - N1, j]

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

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

N ← N1 + N2

Αποτελέσματα // Γ, Ν //

Τέλος Συνένωση_Πινάκων

Άσκηση 10. Η ΕΜΥ μελετάει τις θερμοκρασίες σε διάφορες πόλεις της Ελλάδας.

Καταχωρούνται λοιπόν τα ονόματα των 100 πόλεων που συμμετέχουν στην έρευνα καθώς

και οι θερμοκρασίες των πόλεων αυτών τον μήνα που πέρασε. Να αναπτυχθεί αλγόριθμος

όπου:

i. Θα διαβάζει τα απαραίτητα στοιχεία. Να περιγραφούν οι δομές δεδομένων που θα

χρησιμοποιηθούν

ii. Θα εντοπίζει και θα εκτυπώνει το όνομα της κατά μέσο όρο θερμότερης πόλης του

μήνα

iii. Θα εντοπίζει για κάθε πόλη τις μέρες του μήνα όπου υπάρχει θερμοκρασία μεγαλύτερη

από την προηγούμενη και την επόμενη μέρα

Άσκηση 11. Να αναπτυχθεί αλγόριθμος που θα επεξεργάζεται τα στοιχεία των αγώνων

ποδοσφαίρου. Θα καταχωρεί σε δισδιάστατο πίνακα τα γκολ που πέτυχε κάθε μια από τις

16 ομάδες του πρωταθλήματος σε κάθε μία από τις 32 αγωνιστικές του πρωταθλήματος

και θα εκτυπώνει:

i. Ποιά ομάδα και σε ποια αγωνιστική πέτυχε τα περισσότερα γκολ;

ii. Την καλύτερη επίθεση του πρωταθλήματος

iii. Την χειρότερη επίθεση του πρωταθλήματος

iv. Σε πόσους αγώνες κάθε ομάδα πέτυχε περισσότερα γκολ από το μέσο όρο της;

Γενικές Ασκήσεις στους Πίνακες Άσκηση 1. Η στατιστική υπηρεσία της ευρωπαϊκής ένωσης για μια μελέτη σχετικά με τον

πληθυσμό στα ευρωπαϊκά κράτη διατηρεί πίνακα ΧΩΡΑ[25] με τα ονόματα των κρατών –

μελών και παράλληλους πίνακες ΠΛΗΘ_2005 και ΠΛΗΘ_2006 με τους πληθυσμούς των

κρατών αυτών για τα έτη 2005 και 2006 αντίστοιχα. Να αναπτύξετε αλγόριθμο που με

Page 59: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 59 από 100

δεδομένους τους παραπάνω πίνακες:

1. Να εμφανίζει την επί τοις εκατό αύξηση του πληθυσμού στην ευρωπαϊκή ένωση από το

2005 στο 2006.

2. Να εμφανίζει για κάθε κράτος την επί τοις εκατό αύξηση του πληθυσμού από το 2005

στο 2006. Ποιο κράτος είχε τη μεγαλύτερη επί τοις εκατό αύξηση.

3. Το ίδιο κράτος είχε τους περισσότερους κατοίκους τα δυο έτη; Αν ναι, τότε ποιο είναι

αυτό;

Λύση

Αλγόριθμος Στατιστικά

Δεδομένα // ΧΩΡΑ, ΠΛΗΘ_2005, ΠΛΗΘ_2006 //

S2005 ← 0

S2006 ← 0

Για i από 1 μέχρι 25

S2005 ← S2005 + ΠΛΗΘ_2005[i]

S2006 ← S2006 + ΠΛΗΘ_2006[i]

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

ποσοστό ← 100 * (S2006 – S2005) / S2005

Εμφάνισε ποσοστό

max ← 100 * (ΠΛΗΘ_2006[1] – ΠΛΗΘ_2005[1]) / ΠΛΗΘ_2005[1]

Για i από 1 μέχρι 25

ποσοστό ← 100 * (ΠΛΗΘ_2006[i] – ΠΛΗΘ_2005[i]) / ΠΛΗΘ_2005[i]

Eμφάνισε ποσοστό

Αν max < ποσοστό τότε

max ← ποσοστό

θ ← i

Τέλος_αν

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

Εμφάνισε ΧΩΡΑ[θ]

! ... εύρεση μεγίστου και θέσης για τους πίνακες ΠΛΗΘ_2005 και ΠΛΗΘ_2006

Αν θ2005 = θ2006 τότε

Εμφάνισε "Η ίδια χώρα είχε μέγιστο πληθυσμό και τις δυο χρονιές", ΧΩΡΑ[θ2006]

Αλλιώς

Εμφάνισε "Άλλη χώρα μέγιστο πληθυσμό κάθε χρονιά"

Τέλος_αν

Τέλος Στατιστικά

Άσκηση 2. Να αναπτύξετε αλγόριθμο ο οποίος:

α. θα διαβάζει τον αριθμό των μαθητών της Α’ λυκείου ενός σχολείου. Πρέπει να είναι

θετικός αριθμός.

β. θα διαβάζει για κάθε μαθητή το όνομά του και το βαθμό του (στην εικοσαβάθμια

κλίμακα) πραγματοποιώντας έλεγχο δεδομένων.

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

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

ε. θα εκτυπώνει τα ονόματα των μαθητών που έχουν βαθμό πλησιέστερα στο μέσο όρο.

Λύση

Αλγόριθμος Λύκειο

Αρχή_επανάληψης

Διάβασε Ν

Μέχρις_ότου Ν > 0

π ← 0

Για i από 1 μέχρι Ν

Page 60: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 60 από 100

Διάβασε O[i]

Αρχή_επανάληψης

Διάβασε Β[i]

π ← π + 1

Μέχρις_ότου Β[i] >= 0 και B[i] <= 20

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

Εκτύπωσε π – Ν ! όλες οι εκχωρήσεις – τις Ν έγκυρες

! ... υπολογισμός αθροίσματος στοιχείων πίνακα Β

μο ← S / Ν

Εκτύπωσε μο ! ερώτημα δ

min ← Α_Τ(Β[1] – μο)

Για i από 2 μέχρι Ν

Αν Α_Τ(Β[i] – μο) < min τότε

min ← Α_Τ(Β[i] – μο)

Τέλος_αν

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

Για i από 1 μέχρι Ν

Αν Α_Τ(Β[i] – μο) = min τότε

Εκτύπωσε Ο[i]

Τέλος_αν

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

Τέλος Λύκειο

Άσκηση 3. Η γραμματεία του λυκείου Τενεούπολης καταχωρεί τα ονόματα των μαθητών

της 100 μαθητών της Α λυκείου και τους 10 βαθμούς του κάθε μαθητή στα μαθήματα που

βαθμολογήθηκε. Να αναπτύξετε αλγόριθμο που:

α. θα διαβάζει τα παραπάνω στοιχεία σε κατάλληλους πίνακες.

β. θα εκτυπώνει το όνομα του 5ου μαθητή και πόσες φορές έχει βαθμό άριστα.

γ. θα εκτυπώνει το μέσο όρο του 23ου μαθητή.

δ. θα εκτυπώνει το μεγαλύτερο βαθμό στο 3ο μάθημα και το όνομα του μαθητή.

ε. θα εκτυπώνει το μέσο όρο στο 1ο μάθημα.

Λύση

Αλγόριθμος Λύκειο

Για i από 1 μέχρι 100 ! ερώτημα 1

Διάβασε Ο[i]

Για j από 1 μέχρι 10

Διάβασε B[i, j]

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

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

Εκτύπωσε Ο[5]

π ← 0

Για j από 1 μέχρι 10

Αν Β[5, j] >= 18 τότε

π ← π + 1

Τέλος_αν

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

Εκτύπωσε π

S ← 0 ! ερώτημα 3

Για j από 1 μέχρι 10

S ← S + ΕΙΣ[23, j]

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

μο ← S / 10

Page 61: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 61 από 100

Εκτύπωσε μο

max ← Β[1, 3] ! ερώτημα 4

γρ ← 1

Για i από 2 μέχρι 100

Αν Β[i, 3] > max τότε

max ← Β[i, 3]

γρ ← i

Τέλος_αν

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

Εκτύπωσε Ο[γρ], max

S ← 0 ! ερώτημα 5

Για i από 1 μέχρι 10

S ← S + B[i, 1]

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

μο ← S / 100

Εκτύπωσε μο

Τέλος Λύκειο

Άσκηση 4. Σε πίνακες Π2005[200, 12] και Π2006[200, 12] έχουμε αποθηκεύσει τις

μηνιαίες πωλήσεις των 200 σημείων πώλησης της εταιρείας για τα έτη 2005 και 2006

αντίστοιχα. Να αναπτύξετε αλγόριθμο που θα εκτυπώνει:

1. Ποιο σημείο πώλησης και σε ποιο μήνα επέτυχε τις περισσότερες πωλήσεις το 2005

και ποιο το 2006; Πρόκειται για το ίδιο σημείο πώλησης;

2. Ο Μάιος του 2005 ήταν πιο προσοδοφόρος ή αυτός του 2006;

3. Πόσες φορές το σημείο πώλησης 33 είχε μεγαλύτερες πωλήσεις το 2005 και πόσες

λιγότερες σε σχέση με το 2006.

4. Το 2005 ήταν καλύτερο για την εταιρεία ή το 2006;

Άσκηση 5. Διαθέτουμε σε κατάλληλους πίνακες τις μηνιαίες πωλήσεις των 200 πωλητών

της εταιρείας μας. Να αναπτύξετε αλγόριθμο ο οποίος:

1. θα εκτυπώνει πόσοι πωλητές έχουν επιτύχει συνολικό ποσό πωλήσεων μεγαλύτερο από

1000€ κατά τους μήνες Ιούνιο-Ιούλιο-Αύγουστο.

2. Πόσοι πωλητές είχαν το Σεπτέμβριο περισσότερες πωλήσεις από τον Μάιο.

3. Πόσοι πωλητές ήταν καλύτεροι το 2ο τρίμηνο σε σχέση με το 1ο.

4. Ο 10ος πωλητής ποιους μήνες επέτυχε πωλήσεις περισσότερες από 2000€;

5. Ο 100ος πωλητής με έναρξη τον Ιανουάριο ποιο μήνα επέτυχε συγκεντρωτικές

πωλήσεις περισσότερες από 10.000€; Αν δεν ξεπέρασε το όριο αυτό να εμφανίζεται

κατάλληλο μήνυμα.

Άσκηση 6. Καταγράφουμε σε πίνακα ΟΝ τα ονόματα των 130 μαθητών της Γ γυμνασίου

του δήμου Τενεούπολης και σε πίνακα Β τους βαθμούς κάθε μαθητή σε κάθε ένα από τα

10 μαθήματα. Να αναπτύξετε αλγόριθμο ο οποίος αφού διαβάζει τα στοιχεία των πινάκων

ΟΝ και Β:

α. να εμφανίζει ποιος μαθητής έχει το μεγαλύτερο μέσο όρο, που να είναι όμως

μικρότερος από 17.

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

βρίσκονται στο διάστημα [14, 18].

γ. να εμφανίζει τους μαθητές που είχαν τις περισσότερες φορές τον υψηλότερο βαθμό σε

κάποιο μάθημα.

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

Άσκηση 7. Διαθέτουμε έναν πίνακα Ο[10.000.000] με όλα τα ονόματα των ελλήνων. Να

αναπτύξετε αλγόριθμο που:

1. θα δημιουργεί πίνακα ΜΟΝΑΔ με όλα τα διαφορετικά ονόματα που υπάρχουν.

Page 62: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 62 από 100

2. Θα εκτυπώνει κάθε μοναδικό όνομα καθώς και το πόσες φορές συναντάται. Ποιο είναι

το πιο δημοφιλές όνομα; .

Λύση

Αλγόριθμος Στατιστική

Δεδομένα // Ο //

ΜΗΝΑΣ[1] ← Ο[1] ! πέρνα το πρώτο όνομα

μ ← 1

Για k από 2 μέχρι 10000000

!... σειριακή αναζήτηση στον πίνακα ΜΟΝΑΔ (στοιχεία μ)

! με κλειδί το Ο[k]

Αν done = ψευδής τότε

μ ← μ + 1

ΜΟΝΑΔ[μ] ← Ο[k]

Τέλος_αν

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

! ερώτημα 2, δημιουργία πίνακα ΣΥΧΝ, μ στοιχεία

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

ΣΥΧΝ[i] ← 0

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

Για i από 1 μέχρι μ ! α τρόπος

! ... σειριακή αναζήτηση στον πίνακα ΜΟΝΑΔ με κλειδί το Ο[k]

ΣΥΧΝ[pos] ← ΣΥΧΝ[pos] + 1 ! σίγουρα βρέθηκε

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

Για i από 1 μέχρι μ ! β τρόπος

Για k από 1 μέχρι 10000000

Αν ΜΟΝΑΔ[i] = O[k] τότε

ΣΥΧΝ[i] ← ΣΥΧΝ[i] + 1

Τέλος_αν

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

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

! ... εύρεση μεγίστου πίνακα ΣΥΧΝ (μ στοιχεία)

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

Αν ΣΥΧΝ[i] = max τότε

Εκτύπωσε ΜΟΝΑΔ[i]

Τέλος_αν

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

Τέλος Στατιστική

Άσκηση 8. Μια εταιρεία διανομής κινηματογραφικών ταινιών έχει καταγράψει στους

παρακάτω πίνακες τα στοιχεία για την διακίνηση των ταινιών της παγκόσμια, για τη

χρονιά που πέρασε: πίνακας ΤΑΙΝΙΑ[200] που περιέχει τους τίτλους των ταινιών,

πίνακας ΧΩΡΑ[120] που περιέχει τα ονόματα των 120 χωρών στις οποίες η εταιρεία

δραστηριοποιείται και πίνακα ΕΙΣΠΡΑΞΕΙΣ[200, 120] που περιέχει τις εισπράξεις από

την προβολή κάθε ταινίας σε κάθε χώρα (αν κάποια ταινία δεν προβλήθηκε σε κάποια

χώρα υπάρχει η τιμή μηδέν). Να αναπτύξετε αλγόριθμο που θα διαβάζει τους παραπάνω

πίνακες και στη συνέχεια:

1. θα εκτυπώνει τις ταινίες που έχουν τουλάχιστον σε 3 χώρες εισπράξεις μεγαλύτερες

από 100.000€. Θα εκτυπωθεί μια φορά το όνομα κάθε ταινίας.

2. θα διαβάζει το όνομα μιας χώρας και θα εκτυπώνει πόσες ταινίες έχουν προβληθεί σε

αυτή.

3. θα διαβάζει τον τίτλο μιας ταινίας και θα εκτυπώνει τις χώρες που προβλήθηκε με

Page 63: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 63 από 100

διάταξη από αυτήν με τις περισσότερες εισπράξεις προς αυτήν με τις λιγότερες. Οι χώρες

που η ταινία δεν προβλήθηκε να μην εκτυπώνονται.

Άσκηση 9. Ένας εκδοτικός οίκος χρησιμοποιεί 35 διανομείς για τη διακίνηση των βιβλίων

του. Στο τέλος κάθε μήνα καταγράφονται οι πωλήσεις που πραγματοποιήθηκαν από κάθε

διανομέα ώστε να υπολογιστεί και το μπόνους που θα του αποδοθεί. Είναι ευνόητο ότι οι

πωλήσεις ενός διανομέα σε χρονικό διάστημα ενός μηνός δεν είναι κατ’ ανάγκην 30. Το

ποσό του μπόνους υπολογίζεται κλιμακωτά ανάλογα με το ποσό των μηνιαίων πωλήσεων

κάθε διανομέα σύμφωνα με τον παρακάτω πίνακα:

Συνολικές μηνιαίες

πωλήσεις διανομέα (€)

Μπόνους

%

Μέχρι και 200 0

Άνω των 200 μέχρι και

1000

1.5

Άνω των 1000 4

Να αναπτύξετε αλγόριθμο που θα επιτελεί τις παρακάτω ενέργειες:

1. Για κάθε διανομέα: α. θα διαβάζει το όνομά του και θα το καταχωρεί σε πίνακα Ο καθώς

και το μηνιαίο βασικό μισθό του και θα το καταχωρεί σε πίνακα Β.

β. θα διαβάζει επαναληπτικά τα ποσά των πωλήσεων που πέτυχε τον προηγούμενο μήνα και

θα υπολογίζει τις συνολικές μηνιαίες πωλήσεις. Η επαναληπτική διαδικασία θα ολοκληρώνεται

όταν εισαχθεί αρνητικός αριθμός ή το μηδέν.

γ. θα υπολογίζει το μπόνους που θα λάβει και θα το εκτυπώνει.

2. Θα δημιουργεί πίνακα Τ, που θα περιέχει τις τελικές μηνιαίες απολαβές κάθε διανομέα.

3. Να εκτυπώνονται τα ονόματα όσων διανομέων είχαν το δεύτερο μεγαλύτερο τελικό μισθό

μεταξύ των υπαλλήλων του εκδοτικού οίκου.

4. Θα ελέγχει ποιος διανομέας έχει τον υψηλότερο τελικό μισθό που να είναι ταυτόχρονα

μικρότερος από 600 € και θα εκτυπώνει το όνομά του. Αν δεν υπάρχει τέτοιος, να

εκτυπώνεται κατάλληλο μήνυμα. .

Άσκηση 10. Η Γ λυκείου Τενεούπολης διοργανώνει λαχειοφόρο αγορά ώστε να

συγκεντρώσει χρήματα για την εκδρομή. Όλοι οι λαχνοί είναι αριθμημένοι με τετραψήφιο

αριθμό και πουλήθηκαν όλα. Τα δώρα θα μοιραστούν ως εξής:

- Όποιοι έχουν λαχνό με αριθμό που το τελευταίο ψηφίο είναι ίδιο με αυτό του τυχερού

λαχνού κερδίζουν μια μπλούζα.

- Όποιοι έχουν λαχνό με αριθμό που τα 2 πρώτα ή 2 τελευταία ψηφία είναι ίδια με αυτά

του τυχερού λαχνού κερδίζουν μια δωροεπιταγή.

- Όποιοι έχουν λαχνό με αριθμό που τα 3 τελευταία ψηφία είναι ίδια με αυτά του τυχερού

λαχνού κερδίζουν ένα mp3 player.

- Όποιος έχει τον τυχερό αριθμό κερδίζει μια συσκευή κινητού.

Να αναπτύξετε αλγόριθμο που με δεδομένους πίνακες Ο, ΑΡΘ που περιέχουν τα ονόματα

και τους αριθμούς των λαχνών που κατέχουν (κάθε λαχνός αποτελεί μια γραμμή των

πινάκων), θα διαβάζει τον τυχερό αριθμό που κληρώθηκε και θα εκτυπώνει τα ονόματα

των τυχερών ακολουθούμενα από τα δώρα που κερδίζουν.

Άσκηση 11. Τα 3 σχολεία της Τενεούπολης συμμετέχουν σε μαθητικό διαγωνισμό

μαραθωνίου, από κάθε σχολείο αγωνίζονται 30 μαθητές. Δίνονται για κάθε σχολείο δυο

παράλληλοι πίνακες με τα όνομα και το χρόνο κάθε μαθητή, με τους χρόνους σε αύξουσα

διάταξη. Θεωρούμε ότι οι χρόνοι όλων των μαθητών είναι διαφορετικοί μεταξύ τους. Να

αναπτύξετε αλγόριθμο ο οποίος θα διαβάζει το όνομα ενός μαθητή του τρίτου σχολείου και

θα εκτυπώνει: πόσοι μαθητές είχαν χρόνο μικρότερο από αυτόν καθώς τα ονόματά τους

ξεκινώντας από αυτόν που τερμάτισε πρώτος. Αν αυτός ο μαθητής δεν αγωνίστηκε να

εκτυπώνεται κατάλληλο μήνυμα.

Άσκηση 12. Η υπηρεσία τηλεφωνικού καταλόγου διατηρεί τα στοιχεία των κατόχων

τηλεφώνου χρησιμοποιώντας μονοδιάστατο πίνακα Π, που κάθε ζευγάρι στοιχείων του

Page 64: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 64 από 100

αφορούν έναν κάτοχο τηλεφώνου ως εξής: η θέση 1 περιέχει το όνομα και η θέση 2 το

τηλέφωνο του πρώτου κατόχου τηλεφώνου, η θέση 3 περιέχει το όνομα και η θέση 4 το

τηλέφωνο του δεύτερου κατόχου τηλεφώνου κ.ο.κ. Να αναπτύξετε αλγόριθμο που με

δεδομένο τον πίνακα Π:

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

β. θα εκτυπώνει με αλφαβητική σειρά τους κατόχους τηλεφώνου και τα τηλέφωνά τους.

Άσκηση 13. Η εταιρεία DeltaTime Systems εξοπλίζει αθλητικούς αγώνες με συστήματα

χρονομέτρησης. Τα συστήματα αυτά δημιουργούν δυο παράλληλους πίνακες: τον πίνακα

ΚΩΔΙΚΟΣ με τον κωδικό αριθμό κάθε αθλητή και τον πίνακα ΧΡΟΝΟΣ με τον χρόνο που

χρειάστηκε ο αθλητής να τερματίσει. (Οι πίνακες είναι ταξινομημένοι ως προς τον χρόνο).

Η διοργανώτρια επιτροπή διαθέτει τον πίνακα ΑΘΛΗΤΗΣ που περιέχει ως πρώτη στήλη

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

αλγόριθμο που, με δεδομένους τους παραπάνω πίνακες:

α. Θα δημιουργεί τον πίνακα ΘΕΣΗ που είναι παράλληλος με τον πίνακα ΑΘΛΗΤΗΣ και

περιέχει τη θέση που κατέλαβε κάθε αθλητής.

β. Θα εκτυπώνει αλφαβητικά τα ονόματα των αθλητών και τη θέση που κατέλαβαν.

Λύση

Αλγόριθμος DeltaTime

Δεδομένα // Πλήθος, ΚΩΔΙΚΟΣ, ΑΘΛΗΤΗΣ //

Για k από 1 μέχρι Πλήθος

βρέθηκε ← Ψευδής

pos ← 0

i ← 1

Όσο (βρέθηκε = Ψευδής) και (i <= Πλήθος) επανάλαβε

Αν ΑΘΛΗΤΗΣ[k, 2] = ΚΩΔΙΚΟΣ[i] τότε

βρέθηκε ← Aληθής

pos ← i

Αλλιώς

i ← i + 1

Τέλος_αν

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

! ο αθλητής έχει βρεθεί σίγουρα

ΘΕΣΗ[k] ← pos

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

! αύξουσα ταξινόμηση πίνακα ΟΝΟΜΑ με αντιμετάθεση πίνακα ΘΕΣΗ

Για i από 1 μέχρι Πλήθος

Εκτύπωσε ΟΝΟΜΑ[i], ΘΕΣΗ[i]

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

Τέλος DeltaTime

Επεξεργασίες στους Πίνακες Άσκηση 1. Να αναπτυχθεί αλγόριθμος που θα διαβάζει σε μονοδιάστατο πίνακα την

ημερήσια μέτρηση του διοξειδίου του άνθρακα (αριθμός μεταξύ του 0 και του 10) για ένα

σημείο της Αθήνας, για έναν μήνα, και θα εκτυπώνει:

α. τις ημέρες που η μέτρηση ήταν μεγαλύτερη από την προηγούμενη και την επόμενη

ημέρα, καθώς και το πλήθος αυτών των ημερών,

β. τις ημέρες που παρατηρήθηκε ρυθμός αύξησης μεγαλύτερος από 15%, καθώς και τον

μεγαλύτερο ρυθμό αύξησης και την ημέρα που επιτεύχθηκε.

Λύση

Αλγόριθμος Μελέτη_μόλυνσης

Page 65: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 65 από 100

Για i από 1 μέχρι 30

Αρχή_επανάληψης

Διάβασε ΜΟΛΥΝΣΗ[i]

Μέχρις_ότου (ΜΟΛΥΝΣΗ[i] >= 0) και (ΜΟΛΥΝΣΗ[i] <= 10)

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

ημέρες ← 0 ! ερώτημα α

! πρέπει να υπάρχει προηγούμενη αλλά και επόμενη ημέρα

Για i από 2 μέχρι 29

Αν (ΜΟΛΥΝΣΗ[i] > ΜΟΛΥΝΣΗ[i + 1]) και (ΜΟΛΥΝΣΗ[i] > ΜΟΛΥΝΣΗ[i – 1]) τότε

Εκτύπωσε "Ημέρα", i

ημέρες ← ημέρες + 1

Τέλος_αν

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

Εκτύπωσε "Πλήθος ημερών", ημέρες

μέγιστος ← –1 ! πολύ μικρή τιμή, ερώτημα β

Για i από 2 μέχρι 30 ! πρέπει να υπάρχει προηγούμενη ημέρα

ρυθμός ← ((ΜΟΛΥΝΣΗ[i] – ΜΟΛΥΝΣΗ[i – 1]) / ΜΟΛΥΝΣΗ[i – 1]) * 100

Αν ρυθμός > 15 τότε

Εκτύπωσε "Ημέρα", i

Τέλος_αν

Αν ρυθμός > μέγιστος τότε

μέγιστος ← ρυθμός

ημέρα ← i

Τέλος_αν

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

Εκτύπωσε "Μέγιστο την ημέρα", ημέρα

Τέλος Μελέτη_μόλυνσης

Άσκηση 2. Ο Ελληνικός Οργανισμός Τουρισμού αποφάσισε να διεξαγάγει μια έρευνα για τα

ελληνικά ξενοδοχεία. Στην έρευνα συμμετέχουν τα 7000 ξενοδοχεία της επικράτειας, και

γι’ αυτά καταγράφονται οι μηνιαίες εισπράξεις για το περασμένο έτος. Να αναπτυχθεί

αλγόριθμος που:

α. Θα διαβάζει τα απαραίτητα στοιχεία.

β. Θα υπολογίζει τις ετήσιες εισπράξεις κάθε ξενοδοχείου και θα τις εκχωρεί σε έναν νέο

πίνακα.

γ. Θα εκτυπώνει το όνομα του ξενοδοχείου με τις περισσότερες εισπράξεις.

δ. Θα υπολογίζει και θα εκτυπώνει το όνομα κάθε ξενοδοχείου συνοδευόμενο από το

πλήθος των μηνών που λειτούργησε (δηλαδή είχε έσοδα) την περασμένη χρονιά.

ε. Θα δημιουργεί και θα εκτυπώνει τον πίνακα ΤΡΙΜΗΝΑ[4], που περιέχει τις εισπράξεις

που παρουσιάστηκαν ανά τρίμηνο. .

Λύση

Αλγόριθμος ΕΟΤ

Για i από 1 μέχρι 7000 ! ερώτημα α

Διάβασε ΟΝΟΜΑ[i]

Για j από 1 μέχρι 12

Διάβασε ΕΙΣΠΡΑΞΕΙΣ[i, j]

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

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

Για i από 1 μέχρι 7000 ! ερώτημα β

άθροισμα ← 0

Για j από 1 μέχρι 12

άθροισμα ← άθροισμα + ΕΙΣΠΡΑΞΕΙΣ[i, j]

Page 66: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 66 από 100

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

ΕΤΗΣΙΕΣ_ΕΙΣΠΡΑΞΕΙΣ[i] ← άθροισμα

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

! ... ερώτημα γ: εύρεση μεγίστου και θέσης του στον πίνακα ΕΤΗΣΙΕΣ_ΕΙΣΠΡΑΞΕΙΣ

Εκτύπωσε "Το ξενοδοχείο με τις περισσότερες εισπράξεις", ΟΝΟΜΑ[θέση]

Για i από 1 μέχρι 7000 ! ερώτημα δ

μη_μηδεν ← 0

Για j από 1 μέχρι 12

Αν ΕΙΣΠΡΑΞΕΙΣ[i, j] <> 0 τότε

μη_μηδεν ← μη_μηδεν + 1 ! δεν χρησιμοποιούμε πίνακα μετρητών

Τέλος_αν

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

Εκτύπωσε " Το ξενοδοχείο", ΟΝΟΜΑ[i], "λειτούργησε", μη_μηδεν, "μήνες"

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

Για j από 1 μέχρι 4 ! ερώτημα ε

άθροισμα ← 0

αρχή_τριμήνου ← 3 * (j – 1) ! πού ξεκινάει το τρίμηνο j

Για i από 1 μέχρι 7000

Για k από 1 μέχρι 3 ! οι 3 μήνες του τριμήνου

άθροισμα ← άθροισμα + ΕΙΣΠΡΑΞΕΙΣ[i, αρχή_τριμήνου + k]

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

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

ΤΡΙΜΗΝΑ[j] ← άθροισμα

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

Για j από 1 μέχρι 4

Εκτύπωσε ΤΡΙΜΗΝΑ[j]

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

Τέλος ΕΟΤ

Άσκηση 3. Η εταιρεία Αρβίλογλου διαθέτει μια ομάδα πωλητών (Ν στο πλήθος) σε όλη την

Ελλάδα. Καταγράφονται σε μονοδιάστατο πίνακα ΟΝΟΜΑ[Ν] τα ονόματα των πωλητών της

εταιρείας και σε δισδιάστατο πίνακα ΠΩΛΗΣΕΙΣ[Ν, 12] οι μηνιαίες πωλήσεις που

πέτυχαν τον περασμένο χρόνο. Να αναπτυχθεί αλγόριθμος που:

α. Θα διαβάζει τα απαραίτητα στοιχεία και θα τα αποθηκεύει στους παραπάνω πίνακες.

β. Θα δημιουργεί τον πίνακα ΣΥΝ_ΠΩΛΗΣΕΙΣ που θα περιέχει τις συνολικές ετήσιες

πωλήσεις κάθε πωλητή.

γ. Θα δημιουργεί τον πίνακα ΚΑΛΟΙ που θα περιέχει τα ονόματα των πωλητών με

συνολικές πωλήσεις περισσότερες από 1500 €.

δ. Θα δημιουργεί τον πίνακα ΜΠΟΝΟΥΣ που θα περιέχει το μπόνους κάθε πωλητή. Το

μπόνους υπολογίζεται με βάση τις πωλήσεις κάθε πωλητή ως εξής:

Πωλήσεις S (σε €) Μπόνους (%)

επί των πωλήσεων

0 < S < 200 11

200 < S < 500 15

500 < S 20

Ο πίνακας ΜΠΟΝΟΥΣ αποτελεί την έξοδο του αλγορίθμου.

Άσκηση 4. Η εταιρεία DeltaTime Systems εξοπλίζει έναν αθλητικό αγώνα με σύστημα

χρονομέτρησης. Το σύστημα δημιουργεί δύο παράλληλους πίνακες: τον πίνακα ΟΝΟΜΑ, με

το όνομα κάθε αθλητή, και τον πίνακα ΚΑΤΑΤΑΞΗ, του οποίου η πρώτη θέση περιέχει

τον χρόνο που χρειάστηκε να τερματίσει ο πρώτος αθλητής (σε δευτερόλεπτα) και κάθε

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

αναπτυχθεί αλγόριθμος που, με δεδομένους τους παραπάνω πίνακες για έναν αγώνα 5000

Page 67: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 67 από 100

μέτρων όπου συμμετείχαν 52 αθλητές, θα εκτελεί τις εξής ενέργειες:

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

τερματίσει.

β. Θα εκτυπώνει τον χρόνο που διήρκεσε η κούρσα (χρόνος τελευταίου αθλητή).

γ. Θα εκτυπώνει το πλήθος των αθλητών που είχαν τερματίσει στα μισά της κούρσας.

Άσκηση 5. Γνωστή γκαλερί των Αθηνών χρησιμοποιεί τις ακόλουθες δομές δεδομένων για

τη διαχείριση των έργων τέχνης:

- Πίνακας ΕΡΓΟ_ΤΕΧΝΗΣ[Ν, 2], του οποίου η πρώτη στήλη περιέχει το όνομα του

καλλιτέχνη που δημιούργησε το αντίστοιχο έργο τέχνης και η δεύτερη στήλη την περιγραφή

του.

- Παράλληλος πίνακας ΕΤΟΣ[Ν], που περιέχει το έτος δημιουργίας του έργου τέχνης.

- Παράλληλος πίνακας ΤΙΜΗ[Ν], που περιέχει την τιμή του συγκεκριμένου έργου.

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

α. Θα διαβάζει το όνομα ενός ζωγράφου και θα εκτυπώνει όλα τα έργα του που υπάρχουν

στη γκαλερί.

β. Θα διαβάζει το όνομα ενός ζωγράφου και την περιγραφή ενός έργου του και θα

εκτυπώνει την τιμή του, εφόσον διατίθεται το έργο στη γκαλερί.

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

αγοραστούν με το ποσό αυτό.

δ. Θα εκτυπώνει όλα τα έργα που υπάρχουν στη γκαλερί, από το παλαιότερο προς το

νεότερο.

Άσκηση 6. Στη δεξίωση του πρέσβη μεγάλου ευρωπαϊκού κράτους στην Τενεούπολη έχει

καταρτιστεί λίστα καλεσμένων. Στον πίνακα ΟΝΟΜΑ καταχωρείται το όνομα κάθε

καλεσμένου και στον πίνακα ΤΡΑΠΕΖΙ καταχωρείται ο αριθμός του τραπεζιού όπου

τοποθετείται. Σημειώνεται ότι τα τραπέζια διαθέτουν 10 θέσεις και ότι το συνολικό

πλήθος των καλεσμένων είναι 1500. Να αναπτυχθεί αλγόριθμος που με δεδομένα τα

στοιχεία των πινάκων:

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

τοποθετηθεί.

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

κάθονται σε αυτό.

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

του.

δ. Θα εκτυπώνει τα ονόματα των καλεσμένων της δεξίωσης ανά τραπέζι.

Άσκηση 7. Ένας φανατικός συλλέκτης δίσκων βινυλίου αποφάσισε να αναπτύξει

αλγόριθμο, ώστε να μπορεί να επεξεργαστεί στατιστικά τη συλλογή του. Διαθέτει 2500

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

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

πίνακες τα παραπάνω στοιχεία και στη συνέχεια:

α. Θα διαβάζει έναν αριθμό που αντιστοιχεί σε έτος (με τιμή 1900 – 2005) και θα

εκτυπώνει το πλήθος των δίσκων που κυκλοφόρησαν εκείνη τη χρονιά.

β. Θα εκτυπώνει το πλήθος και τα ονόματα των διαφορετικών καλλιτεχνών για τους

οποίους υπάρχουν δίσκοι στη συλλογή.

Άσκηση 8. Με δεδομένη την τυχερή εξάδα του ΛΟΤΤΟ, να αναπτυχθεί αλγόριθμος που

θα διαβάζει καθεμιά από τις 650000 στήλες - εξάδες που παίχτηκαν στα πρακτορεία και

θα εκτυπώνει αν η στήλη νίκησε. Στην περίπτωση που η στήλη δεν νίκησε, θα εκτυπώνει

πόσες επιλογές ήταν επιτυχημένες.

Λύση

Αλγόριθμος ΛΟΤΤΟ

Δεδομένα // ΝΙΚΗΤΡΙΑ // ! νικήτρια στήλη – 6 αριθμοί

Για στήλες από 1 μέχρι 650000 ! θα εξετάσουμε όλες τις στήλες, μία προς μία

Page 68: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 68 από 100

Για μετρητής από 1 μέχρι 6 ! διάβασε τη νέα στήλη

Διάβασε ΣΤΗΛΗ[μετρητής]

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

επιτυχίες ← 0

! θα ελέγξουμε καθένα από τα στοιχεία της στήλης, ψάχνοντας αν βρίσκεται

! μέσα στη νικήτρια στήλη

Για μετρητής από 1 μέχρι 6

βρέθηκε ← Ψευδής

θέση ← 0

i ← 1

Όσο (βρέθηκε = Ψευδής) και (i <= 6) επανάλαβε

Αν ΝΙΚΗΤΡΙΑ[i] = ΣΤΗΛΗ[μετρητής] τότε

βρέθηκε ← Αληθής

θέση ← i

Αλλιώς

i ← i + 1

Τέλος_αν

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

Αν θέση <> 0 τότε

επιτυχίες ← επιτυχίες + 1

Τέλος_αν

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

Αν επιτυχίες = 6 τότε

Εκτύπωσε "Η στήλη αυτή κερδίζει"

Αλλιώς

Εκτύπωσε επιτυχίες

Τέλος_αν

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

Τέλος ΛΟΤΤΟ

Άσκηση 9. Στον τελικό του τριπλούν προκρίνονται οι 8 πρώτοι αθλητές των ημιτελικών. Η

εταιρεία μηχανογράφησης των αγώνων χρησιμοποιεί τον πίνακα ΟΝΟΜΑ_ΗΜ[30] με τα

ονόματα των αθλητών που συμμετέχουν στον ημιτελικό αγώνα, καθώς και τον πίνακα

ΕΠΙΔΟΣΕΙΣ_ΗΜ[30, 3], που περιέχει τις επιδόσεις των αθλητών με στόχο την

πρόκριση στον τελικό. Να αναπτυχθεί αλγόριθμος ο οποίος:

α. Θα διαβάζει τα στοιχεία των παραπάνω πινάκων και θα εκτυπώνει τα ονόματα των

αθλητών που προκρίνονται στον τελικό.

β. Θα δημιουργεί τους νέους πίνακες ΟΝΟΜΑ_ΤΕΛ[8] με τα ονόματα των αθλητών που

συμμετέχουν στον τελικό και ΕΠΙΔΟΣΕΙΣ_ΤΕΛ[8, 6], του οποίου οι 3 πρώτες στήλες

περιέχουν τις επιδόσεις στους προκριματικούς για τους αντίστοιχους αθλητές του

ημιτελικού. Στη συνέχεια, θα διαβάζει και τις επόμενες 3 επιδόσεις (στήλες 4, 5, 6) για

κάθε αθλητή και θα εκτυπώνει τους αθλητές που παίρνουν μετάλλια. (Δίνεται ότι

υπάρχουν ακριβώς 8 αθλητές που συμμετέχουν στον τελικό.)

Παρατήρηση: Δίνεται ότι τελικά οι 2 πρώτοι αθλητές έχουν διαφορετικές επιδόσεις.

Άσκηση 10. H εταιρεία Αρβίλογλου διαθέτει 200 πωλητές σ’ ολόκληρη την Ελλάδα. Να

αναπτύξετε αλγόριθμο που θα διαβάζει τα ονόματα των πωλητών στον μονοδιάστατο

πίνακα ΟΝΟΜΑ και τις μηνιαίες πωλήσεις καθενός απ’ αυτούς, για τον χρόνο που

πέρασε, στον πίνακα ΠΩΛΗΣΕΙΣ[200, 12]. Στη συνέχεια ο αλγόριθμος θα πρέπει:

α. Nα υπολογίζει τους μέσους όρους εισπράξεων ανά πωλητή και να τους αποθηκεύει στον

πίνακα ΜΟ_ΠΩΛΗΤΗΣ.

β. Να υπολογίζει τους μέσους όρους εισπράξεων ανά μήνα και να τους αποθηκεύει στον

πίνακα MO_ΜΗΝΑΣ.

Page 69: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 69 από 100

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

από τον μέσο όρο του.

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

από τον μέσο όρο του μήνα.

Άσκηση 11. Για την πρόκριση στον τελικό των 200 μέτρων ανδρών πραγματοποιούνται 2

προκριματικοί αγώνες με 10 αθλητές στον καθένα, ενώ στον τελικό προκρίνονται 4

αθλητές από κάθε προκριματικό. Να αναπτύξετε αλγόριθμο που θα δέχεται τους πίνακες

ΟΝΟΜΑ_Α[10], ΕΠΙΔΟΣΗ_Α[10] και ΟΝΟΜΑ_Β[10], ΕΠΙΔΟΣΗ_Β[10], και στη

συνέχεια:

α. Θα δημιουργεί τους νέους πίνακες ΟΝΟΜΑ_ ΤΕΛΙΚΟΣ και ΕΠΙΔΟΣΗ_ΤΕΛΙΚΟΣ με

τα ονόματα και τις αντίστοιχες επιδόσεις όσων συμμετέχουν στον τελικό.

β. Θα εμφανίζει τα στοιχεία ως εξής: Αθλητής_1: 9.81 Αθλητής_2: +0.02 Αθλητής_3:

+2.23 (ο χρόνος του πρώτου σε δευτερόλεπτα και για κάθε επόμενο αθλητή η διαφορά

του με τον πρώτο).

Άσκηση 12. Ο κύριος Αρβίλογλου αγόρασε ένα ταξί και εργάζεται με αυτό και καταγράφει

στο σημειωματάριό του, τις ημερήσιες εισπράξεις από τη δουλειά του. Αν κάποια ημέρα

δεν εργάστηκε καταγράφεται η τιμή μηδέν. Σε πίνακα ΕΙΣ[365], εισάγονται τα στοιχεία

που αφορούν τις ημερήσιες εισπράξεις του έτους 2007. Να αναπτύξετε αλγόριθμο, ο

οποίος:

α. θα πραγματοποιεί είσοδο των απαραίτητων στοιχείων.

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

εργάστηκε.

γ. θα εμφανίζει τα έσοδα του Ιανουαρίου και του Μαρτίου.

δ. θα διαβάζει το όνομα ενός μήνα και θα εμφανίζει τα έσοδα αυτού του μήνα. Αν δοθεί

λάθος όνομα μήνα, θα εμφανίζεται κατάλληλο μήνυμα.

ε. θα εντοπίζει το μικρότερο ποσό που συγκέντρωσε κάποια ημέρα (θεωρούμε ότι συνέβη

μόνο μια φορά) και θα εμφανίζει σε ποιο μήνα έγινε αυτό.

στ. θα εμφανίζει ανά μήνα τις εισπράξεις που πραγματοποιήθηκαν.

Παρατήρηση: Να θεωρήσετε δεδομένους πίνακες ΜΗΝΑΣ[12], που περιέχει τα ονόματα

των μηνών και ΗΜ[12], που περιέχει το πλήθος των ημερών ανά μήνα (ΗΜ[1] = 31,

ΗΜ[2] = 28, ΗΜ[3] = 31 κ.ο.κ.).

Λύση

Αλγόριθμος Ταξί

Δεδομένα // ΜΗΝΑΣ, ΗΜ //

Για i από 1 μέχρι 365

Διάβασε ΕΙΣ[i]

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

π ← 0 ! (β)

Για i από 1 μέχρι 365

Αν ΕΙΣ[i] = 0 τότε

π ← π + 1

Τέλος_αν

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

ποσ ← 100 * π / 365

Εμφάνισε ποσ

! (γ): Ιανουάριος, πρώτες 31 μέρες

Σ1 ← 0

Για i από 1 μέχρι ΗΜ[1]

Σ1 ← Σ1 + ΕΙΣ[i]

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

! Μάρτιος, αρχή: ΗΜ[1]+ΗΜ[2]+1

Page 70: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 70 από 100

! Μάρτιος, τελος: ΗΜ[1]+ΗΜ[2]+ΗΜ[3]

πριν ← ΗΜ[1] + ΗΜ[2]

Σ3 ← 0

Για i από πριν+1 μέχρι πριν+ΗΜ[3]

Σ3 ← Σ3 + ΕΙΣ[i]

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

Εμφάνισε Σ1, Σ3

Διάβασε ονkey ! (δ)

done ← ψευδής

pos ← 0

μ ← 1

Όσο (done = ψευδής) και (μ <= 12) επανάλαβε

Αν ΜΗΝΑΣ[i] = ονkey τότε

pos ← μ

done ← αληθής

Αλλιώς

μ ← μ + 1

Τέλος_αν

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

Αν done = αληθής τότε

πριν ← 0

Για μ από 1 μέχρι pos–1

πριν ← πριν + ΗΜ[μ]

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

Σ ← 0

Για i από πριν+1 μέχρι πριν+ΗΜ[pos]

Σ ← Σ + ΕΙΣ[i]

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

Εμφάνισε Σ

Αλλιώς

Εμφάνισε "Λάθος όνομα μήνα"

Τέλος_αν

ελάχιστο ← ΕΙΣ[1] ! (ε)

θελαχ ← 1

Για i από 2 μέχρι 365

Αν ΕΙΣ[i] < ελάχιστο τότε

ελάχιστο ← ΕΙΣ[i]

θμεγ ← i

Τέλος_αν

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

Σ ← 0

δ ← ψευδής

μ ← 1

Όσο (δ = ψευδής) και (μ <= 12) επανάλαβε

Σ ← Σ + ΗΜ[μ]

Αν θμεγ <= Σ τότε

Εμφάνισε ΜΗΝΑΣ[μ]

δ ← αληθής

Αλλιώς

μ ← μ + 1

Τέλος_αν

Page 71: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 71 από 100

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

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

πριν ← 0

Για i από 1 μέχρι μ–1

πριν ← πριν + ΗΜ[i]

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

Σ ← 0

Για i από πριν+1 μέχρι πριν+ΗΜ[μ]

Σ ← Σ + ΕΙΣ[i]

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

Εμφάνισε Σ

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

Τέλος Ταξί

Άσκηση 13. Να αναπτύξετε αλγόριθμο ο οποίος θα επεξεργάζεται και θα εκδίδει τα

αποτελέσματα των μαθητικών εκλογών για το 15μελές συμβούλιο του σχολείου σας. Στο

Ενιαίο Λύκειο Χιλιομοδίου το παρόν σχολικό έτος φοιτούν 113 μαθητές σε όλες τις τάξεις

και οι υποψήφιοι για το μαθητικό συμβούλιο είναι 35 - κάθε μαθητής έχει δικαίωμα να

δώσει μέχρι 3 ψήφους. Επιπρόσθετα, να περιγράψετε τις δομές δεδομένων που

χρειάζονται.

Page 72: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o Π.Π. ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2012 - 2013

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 72 από 100

Page 73: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

Λύση

Θα χρησιμοποιηθούν οι πίνακες: ΜΑΘΗΤΕΣ τύπου αλφαριθμητικών, μονοδιάστατος 113 θέσεων που θα περιέχει

τα ονόματα όλων των μαθητών του σχολείου, ο πίνακας ΥΠΟΨΗΦΙΟΙ τύπου αλφαριθμητικών, μονοδιάστατος 35

θέσεων που θα περιέχει τα ονόματα των υποψηφίων (είναι προφανές οτι ο πίνακας ΥΠΟΨΗΦΙΟΙ είναι υποσύνολο

του πίνακα ΜΑΘΗΤΕΣ). Τέλος, θα χρησιμοποιηθεί ο πίνακας ΨΗΦΟΙ τύπου λογικός, δισδιάστατος [113, 35] ώστε

αν το κελί [2, 1] έχει την τιμή ψευδής τότε ο μαθητής 2 (Γεωργαντάς) δεν ψηφίζει τον μαθητή 1 (Τόγκας) , ενώ αν

το κελί [112, 2] έχει την τιμή αληθής σημαίνει πως ο μαθητής 112 (Βαζάρογλου) ψηφίζει τον μαθητή 2

(Αποστόλου). Είναι δεδομένο πως ο πίνακας ΨΗΦΟΙ σε κάθε γραμμή θα έχει μόνο σε τρία κελιά την τιμή αληθής.

Στην παρούσα φάση δε θα μας απασχολήσει η δημιουργία του πίνακα ΨΗΦΟΙ

Θα χρησιμοποιηθεί και ο πίνακας ΣΥΝ_ΨΗΦΩΝ τύπου αριθμών, μονοδιάστατος 35 θέσεων που θα περιέχει το

σύνολο των ψήφων για κάθε υποψήφιο

Αλγόριθμος Μαθητικές_Εκλογές

Δεδομένα // ΨΗΦΟΙ //

Για i από 1 μέχρι 113

Διάβασε ΜΑΘΗΤΕΣ[i]

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

Για i από 1 μέχρι 35

Διάβασε ΥΠΟΨΗΦΙΟΙ[i]

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

Για i από 1 μέχρι 35

ΣΥΝ_ΨΗΦΩΝ[i] ← 0

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

Για i από 1 μέχρι 113

μετρητής ← 0

j ← 1

Όσο (μετρητής < 3) και (j <= 35) επανάλαβε ! Συνεχίζω την επανάληψη μέχρι να βρεθούν τρείς ψήφοι ή να

εξαντληθεί ο πίνακας

Αν (ΨΗΦΟΙ[i, j] = αληθής) τότε

μετρητής ← μετρητής + 1

ΣΥΝ_ΨΗΦΩΝ[j] ← ΣΥΝ_ΨΗΦΩΝ[j] + 1

Αλλιώς

j ← j + 1

Τέλος_αν

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

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

! Ταξινόμηση του πίνακα ΣΥΝ_ΨΗΦΩΝ ώστε να καταταχθούν οι υποψήφιοι

Για i από 2 μέχρι 35

Για j από 35 μέχρι i με βήμα -1

Αν ΣΥΝ_ΨΗΦΩΝ[j-1] < ΣΥΝ_ΨΗΦΩΝ[j] τότε ! Φθίνουσα διάταξη

βοηθητική ← ΣΥΝ_ΨΗΦΩΝ[j-1]

ΣΥΝ_ΨΗΦΩΝ[j-1] ← ΣΥΝ_ΨΗΦΩΝ[j]

ΣΥΝ_ΨΗΦΩΝ[j] ← βοηθητική

βοηθητική1 ← ΥΠΟΨΗΦΙΟΙ[j-1] ! Αντίστοιχη αντιμετάθεση του πίνακα ΥΠΟΨΗΦΙΟΙ

ΥΠΟΨΗΦΙΟΙ[j-1] ← ΥΠΟΨΗΦΙΟΙ[j]

ΥΠΟΨΗΦΙΟΙ[j] ← βοηθητική1

Τέλος_αν

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

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

Εκτύπωσε "Ακολουθούν τα μέλη του 15μελούς"

Για i από 1 μέχρι 15

Εκτύπωσε "Την ", i, "η θέση κατέλαβε ο μαθητής ", ΥΠΟΨΗΦΙΟΙ[i]

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

Page 74: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 74 από 100

Εκτύπωσε "Ακολουθούν τα 5 αναπληρωματικά μέλη του μαθητικού συμβουλίου"

Για i από 16 μέχρι 20

Εκτύπωσε "Την ", i-15 , "η θέση κατέλαβε ο μαθητής ", ΥΠΟΨΗΦΙΟΙ[i]

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

Τέλος Μαθητικές_Εκλογές

Άσκηση 14. Να αναπτύξετε τον αλγόριθμο που εκτελεί η εφαρμογή μηχανογράφησης ενός λυκείου για τον

υπολογισμό του βαθμού πρόσβασης. θα θεωρήσετε δεδομένους τους προφορικούς βαθμούς των δυο

τετραμήνων καθώς και τους γραπτούς βαθμούς των 50 μαθητών της τάξης σε ένα μάθημα και να

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

είναι το όνομα του μαθητή με το μεγαλύτερο βαθμός πρόσβασης; Ποιο ποσοστό μαθητών είχαν βαθμό

πρόσβασης κάτω από τη βάση;

Άσκηση 15. Ένας φανατικός συλλέκτης δίσκων βινυλίου αποφάσισε αναπτύξει αλγόριθμο ώστε να μπορεί

να επεξεργαστεί στατιστικά την συλλογή του. Διαθέτει 2500 δίσκους και για κάθε έναν από αυτούς

επιθυμεί να καταχωρεί τίτλο, καλλιτέχνη και έτος κυκλοφορίας. Να αναπτυχθεί αλγόριθμος που θα

διαβάζει σε τρεις μονοδιάστατους πίνακες τα παραπάνω στοιχεία και:

i. Θα διαβάζει έναν αριθμό που αντιστοιχεί σε έτος και να εκτυπώνει το πλήθος των δίσκων που

κυκλοφόρησαν το έτος αυτό

ii. Θα εκτυπώνει το πλήθος και τα ονόματα των διαφορετικών καλλιτεχνών που δίσκοι τους υπάρχουν

στη συλλογή

Άσκηση 16. Ενόψει των γιορτών η εταιρεία ΧΖΣ αποφάσισε να στείλει ευχετήριες κάρτες στους πελάτες

της. Να αναπτυχθεί αλγόριθμος που με δεδομένο δισδιάστατο πίνακα ΣΤΟΙΧΕΙΑ[1000, 3] που περιέχει

τα ονοματεπώνυμα των 1000 πελατών της εταιρείας στη στήλη 1, το πατρώνυμο στη στήλη 2 και τις

διευθύνσεις των πελατών στη στήλη 3, θα ταξινομεί τα στοιχεία ως προς την πρώτη στήλη και θα

εκτυπώνει τα ονόματα και τις διευθύνσεις για τις ευχετήριες κάρτες

Άσκηση 17. Να αναπτύξετε αλγόριθμο που θα διαχειρίζεται τις κρατήσεις σε ένα πολυκινηματογράφο. Σε

πίνακα ΕΡΓΟ [15,2] θέσεων υπάρχουν τα έργα που προβάλλονται στην αντίστοιχη αίθουσα στην πρώτη

στήλη και λοιπά στοιχεία (ώρα προβολής κ.λ.π.) στη δεύτερη στήλη. Σε μονοδιάστατο πίνακα περιέχεται

ΧΩΡΗΤΙΚΟΤΗΤΑ η χωρητικότητα της αντίστοιχης αίθουσας και σε τρίτο πίνακα ΘΕΣΕΙΣ περιέχονται οι

μέχρι τώρα δεσμευμένες θέσεις. Να αναπτύξετε αλγόριθμο που θα διαβάζει το όνομα του έργου που

επιθυμεί να παρακολουθήσει ο θεατής και να πραγματοποιεί την κράτηση στην πρώτη διαθέσιμη αίθουσα,

ενώ αν δεν υπάρχει να εκτυπώνει αντίστοιχο μήνυμα. Για την επανάληψη της διαδικασίας να ερωτάται ο

χρήστης αν έχει ολοκληρώσει την καταχώρηση

Άσκηση 18. Η εταιρεία διοδίων Πελοποννήσου επιθυμεί να επεξεργαστεί στατιστικά τα στοιχεία των

συναλλαγών των ταμείων της. Καταχωρεί λοιπόν τα στοιχεία των 80 ταμείων της σε μονοδιάστατο πίνακα

με όνομα ΤΑΜΕΙΑ και τις ημερήσιες εισπράξεις σε δισδιάστατο πίνακα ΕΙΣΠΡΑΞΕΙΣ[80,360]

(θεωρούμε ότι κάθε μήνας έχει 30 μέρες και το έτος 360) . Να αναπτυχθεί αλγόριθμος που θα διαβάζει

τα παραπάνω στοιχεία, θα υπολογίζει και θα εκτυπώνει:

i. Το ταμείο με τις περισσότερες εισπράξεις τη χρονιά που πέρασε

ii. Το ταμείο με τις λιγότερες εισπράξεις το 2 τρίμηνο της χρονιάς που πέρασε

iii. Τα ταμεία που ξεπέρασαν το συνολικό μέσο όρο εισπράξεων

Άσκηση 19. Το στρατολογικό γραφείο Κορίνθου έχει καλέσει την τρέχουσα κλάση να περάσει περιοδεύον.

Για τους 3000 νέους υπάρχουν σε 3 μονοδιάστατους πίνακες ισάριθμων θέσεων τα ονόματα, η ημερομηνία

γέννησης και το επιλεγμένο σώμα κατάταξης (στρατός ξηράς, ναυτικό, αεροπορία). Να αναπτυχθεί

αλγόριθμος όπου:

i. Να διαβάζει το όνομα ενός νέου και να εκτυπώνει την ημερομηνία γέννησης καθώς και το σώμα

κατάταξης που επέλεξε

ii. Να εκτυπώνει σε 3 λίστες αλφαβητικά τα ονόματα των νέων ανά σώμα κατάταξης

Λύση

Για την επίλυση του δεύτερου ερωτήματος πρέπει να ταξινομηθεί ο πίνακας ΟΝΟΜΑΤΑ με ταυτόχρονη

αντιμετάθεση των άλλων δυο πινάκων ώστε να παραμένει σε σχέση η λογική εξάρτηση τους

Αλγόριθμος Στρατολογία

Δεδομένα // ΟΝΟΜΑΤΑ, ΗΜΕΡ_ΓΕΝΝΗΣΗΣ, ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ //

Πλήθος ← 3000

Page 75: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 75 από 100

Διάβασε όνομα_αναζ ! ερώτημα i

βρέθηκε ← ψευδής ! σειριακή αναζήτηση

θέση ← 0

i ← 1

Όσο (βρέθηκε = ψευδής) και (i <= Πλήθος) επανάλαβε

Αν (ΟΝΟΜΑΤΑ[i] = όνομα_αναζ) τότε

βρέθηκε ← αληθής

θέση ← i

Αλλιώς

i ← i + 1

Τέλος_αν

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

Αν (βρέθηκε = αληθής) τότε

Εκτύπωσε "Ημερομηνία γέννησης:", ΗΜΕΡ_ΓΕΝΝΗΣΗΣ[θέση], " και σώμα κατάταξης:",

ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ[θέση]

Αλλιώς

Εκτύπωσε "Δεν υπάρχει νέος με αυτό το όνομα"

Τέλος_αν

! Θα ταξινομηθεί ο πίνακας μετρητές με αύξουσα διάταξη και αντίστοιχα θα αντιμετατεθούν και οι άλλοι δυο

πίνακες

Για i από 2 μέχρι Πλήθος

Για j από Πλήθος μέχρι i με_βήμα -1

Αν ΟΝΟΜΑΤΑ[j-1] > ΟΝΟΜΑΤΑ[j] τότε

βοηθητική ← ΟΝΟΜΑΤΑ[j-1]

ΟΝΟΜΑΤΑ[j-1] ← ΟΝΟΜΑΤΑ[j]

ΟΝΟΜΑΤΑ[j] ← βοηθητική

βοηθητική1 ← ΗΜΕΡ_ΓΕΝΝΗΣΗΣ[j-1] ! Αντίστοιχη αντιμετάθεση του πίνακα ΗΜΕΡ_ΓΕΝΝΗΣΗΣ

ΗΜΕΡ_ΓΕΝΝΗΣΗΣ[j-1] ← ΗΜΕΡ_ΓΕΝΝΗΣΗΣ[j]

ΗΜΕΡ_ΓΕΝΝΗΣΗΣ[j] ← βοηθητική1

βοηθητική2 ← ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ[j-1] ! Αντίστοιχη αντιμετάθεση του πίνακα ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ

ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ[j-1] ← ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ[j]

ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ[j] ← βοηθητική2

Τέλος_αν

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

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

Εκτύπωσε "Ακολουθούν όσοι επέλεξαν στρατό ξηράς"

Για i από 1 μέχρι Πλήθος

Αν (ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ[i] = "στρατός ξηράς") τότε

Εκτύπωσε ΟΝΟΜΑΤΑ[i], ΗΜΕΡ_ΓΕΝΝΗΣΗΣ[i]

Τέλος_αν

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

Εκτύπωσε "Ακολουθούν όσοι επέλεξαν ναυτικό"

Για i από 1 μέχρι Πλήθος

Αν (ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ[i] = "ναυτικό") τότε

Εκτύπωσε ΟΝΟΜΑΤΑ[i], ΗΜΕΡ_ΓΕΝΝΗΣΗΣ[i]

Τέλος_αν

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

Εκτύπωσε "Ακολουθούν όσοι επέλεξαν αεροπορία"

Για i από 1 μέχρι Πλήθος

Αν (ΣΩΜΑ_ΚΑΤΑΤΑΞΗΣ[i] = "αεροπορία") τότε

Εκτύπωσε ΟΝΟΜΑΤΑ[i], ΗΜΕΡ_ΓΕΝΝΗΣΗΣ[i]

Τέλος_αν

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

Page 76: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 76 από 100

Τέλος Στρατολογία

Άσκηση 20. Η εταιρεία Αρβίλογλου εισάγει και προωθεί 20 προϊόντα στην Ελληνική αγορά - οι τιμές

τους περιέχονται σε πίνακα ΤΙΜΕΣ[20] και τα ονόματα στον πίνακα ΕΠΩΝΥΜΙΑ[20]. Οι πωλήσεις σε

τεμάχια που επετεύχθησαν από κάθε έναν από τους 200 πωλητές της εταιρείας περιέχονται σε πίνακα

ΠΩΛΗΣΕΙΣ[200, 20] για τα προϊόντα, ενώ τα ονόματα των πωλητών είναι αποθηκευμένες σε πίνακα

ΟΝΟΜΑ[200]. Να αναπτυχθεί αλγόριθμος που με δεδομένα τα παραπάνω στοιχεία, θα υπολογίζει και θα

εκτυπώνει:

i. Το συνολικό ποσό είσπραξης κάθε πωλητή, και την προμήθεια των πωλητών 10% επί των πωλήσεων

ii. Τα 5 προϊόντα με τις περισσότερες πωλήσεις (να θεωρήσετε ότι είναι μόνο 5)

Κεφάλαιο 6

Ερωτήσεις 1. Ο προγραμματισμός αφορά την διατύπωση ενός αλγορίθμου σε κατανοητή από τον υπολογιστή μορφή

2. Βασικό στοιχείο του προγράμματος είναι τα δεδομένα οι δομές δεδομένων πέραν της κωδικοποίησης

3. Οι γλώσσες προγραμματισμού αναπτύχθηκαν με σκοπό την επικοινωνία ανθρώπου - μηχανής

4. Ένα πρόγραμμα γραμμένο σε γλώσσα μηχανής είναι εντολές προς τον επεξεργαστή για στοιχειώδεις

λειτουργίες

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

από τον υπολογιστή

6. Μια ακολουθία εντολών 0, 1 είναι κατανοητή από τον επεξεργαστή και μπορεί να εκτελεστεί χωρίς μετατροπή

7. Ο προγραμματισμός σε γλώσσα μηχανής ήταν μια εξαιρετικά δύσκολη δουλειά που ελάχιστοι μπορούσαν να

πραγματοποιήσουν

8. Ένα πρόγραμμα σε συμβολική γλώσσα ή γλώσσα χαμηλού επιπέδου τελικά μετατρέπεται σε γλώσσα μηχανής

9. Η συμβολική γλώσσα είναι μια ακολουθία 0 και 1

10. Μια εντολή ενός προγράμματος γλώσσας χαμηλού επιπέδου μεταφράζεται σε γλώσσα μηχανής

11. Με τις γλώσσες χαμηλού επιπέδου το κέντρο βάρους μετακινήθηκε από τον υπολογιστή προς τον άνθρωπο

12. Οι εντολές σε συμβολική γλώσσα αποτελούνται από συμβολικά ονόματα που αντιστοιχούν σε εντολές της

γλώσσας μηχανής

13. Οι συμβολικές γλώσσες έφεραν την ανεξαρτησία από την αρχιτεκτονική κάθε υπολογιστή

14. Τα προγράμματα σε γλώσσες χαμηλού επιπέδου είναι εύκολο να γραφτούν και να συντηρηθούν

15. Τα προγράμματα σε γλώσσες υψηλού επιπέδου είναι ανεξάρτητα του υπολογιστή που αναπτύχθηκαν

16. Οι γλώσσες υψηλού επιπέδου ήρθαν να επιλύσουν τις αδυναμίες των συμβολικών γλωσσών για καλύτερη

επικοινωνία ανθρώπου - μηχανής

17. Η Fortran είναι γλώσσα χαμηλού επιπέδου

18. Η γλώσσα προγραμματισμού Fortran είναι κατάλληλη για την επίλυση όλων των ειδικών προβλημάτων

19. Η Fortran είναι κατάλληλη για την επίλυση μαθηματικών και επιστημονικών προβλημάτων

20. Ένα πρόγραμμα γλώσσας υψηλού επιπέδου μπορεί να εκτελεστεί σε οποιονδήποτε υπολογιστή ανεξάρτητα της

αρχιτεκτονικής

21. Δεν έχει αναπτυχθεί γλώσσα υψηλού επιπέδου που να επιλύει όλα τα είδη προβλημάτων

22. H COBOL είναι γλώσσα προσανατολισμένη στην ανάπτυξη εμπορικών εφαρμογών

23. H COBOL δεν μπορεί να επιλύσει μαθηματικά προβλήματα

24. Η Algol είναι μια γλώσσα γενικού σκοπού αλλά με ελάχιστη πρακτική εφαρμογή

25. Η Algol αναπτύχθηκε για την επίλυση μαθηματικών προβλημάτων

26. Η PL/1 είναι γλώσσα υψηλού επιπέδου γενικής χρήσης με ελάχιστη επιτυχία

27. Η PL/1 προσπάθησε να συνθέσει Fortran και COBOL

28. Η Lisp και η Prolog είναι γλώσσες προγραμματισμού που χρησιμοποιούνται στον τομέα της Τεχνητής

Νοημοσύνης

29. Η Basic είναι γλώσσα γενικού σκοπού με έμφαση στην εκπαίδευση αρχαρίων στον προγραμματισμό

30. Η Basic κατόρθωσε με συνεχείς ανανεώσεις να καταστεί από τις πλέον δημοφιλείς γλώσσες προγραμματισμού

31. Η γλώσσα Pascal είναι γλώσσα γενικού σκοπού και κατάλληλη τόσο για την εκπαίδευση όσο και για τη

δημιουργία ισχυρών προγραμμάτων

32. Η Pascal αποτέλεσε τη βάση για την παρουσίαση γλωσσών όπως η ADA και η Modula-2

Page 77: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 77 από 100

33. Η C χρησιμοποιήθηκε για την ανάπτυξη συστημάτων και έχει πολλές δυνατότητες χαμηλού επιπέδου

34. Η C++ είναι γλώσσα τέταρτης γενιάς

35. Η C++ και οι Java είναι αντικειμενοστραφείς γλώσσες

36. Η Java είναι κατάλληλη για την ανάπτυξη εφαρμογών που εκτελούνται δικτυακά

37. Ο οδηγούμενος από τα γεγονότα προγραμματισμός και οι γλώσσες οπτικού προγραμματισμού αξιοποιούν τα

γραφικά χαρακτηριστικά του υπολογιστή (ποντίκι, μενού κ.λ.π.)

38. Στον οπτικό προγραμματισμό ο προγραμματιστής δεν γράφει κώδικα αλλά σχεδιάζει τα οπτικά αντικείμενα της

εφαρμογής του

39. Οι πιο διαδεδομένες οπτικές γλώσσες είναι η Visual Basic, η Visual C++ και η Java

40. Ο δομημένος προγραμματισμός επιτρέπει την άμεση μεταφορά των αλγορίθμων σε πρόγραμμα

41. Χάρη στο δομημένο προγραμματισμό δημιουργούνται προγράμματα απλούστερα, κατανοήσιμα και εύκολα στη

διόρθωση

42. Στο δομημένο προγραμματισμό ακολουθούνται οι αρχές του ιεραρχικού και του τμηματικού προγραμματισμού

43. Στην ιεραρχική σχεδίαση, η ανάλυση του αλγορίθμου πραγματοποιείται με την τεχνική «από πάνω προς τα

κάτω»

44. Ένα πλεονέκτημα των γλωσσών προγραμματισμού χαμηλού επιπέδου είναι η μεταφερσιμότητα των

προγραμμάτων

45. Παρά τη μεταφερσιμότητά τους, τα προγράμματα υψηλού επιπέδου είναι δυσκολότερο να διορθωθούν και να

συντηρηθούν

46. Στα πλεονεκτήματα των γλωσσών προγραμματισμού υψηλού επιπέδου σε σχέση με τις συμβολικές γλώσσες

είναι η ανεξαρτησία από τον τύπο του υπολογιστή

47. Οι γλώσσες υψηλού επιπέδου προτιμούνται για τον κοντύτερα στον άνθρωπο τρόπο έκφρασης

48. Είναι ευκολότερη η εκμάθηση μιας γλώσσας χαμηλού επιπέδου

49. Ο παράλληλος προγραμματισμός προϋποθέτει την ύπαρξη περισσοτέρων από έναν επεξεργαστών

50. Οι γλώσσες 4ης γενιάς χρησιμοποιούνται σε εφαρμογές που χρησιμοποιούν βάσεις δεδομένων

51. Η καλύτερη γλώσσα προγραμματισμού είναι η Pascal

52. Η επιλογή της καλύτερης γλώσσας προγραμματισμού εξαρτάται από το είδος της εφαρμογής

53. Μια γλώσσα προγραμματισμού προσδιορίζεται από: το αλφάβητό της, το λεξιλόγιό της, τη γραμματική της και

τη σημασιολογία της

54. Λεξιλόγιο μιας γλώσσας είναι όλες οι ακολουθίες που δημιουργούνται από τα στοιχεία του αλφαβήτου της

γλώσσας, τις λέξεις

55. Η γραμματική είναι το συντακτικό μιας γλώσσας

56. Δεν υπάρχουν διαφορές μεταξύ φυσικών και τεχνητών γλωσσών

57. Η ιεραρχική σχεδίαση διασπά ένα πρόβλημα σε υποπροβλήματα και τα επιλύει, λύνοντας το αρχικό πρόβλημα

58. Ο τμηματικός προγραμματισμός υλοποιεί την φιλοσοφία της ιεραρχικής σχεδίασης

59. Κάθε υποπρόβλημα της ιεραρχικής σχεδίασης αποτελεί μια ανεξάρτητη ενότητα στον τμηματικό

προγραμματισμό

60. Ο δομημένος προγραμματισμός περιέχει την ιεραρχική σχεδίαση και τον τμηματικό προγραμματισμό

61. Ο δομημένος προγραμματισμός προϋποθέτει τη χρήση εξιδεικευμένων αλγοριθμικών δομών

62. Η αντικειμενοστραφής προσέγγιση εκλαμβάνει ως πρωτεύοντα δομικά στοιχεία ενός προγράμματος τις τρεις

αλγοριθμικές δομές: δομή ακολουθίας, δομή επιλογής και δομή επανάληψης

63. Για την ανάπτυξη προγραμμάτων με τη φιλοσοφία του παράλληλου προγραμματισμού απαιτείται η χρήση

εξειδικευμένων γλωσσών προγραμματισμού

64. Ο διερμηνευτής (interpreter) μετατρέπει το εκτελέσιμο πρόγραμμα (executable) σε πρόγραμμα αντικείμενο

(object)

65. Ο μεταγλωττιστής μας επιτρέπει να συντάσσουμε ένα πρόγραμμα

66. Ο μεταγλωττιστής αναλαμβάνει το ρόλο της μετάφρασης από το πηγαίο πρόγραμμα στο εκτελέσιμο πρόγραμμα

67. Ο διερμηνευτής ελέγχει και μετατρέπει μια-μια τις εντολές του πηγαίου προγράμματος σε γλώσσα μηχανής

68. Ο συνδέτης μετατρέπει το πηγαίο πρόγραμμα σε βιβλιοθήκη

69. Το αντικείμενο πρόγραμμα είναι ουσιαστικά γλώσσα μηχανής

70. Ο συνδέτης είναι ένα πρόγραμμα ελέγχου των συντακτικών λαθών του πηγαίου προγράμματος

71. Τα λογικά λάθη εντοπίζονται από έναν μεταγλωττιστή αλλά όχι από έναν διερμηνευτή

72. Τα συντακτικά λάθη επιδιορθώνονται γρήγορα και εύκολα αλλά για τα λογικά λάθη η επιδιόρθωση είναι μια

επίπονη διαδικασία

Page 78: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 78 από 100

73. Ο μεταγλωττιστής έχει το μειονέκτημα ότι ελέγχει όλο το πρόγραμμα και πραγματοποιεί και την διαδικασία

της σύνδεσης πολλές φορές μέχρι να επιδιορθωθούν όλα τα λάθη

74. Ο διερμηνευτής έχει το πλεονέκτημα ότι το πρόγραμμα εκτελείται γρηγορότερα

75. Τα σύγχρονα προγραμματιστικά περιβάλλοντα χρησιμοποιούν μικτές υλοποιήσεις διερμηνευτή και

μεταγλωττιστή

76. Σ' ένα σύγχρονο προγραμματιστικό περιβάλλον απαιτείται η παρουσία συντάκτη για την συγγραφή του

κειμένου των εντολών

77. Για την επιδιόρθωση των λογικών λαθών πολλές φορές ο προγραμματιστής καλείται να εκτελέσει το

πρόγραμμά του επανειλημμένα

78. Ο μεταγλωττιστής σ' ένα σύγχρονο προγραμματιστικό περιβάλλον καθιστά την ύπαρξη του συνδέτη

προαιρετική

79. Ο μεταγλωττιστής διορθώνει όλα τα συντακτικά λάθη με τη χρήση βιβλιοθηκών

80. Η παράλειψη μιας εντολής Τέλος_αν είναι λογικό λάθος

81. Η χρήση της εντολής ΜΟ ← α + β + γ / 3 αντί της ΜΟ ← (α + β + γ) / 3 είναι λογικό λάθος

82. Τα λογικά λάθη ενός προγράμματος εμφανίζονται κατά τη μεταγλώττιση

83. Ο εντοπισμός των συντακτικών λαθών σε ένα πρόγραμμα γίνεται από τον μεταγλωττιστή (compiler)

84. Το έργο της μετάφρασης εντολών γλώσσας χαμηλού επιπέδου σε ακολουθία 0, 1 αναλαμβάνει ο

____________

85. Η δυσκολία προγραμματισμού σε γλώσσα μηχανής οδήγησε στην δημιουργία ________________ γλωσσών ή

γλωσσών ___________ επιπέδου

86. Βασική τεχνική σχεδίασης προγραμμάτων είναι η τεχνική του _______________ προγραμματισμού

87. Κάθε πρόγραμμα γλώσσας υψηλού επιπέδου μεταφράζεται σε γλώσσα μηχανής από ένα ειδικό πρόγραμμα που

ονομάζεται ___________

88. Η ανεξαρτησία των γλωσσών προγραμματισμού από την αρχιτεκτονική των υπολογιστών ονομάζεται

_______________

89. Ο δομημένος προγραμματισμός στηρίζεται στη χρήση τριών στοιχειωδών δομών: της __________, της

__________ και της __________

90. ____________ είναι το σύνολο των κανόνων που ορίζει τις μορφές που μια λέξη είναι αποδεκτή

91. ____________ είναι το σύνολο των κανόνων που καθορίζει τη διάταξη και τη σύνδεση των λέξεων

92. Η λανθασμένη γραφή των δεσμευμένων λέξεων της γλώσσας προγραμματισμού είναι ______________

λάθος

93. ____________ είναι το σύνολο των κανόνων που καθορίζει το νόημα των λέξεων και κατ' επέκταση των

εκφράσεων και προτάσεων που χρησιμοποιούνται σε μια γλώσσα

94. Κάθε προγραμματιστικό περιβάλλον διαθέτει τον μεταγλωττιστή του

95. Ο μεταγλωττιστής δέχεται στην είσοδό του έναν πρόγραμμα σε γλώσσα ___________ ____________

δημιουργώντας ισοδύναμο σε γλώσσα _______________

96. Η μεταγλώττιση ενός προγράμματος γίνεται από τους __________ ή τους __________

97. Οι εντολές ενός προγράμματος μετατρέπονται σε ακολουθίες που αποτελούνται από 0 και 1, δηλαδή σε

____________ _________________

98. Τα ____________ λάθη δεν είναι δυνατόν να εντοπίζονται από το προγραμματιστικό περιβάλλον

99. Στον δομημένο προγραμματισμό χρησιμοποιούμε:

α) την εντολή goto β) μόνο τις βασικές αλγοριθμικές δομές

γ) τις δομές δεδομένων δ) τις βασικές αλγοριθμικές δομές και σπανίως την εντολή goto

100. Κατά την ανάλυση, ο κατακερματισμός ενός αλγορίθμου σε απλούστερους αποτελεί χαρακτηριστικό:

α) του τμηματικού προγραμματισμού β) του ιεραρχικού προγραμματισμού

γ) της κλασσικής ανάπτυξης δ) της υλοποίησης με την μέθοδο «από κάτω προς τα πάνω»

101. Χαρακτηριστικό του οπτικού προγραμματισμού είναι:

Α Επιτρέπει τη γραφική δημιουργία του περιβάλλοντος Β. Επιτρέπει την ανάπτυξη του προγράμματος σε

τμήματα

Γ. Είναι ταχύτερος στην εκτέλεση των προγραμμάτων Δ. Επιτρέπει την διαγραμματική παράσταση της

σχεδίασης

102. Η Basic είναι

Α. Κατάλληλη για εφαρμογές τεχνητής νοημοσύνης Β. Υποστηρίζει την ανάπτυξη παράλληλου προγραμματισμού

Γ. Μία γλώσσα γενικής χρήσης Δ. Κατάλληλη μόνο για εκπαίδευση

Page 79: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 79 από 100

103. Από τον συντάκτη παράγεται:

α) Τα αντικείμενα β) ο εκτελέσιμος κώδικας γ) ο πηγαίος κώδικας δ) τίποτα από τα παραπανω

104. Να συνδέσετε τα στοιχεία της στήλης Α με τα στοιχεία των στηλών Β και Γ

ΟΝΟΜΑ ΓΛΩΣΣΑΣ ΤΟΜΕΑΣ ΕΦΑΡΜΟΓΩΝ ΕΙΔΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

1. Fortran

2. Cobol

3. Algol

4. Prolog

5. Lisp

6. Pascal

7. Basic

8. C

9. C++

10. Java

11. PL/1

Ι. Επιστημονικός

II. Εμπορικός

III. Επιστημονικός και Εμπορικός

IV. Προγραμματισμός συστημάτων

V. Προγραμματισμός στο διαδίκτυο

VI. Γενικής χρήσης

VII. Τεχνητής νοημοσύνης

A. Συναρτησιακός

B. Αντικειμενοστραφής

C. Μη διαδικασιακός

D. Διαδικασιακός

105. Να αντιστοιχίσετε τα στοιχεία της στήλης Α µε τα στοιχεία της στήλης Β:

Στήλη Α Στήλη Β

Σκοπιές που µελετά η πληροφορική

1. τους αλγορίθµους

2. τα δεδοµένα

I. Υλικού

II. Γλωσσών προγραµµατισµού

III. Δοµών δεδοµένων

IV. Θεωρητική

V. Ανάλυσης δεδοµένων

VI. Αναλυτική

106. Να αντιστοιχίσετε τα στοιχεία της στήλης Α µε τα στοιχεία της στήλης Β

Στήλη Α Στήλη Β

1. Δοµηµένος προγραµµατισµός

2. Τµηµατικός προγραµµατισµός

3. Αντικειµενοστραφής

προγραµµατισµός

4 . Παράλληλος προγραμματισμός

Α. Διαίρεση του προβλήµατος σε τµήµατα που εκτελούνται παράλληλα

Β. Ένα πρόβληµα περιγράφει "ενέργειες" που εφαρµόζονται στα

δεδοµένα

Γ. Κάθε υποπρόβλημα αποτελεί ξεχωριστή ενότητα

Δ. Χρήση βασικών αλγοριθμικών δομών

107. Να αντιστοιχίσετε τα στοιχεία της στήλης Α και της στήλης Β

Α Β

1. Δομή επιλογής Α) Επαναληπτική εκτέλεση εντολών

2. Δομή επανάληψης B) Χρήση εντολή GoTo

3. Μη δομημένος προγραμματισμός Γ) Σειριακή εκτέλεση εντολών

4. Δομή ακολουθίας Δ) Επιλεκτική εκτέλεση εντολών

5. Δομημένος προγραμματισμός E) Αποφυγή χρήσης Εντολής GoTo

108. Να αντιστοιχίσετε τα στοιχεία της στήλης Α µε τα στοιχεία της στήλης Β

Στήλη Α Στήλη Β

Α. Γλώσσα μηχανής

Β. Μεταγλωττιστής

Γ. Συμβολικές γλώσσες

Δ. Συνδέτης - Φορτωτής

Ε. Γλώσσες υψηλού επιπέδου

1. Basic, Pascal, C

2. Συμβολομεταφραστής

3. Αντικείμενο πρόγραμμα

4. Βιβλιοθήκες

5. Ακολουθίες από 0 και 1

109. Το εκτελέσιμο είναι το τελικό πρόγραμμα που εκτελείται από τον υπολογιστή

110. Στις γλώσσες υψηλού επιπέδου δεν υπάρχει η ικανότητα της μεταφερσιμότητας

111. Υπάρχουν δυο μεγάλες κατηγορίες μεταφραστικών ποργραμμάτων: οι μεταφραστές και οι μεταγλωττιστές

112. Ο μεταγλωττιστής εξάγει το πηγαίο πρόγραμμα

Page 80: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 80 από 100

113. Να αντιστοιχίσετε τα στοιχεία της στήλης Α µε τα στοιχεία της στήλης Β

Στήλη Α Στήλη Β

Α. Διερμηνευτής

Β. Μεταγλωττιστής

Γ. Δομημένος

προγραμματισμός

Δ. Συντάκτης

1. Πρόγραμμα που δέχεται ένα πρόγραμμα γραμμένο σε γλώσσα υψηλού επιπέδου

και παράγει ένα ισοδύναμο πρόγραμμα σε γλώσσα μηχανής

2. Μεθοδολογία σύνταξης προγραμμάτων που βοηθάει στην ανάπτυξη σύνθετων

προγραμμάτων και στη διαχείρισή τους

3. Πρόγραμμα που χρησιμοποιείται για τη σύνταξη και τη διόρθωση προγραμμάτων

4. Πρόγραμμα που διαβάζει μια προς μια τις εντολές αρχικού προγράμματος και για

κάθε μια εκτελεί αμέσως μια ισοδύναμη ακολουθία εντολών μηχανής

114. Τα βήματα για τη δημιουργία ενός προγράμματος είναι:

α) συντάκτης β) συνδέτης γ) πηγαίο πρόγραμμα δ) μεταγλωττιστής ε) εκτελέσιμο πρόγραμμα

στ) αντικείμενο πρόγραμμα

Page 81: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 81 από 100

Κεφάλαιο 7-8-9

Ερωτήσεις 1. Οι τύποι μεταβλητών που δέχεται η ΓΛΩΣΣΑ είναι μόνο ΠΡΑΓΜΑΤΙΚΕΣ και ΑΚΕΡΑΙΕΣ

2. Οι δηλώσεις των σταθερών προηγούνται πάντοτε των δηλώσεων των μεταβλητών

3. Τα σχόλια τοποθετούνται πάντα στην αρχή του προγράμματος

4. Κάθε εντολή ΑΝ περιλαμβάνει υποχρεωτικά το τμήμα ΑΛΛΙΩΣ

5. Κάθε τμήμα προγράμματος που χρησιμοποιεί την εντολή ΕΠΙΛΕΞΕ μπορεί να γραφεί και με εντολές ΑΝ

6. Η χρήση εμφωλευμένων ΑΝ είναι καλή προγραμματιστική τακτική

7. Αν το Α έχει την τιμή 10 και το Β την τιμή 20 τότε η έκφραση (Α > 8 ΚΑΙ Β < 20) Ή (Α > 10 Ή Β = 10) είναι

αληθής

8. Οι εντολές που βρίσκονται σε μία επανάληψη ΓΙΑ εκτελούνται τουλάχιστο μία φορά

9. Κάθε επανάληψη μπορεί να γραφεί με την εντολή ΟΣΟ - ΕΠΑΝΑΛΑΒΕ

10. Σε περίπτωση εμφωλευμένων βρόχων, ο εσωτερικός πρέπει να περικλείεται ολόκληρος στον εξωτερικό

11. Η τιμή του βήματος αναφέρεται υποχρεωτικά σε κάθε εντολή ΓΙΑ

12. Τα ονόματα και το πλήθος των εισιτηρίων 10 θεάτρων μπορούν να αποθηκευτούν σε ένα δισδιάστατο πίνακα

13. Οι μεταβλητές που χρησιμοποιούνται σε ένα πρόγραμμα αντιστοιχούνται από το μεταγλωττιστή σε

συγκεκριμένες θέσεις μνήμης του Η/Υ

14. Η ταξινόμηση των στοιχείων ενός πίνακα πρέπει να γίνεται πάντα πριν από την αναζήτηση

15. Δεσμευμένες λέξεις καλούνται οι λέξεις που έχουν δεσμεύσει για τα ονόματα των μεταβλητών

16. Όλοι οι πίνακες δηλώνονται στο τμήμα δήλωσης μεταβλητών του προγράμματος

17. Τα στοιχεία ενός πίνακα πρέπει να είναι του ιδίου τύπου

18. Η χρήση πινάκων αυξάνει την απαιτούμενη μνήμη για την εκτέλεση του προγράμματος

19. Ο δείκτης ενός μονοδιάστατου πίνακα πρέπει να είναι πάντα I

20. Το αλφάβητο της γλώσσας αποτελείται μόνο από γράμματα ελληνικά - λατινικά και αριθμούς

21. Σε μια εντολή εκχώρησης η μεταβλητή αριστερά και η έκφραση δεξιά του βέλους πρέπει να είναι του ιδίου

τύπου

22. Στη δομή ενός προγράμματος σε ΓΛΩΣΣΑ είναι αυστηρά καθορισμένη

23. Το τμήμα δηλώσεων ενός προγράμματος σε ΓΛΩΣΣΑ πρέπει απαραιτήτως να προηγείται του τμήματος

εντολών

24. Μια έκφραση μπορεί να περιέχει μεταβλητές, σταθερές, τελεστές και παρενθέσεις

25. Όταν μια δομή επανάληψης είναι εμφωλευμένη σε μια άλλη, τότε για κάθε εξωτερικό βρόχο πρέπει να

ολοκληρώνονται όλες οι επαναλήψεις του εσωτερικού

26. Όταν μια δομή "Για" είναι εμφωλευμένη σε μια άλλη δομή "Για", τότε μπορούμε αν το επιθυμούμε για ευκολία

να χρησιμοποιήσουμε την ίδια μεταβλητή για μετρητή

27. Ένα πρόγραμμα σε ΓΛΩΣΣΑ δεσμεύει τόσες συνεχόμενες θέσεις μνήμης για έναν πίνακα όσες και οι θέσεις

που εμφανίζονται στο τμήμα δηλώσεων

28. Σε οποιοδήποτε σημείο ενός προγράμματος σε ΓΛΩΣΣΑ μπορούν να τοποθετηθούν σχόλια

29. Μπορούμε να αρχικοποιούμε μεταβλητές στο τμήμα δηλώσεων ενός προγράμματος σε ΓΛΩΣΣΑ

30. Σε ένα πρόγραμμα σε ΓΛΩΣΣΑ δεν μπορούμε να χρησιμοποιήσουμε λογική σταθερά

31. Στο τμήμα δηλώσεων ενός προγράμματος σε ΓΛΩΣΣΑ δηλώνουμε τα ονόματα των πινάκων αλλά όχι και το

μέγεθός τους

32. Ένα πρόγραμμα σε ΓΛΩΣΣΑ έχει τη δυνατότητα να τροποποιεί το μέγεθος ενός πίνακα στο τμήμα εντολών

33. Για την εκτύπωση όλων των περιοχομένων ενός πίνακα απαιτείται η χρήση δομών επανάληψης

34. Για την αναζήτηση σε ταξινομημένους πίνακες προτιμάται η δυαδική αναζήτηση

35. Η συγχώνευση δυο πινάκων έχει ως στόχο να συνενώσει δυο πίνακες

36. Ποια από τις παρακάτω εντολές αυξάνει τη μεταβλητή Πλήθος κατά μία μονάδα

Α) Πλήθος ← Πλήθος+1 Β) Πλήθος ← +1 Γ) Πλήθος ← 1 Δ) Πλήθος+1 ← Πλήθος

37. Ποια η τιμή της μεταβλητής Α μετά την εκτέλεση της παρακάτω εντολής:

Τιμή ← (5 + 4 / 2 * 2) * 2 - (3 * 2 + 5 - 3)^2 + 9 / 3 - 2

Α) –53 Β) –37 Γ) –125 Δ) –45

38. Να συμπληρωθούν τα κενά

ΠΡΟΓΡΑΜΜΑ Τεστ

__________

Page 82: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 82 από 100

Π = 3.14

ΜΕΤΑΒΛΗΤΕΣ

__________: Ε, Ακτίνα

ΑΡΧΗ

ΔΙΑΒΑΣΕ Ακτίνα

Ε <- Π * Ακτίνα ^ 2

ΓΡΑΨΕ 'Εμβαδόν :', ___

___________________

39. Τι θα εκτυπώσουν οι παρακάτω εντολές:

Α <- 0

Β <- 5

Γ <- 10

ΑΝ Α> 10 ΤΟΤΕ

ΑΝ Β > 20 ΤΟΤΕ

ΑΝ Γ > 10 ΤΟΤΕ

ΓΡΑΨΕ Γ

ΑΛΛΙΩΣ

ΓΡΑΨΕ 2 * Γ

ΤΕΛΟΣ_ΑΝ

ΑΛΛΙΩΣ

ΓΡΑΨΕ Β

ΤΕΛΟΣ_ΑΝ

ΑΛΛΙΩΣ

ΑΝ Β < 10 ΤΟΤΕ

ΓΡΑΨΕ Α

ΤΕΛΟΣ_ΑΝ

ΤΕΛΟΣ_ΑΝ

Α. 0 Β. 10 Γ. 5 Δ. 20

40. Να συμπληρωθούν τα κενά ώστε οι επόμενες εντολές να τυπώνουν πάντα τον μεγαλύτερο αριθμό από τους

δύο που διαβάστηκαν

ΔΙΑΒΑΣΕ Α,Β

ΑΝ Α < Β _____

__________

ΤΕΛΟΣ_ΑΝ

ΓΡΑΨΕ Α

41. Να συμπληρωθούν τα κενά ώστε οι επόμενες εντολές να τυπώνουν την τετραγωνική ρίζα

ΔΙΑΒΑΣΕ Α

ΑΝ Α __ 0 ΤΟΤΕ

Ρίζα <- Τ_Ρ(Α)

ΓΡΑΨΕ Ρίζα

__________

ΓΡΑΨΕ 'Δεν υπάρχει ρίζα'

ΤΕΛΟΣ_ΑΝ

42. Πόσες φορές θα εκτελεστεί η εντολή ΓΡΑΨΕ Α

Α <- 10

ΟΣΟ Α <> 0 ΕΠΑΝΑΛΑΒΕ

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5

Α <- Α-1

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

ΓΡΑΨΕ Α

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

Α. 10 Β. 0 Γ. 2 Δ. Άπειρες

43. Να συμπληρωθούν τα κενά ώστε οι επόμενες εντολές να τυπώνουν το άθροισμα των τετραγώνων των

περιττών αριθμών που είναι μικρότεροι από 10

Page 83: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 83 από 100

Άθροισμα <- __________

ΓΙΑ ___ ΑΠΟ 1 ΜΕΧΡΙ 10 ΜΕ_ΒΗΜΑ ____

Άθροισμα <- ________ + Ι ^ 2

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

ΓΡΑΨΕ Άθροισμα

44. Να συμπληρωθούν τα κενά ώστε οι επόμενες εντολές να τυπώνουν το άθροισμα των αριθμών από 100 έως

200

Κ <- _____

Σ <- _____

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ

Σ <- Σ+Κ

Κ <- Κ+1

ΜΕΧΡΙΣ_ΟΤΟΥ __________

ΓΡΑΨΕ Σ

45. Η δήλωση ενός ακεραίου πίνακα 5 στοιχείων γίνεται με την εντολή

Α) ΑΚΕΡΑΙΕΣ : Α[5] Β) ΑΚΕΡΑΙΕΣ : Α

Γ) ΑΚΕΡΑΙΕΣ : Α[1], Α[2], Α[3], Α[4], Α[5] Δ) Α[5] : ΠΙΝΑΚΑΣ ΑΚΕΡΑΙΩΝ

Page 84: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 84 από 100

46. Ποιες από τις παρακάτω εντολές υπολογίζουν το άθροισμα των στοιχείων ενός πίνακα Α με 10 στοιχεία

Α)

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10

Σ <- Σ + Α

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

Σ

Β)

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10

Σ <- Σ + Ι

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

Σ

Γ)

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10

Σ <- Σ + Α[Ι]

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

Σ

Δ)

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10

Σ <- Α[Ι]

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

Σ

47. Οι πίνακες που χρησιμοποιούν ένα μόνο δείκτη για την αναφορά των στοιχείων τους, ονομάζονται _______

πίνακες. μονοδιάστατοι

48. Ποιες εντολές τυπώνουν τα στοιχεία ενός δισδιάστατου πίνακα 5Χ5

Α)

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5

ΓΡΑΨΕ Α[Ι]

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

Σ

Β)

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5

ΓΡΑΨΕ Α[Ι, Ι]

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

Σ

Γ)

ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 5

ΓΡΑΨΕ Α[J]

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

Σ

Δ)

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5

ΓΙΑ J ΑΠΟ 1

ΜΕΧΡΙ 5

ΓΡΑΨΕ Α[Ι, J]

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

Σ

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

Σ

49. Υπολογισμός και εκτύπωση του αθροίσματος κάθε γραμμής ενός δισδιάστατου πίνακα Α5Χ5

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5

Σ <- _______

ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ ____

Σ <- ______ + Α[_, _]

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

ΓΡΑΨΕ Σ

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

Page 85: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 85 από 100

Κεφάλαιο 10

Ερωτήσεις 1. Τα δύο είδη υποπρογραμμάτων είναι οι ______________ και οι ______________

2. Μια διαδικασία και μια συνάρτηση μπορούν να εκτελούν ακριβώς τις ίδιες λειτουργίες

3. Η ενεργοποίηση μιας συνάρτησης πραγματοποιείται με την εντολή ΚΑΛΕΣΕ

4. Η κλήση των διαδικασιών γίνεται με απλή αναφορά του ονόματός τους

5. Μερικά από τα πλεονεκτήματα του τμηματικού προγραμματισμού είναι:

Α. Λιγότερος χρόνος για την ανάπτυξη του προγράμματος

Β. Ευκολότερη διόρθωση

Γ. Ταχύτητα κατά την εκτέλεση

Δ. Χρήση αναδρομικών διαδικασιών

6. Κάθε υποπρόγραμμα πρέπει να έχει μόνο μία είσοδο και μία έξοδο

7. Μια διαδικασία μπορεί να καλέσει το κύριο πρόγραμμα

8. Οι συναρτήσεις μπορούν να υπολογίζουν μόνο μια τιμή και να την επιστρέφουν

9. Ποια είναι η επικεφαλίδα της συνάρτησης Εμβαδόν που υπολογίζει το εμβαδόν ενός τριγώνου (Ε=1/2*β*υ)

Α. ΣΥΝΑΡΤΗΣΗ Εμβαδό(β, υ) Β. ΣΥΝΑΡΤΗΣΗ Εμβαδ

Γ. ΣΥΝΑΡΤΗΣΗ Εμβαδό(β, υ): ΠΡΑΓΜΑΤΙΚΗ Δ. ΠΡΑΓΜΑΤΙΚΗ ΣΥΝΑΡΤΗΣΗ Εμβαδό

10. Μια διαδικασία μπορεί να καλέσει μια συνάρτηση

11. Ο τμηματικός προγραμματισμός έχει ως αποτέλεσμα την ταχύτερη εκτέλεση του προγράμματος

12. Το κυρίως πρόγραμμα πρέπει να είναι πολύ μεγαλύτερο από τα υποπρογράμματα

13. Η διαδικασίες έχουν περιορισμένες λειτουργίες σε σχέση με τις συναρτήσεις

14. Τι είδους υποπρόγραμμα, διαδικασία ή συνάρτηση, πρέπει να χρησιμοποιήσεις για τα παρακάτω:

Α. Εισαγωγή τριών δεδομένων

Β. Εισαγωγή ενός δεδομένου

Γ. Υπολογισμός του μικρότερου από πέντε ακεραίους

Δ. Υπολογισμός των δύο μικρότερων από πέντε ακεραίους

Ε. Έλεγχος αν δυο αριθμοί είναι ίσοι.

ΣΤ. Να ταξινομεί και να επιστρέφει ταξινομημένους πέντε αριθμούς

Ζ. Έλεγχος αν ένας χαρακτήρας είναι φωνήεν ή σύμφωνο.

15. Τι θα τυπώσουν οι παρακάτω εντολές:

Α <- 5

Β <- 10

Γ <- 0

ΚΑΛΕΣΕ Διαδ1(Α, Β)

ΓΡΑΨΕ Α, Β, Γ

ΔΙΑΔΙΚΑΣΙΑ Διαδ1(Γ, Δ)

ΑΡΧΗ

Γ <- Γ - Δ

ΤΕΛΟΣ_ΔΙΑΔΙΑΔΙΚΑΣΙΑΣ Διαδ1

Α. 5, 10, 0 Β. 5, 10, -5 Γ. –5, 10, 0 Δ. –5, 10, -5

16. Τι θα τυπώσουν οι παρακάτω εντολές:

Α <- 5

Β <- 10

ΚΑΛΕΣΕ Διαδ1(Β, Α)

ΓΡΑΨΕ Α,Β

ΔΙΑΔΙΚΑΣΙΑ Διαδ1(Γ, Δ)

ΑΡΧΗ

Page 86: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 86 από 100

ΓΡΑΨΕ Γ, Δ

Γ <- Γ - Δ

ΤΕΛΟΣ_ΔΙΑΔΙΑΔΙΚΑΣΙΑΣ Διαδ1

Α. 5, 10

5, 10

Β. 10, 5

5, 5

Γ. 5, 10

-5, 10

Δ. 10, 5

5, 10

17. Τι θα τυπώσουν οι παρακάτω εντολές:

Α <- 10

Β <- 5

ΚΑΛΕΣΕ διαδ(Α, Β)

ΓΡΑΨΕ Α, Β

ΔΙΑΔΙΚΑΣΙΑ διαδ(Γ, Δ)

Α <- 0

Β <- 0

ΓΡΑΨΕ Α, Β

Α. 10, 5

0, 0

Β. 10, 5

10, 5

Γ. 0, 0

0, 0

Δ. 0, 0

10, 5

Page 87: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 87 από 100

Υποπρογράμματα Ασκήσεις Άσκηση 1. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τί θα εκτυπωθεί;

ΠΡΟΓΡΑΜΜΑ Πίνακας_Τιμών2

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: Α, Β, Γ

ΑΡΧΗ

Α <– 3

Β <– 13

Γ <– 2

ΓΡΑΨΕ Α, Β, Γ

ΚΑΛΕΣΕ Επεξεργασία_Τιμών2 (Β, Γ)

ΓΡΑΨΕ Α, Β, Γ

ΚΑΛΕΣΕ Επεξεργασία_Τιμών2 (Γ, Α)

ΓΡΑΨΕ Α, Β, Γ

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

! =========================================

ΔΙΑΔΙΚΑΣΙΑ Επεξεργασία_Τιμών2 (αριθμός1, αριθμός2)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: αριθμός1, αριθμός2

ΑΡΧΗ

αριθμός1 <– αριθμός1 DIV 2

αριθμός2 <– αριθμός2 ^ 3

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Λύση

Κυρίως Πρόγραμμα Υποπρόγραμμα

Α Β Γ αριθμός1 αριθμός2

Κυρίως πρόγραμμα : 3 13 2

1η κλήση διαδικασίας : 13 2

Εκτέλεση διαδικασίας : 6 8

Επιστροφή στο κυρίως πρόγραμμα : 3 6 8

2η κλήση διαδικασίας : 8 3

Εκτέλεση διαδικασίας : 4 27

Επιστροφή στο κυρίως πρόγραμμα : 27 6 4

Στην πρώτη εντολή ΓΡΑΨΕ θα εκτυπωθούν οι τιμές: 3, 13, 2

Στην δεύτερη εντολή ΓΡΑΨΕ θα εκτυπωθούν οι τιμές: 3, 6, 8

Στην τρίτη εντολή ΓΡΑΨΕ θα εκτυπωθούν οι τιμές: 27, 6, 4

Άσκηση 2. Να σχηματίσετε τον πίνακα τιμών του παρακάτω αλγορίθμου. Τί θα εκτυπωθεί;

ΠΡΟΓΡΑΜΜΑ Πίνακας_Τιμών5

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: Α, Β

ΑΡΧΗ

Α <–2

Β <– 19

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ

ΚΑΛΕΣΕ Επεξεργασία_Τιμών5 (Β, Α)

ΓΡΑΨΕ Α, Β

ΜΕΧΡΙΣ_ΟΤΟΥ (Α > Β)

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

! =========================================

Page 88: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 88 από 100

ΔΙΑΔΙΚΑΣΙΑ Επεξεργασία_Τιμών5 (αριθμός1, αριθμός2)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: αριθμός1, αριθμός2

ΑΡΧΗ

αριθμός1 <– αριθμός1 - 2

αριθμός2 <– αριθμός2 + 5

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Λύση

Κυρίως Πρόγραμμα Υποπρόγραμμα

Α Β αριθμός1 αριθμός2

Κυρίως πρόγραμμα : 2 19

1η επανάληψη

1η κλήση διαδικασίας : 19 2

Εκτέλεση διαδικασίας : 17 7

Επιστροφή στο κυρίως πρόγραμμα : 7 17

7 > 17 δεν ισχύει - 2η επανάληψη

2η κλήση διαδικασίας : 17 7

Εκτέλεση διαδικασίας : 15 12

Επιστροφή στο κυρίως πρόγραμμα : 12 15

12 > 15 δεν ισχύει - 3η επανάληψη

3η κλήση διαδικασίας : 12

Εκτέλεση διαδικασίας : 13 17

Επιστροφή στο κυρίως πρόγραμμα : 17 13

17 > 13 Ισχύει τέλος προγράμματος

Στην πρώτη επανάληψη θα εκτυπωθούν οι τιμές: 7, 17

Στην δεύτερη επανάληψη θα εκτυπωθούν οι τιμές: 12, 15

Στην τρίτη επανάληψη θα εκτυπωθούν οι τιμές: 17, 13

Άσκηση 3. Να γράψετε υποπρόγραμμα που να δέχεται δυο αριθμούς και να επιστρέφει τον μικρότερο

Λύση

ΣΥΝΑΡΤΗΣΗ Εύρεση_Μικρ (Α, Β): ΠΡΑΓΜΑΤΙΚΗ

ΜΕΤΑΒΛΗΤΕΣ

ΠΡΑΓΜΑΤΙΚΕΣ : Α, Β, εκτίμηση

ΑΡΧΗ

ΑΝ Α < Β ΤΟΤΕ

εκτίμηση <-- Α

ΑΛΛΙΩΣ

εκτίμηση <-- Β

ΤΕΛΟΣ_ΑΝ

Εύρεση_Μικρ <-- εκτίμηση

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Άσκηση 4α. Να γράψετε υποπρόγραμμα που να δέχεται έναν αριθμό και να επιστρέφει το τετράγωνό του

Λύση

ΣΥΝΑΡΤΗΣΗ Εις_το_Τετράγωνο (Χ): ΠΡΑΓΜΑΤΙΚΗ

ΜΕΤΑΒΛΗΤΕΣ

ΠΡΑΓΜΑΤΙΚΕΣ : Χ

ΑΡΧΗ

Εις_το_Τετράγωνο <-- Χ ^ 2

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Page 89: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 89 από 100

Άσκηση 4β. Να γράψετε υποπρόγραμμα που να διαβάζει έναν αριθμό και να επιστρέφει το τετράγωνό του

Λύση

ΔΙΑΔΙΚΑΣΙΑ Τετράγωνο (Χ2)

ΜΕΤΑΒΛΗΤΕΣ

ΠΡΑΓΜΑΤΙΚΕΣ : Χ, Χ2

ΑΡΧΗ

ΔΙΑΒΑΣΕ Χ

Χ2 <-- Χ ^ 2

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Άσκηση 5. Να γράψετε υποπρόγραμμα που να δέχεται την τιμή ενός προϊόντος και το συντελεστή ΦΠΑ

και να υπολογίζει και να τυπώνει την αξία του ΦΠΑ και την τελική τιμή του προϊόντος.

Άσκηση 6. Να γράψετε υποπρόγραμμα που να ελέγχει αν ένας ακέραιος αριθμός είναι άρτιος

Λύση

ΣΥΝΑΡΤΗΣΗ Άρτιος (Α) : ΛΟΓΙΚΗ

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ : Α

ΛΟΓΙΚΕΣ: εκτίμηση

ΑΡΧΗ

ΑΝ Α MOD 2 = 0 ΤΟΤΕ

εκτίμηση <-- ΑΛΗΘΗΣ

ΑΛΛΙΩΣ

εκτίμηση <-- ΨΕΥΔΗΣ

ΤΕΛΟΣ_ΑΝ

Άρτιος <-- εκτίμηση

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Άσκηση 7. Να γράψετε υποπρόγραμμα που να μετατρέπει οποιοδήποτε ποσό από Δραχµές σε Ευρώ (το

ποσό πρέπει να είναι θετικό)

Άσκηση 8. Να γράψετε υποπρόγραμμα που να δέχεται ως όρισμα δυο αριθμούς: την ακτίνα της βάσης και

το ύψος του κυλίνδρου και να υπολογίζει το εμβαδόν της επιφάνειάς του

Άσκηση 9. Να γράψετε υποπρόγραμμα που να διαβάζει το πλήθος αλλά και τα στοιχεία ενός

μονοδιάστατου πίνακα (μέγιστο πλήθος στοιχείων 1000) με περιεχόμενα ακέραιους αριθμούς

Άσκηση 10. Να γράψετε υποπρόγραμμα που να δέχεται το πλήθος και θα διαβάζει τα στοιχεία ενός

δισδιάστατου πίνακα (μέγιστο πλήθος γραμμών 1000 και στηλών 10) με περιεχόμενα ακέραιους αριθμούς.

Το υποπρόγραμμα να επιστρέφει και τις διαστάσεις του πίνακα

Λύση

ΔΙΑΔΙΚΑΣΙΑ Εισαγωγή_Δισ_Πίνακα (γρ, στ, Πιν)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ : γρ, στ, Πιν[1000, 10], i, j

ΑΡΧΗ

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ γρ

ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ στ

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ

ΓΡΑΨΕ 'Δώσε το στοιχείο της ', i, ' γραμμής και της ', j, ' στήλης'

ΔΙΑΒΑΣΕ Πιν[i, j]

ΜΕΧΡΙΣ_ΟΤΟΥ (Πιν[i, j] > 0)

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

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

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Άσκηση 11. Να γράψετε υποπρόγραμμα που να δέχεται το πλήθος αλλά και τα στοιχεία ενός

μονοδιάστατου πίνακα (μέγιστο πλήθος 1000) με περιεχόμενα πραγματικούς αριθμούς.

Λύση

ΣΥΝΑΡΤΗΣΗ Υπολογισμός_ΜΟ (Π, Πιν): ΠΡΑΓΜΑΤΙΚΗ

Page 90: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 90 από 100

ΜΕΤΑΒΛΗΤΕΣ

ΠΡΑΓΜΑΤΙΚΕΣ : Πιν[1000], άθροισμα

ΑΚΕΡΑΙΕΣ : Π, i

ΑΡΧΗ

άθροισμα <-- 0

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Π

άθροισμα <-- άθροισμα + Πιν[i]

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

Υπολογισμός_ΜΟ <-- άθροισμα / Π

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Άσκηση 12. Να γράψετε υποπρόγραμμα που να δέχεται έναν ακέραιο τριψήφιο αριθμό και να επιστρέφει

τον αντίστοιχο δυαδικό αριθμό

Λύση

Το αποτέλεσμα θα είναι πίνακας (το πολύ 10 θέσεων αφού 210 = 1024), άρα θα επιλέξουμε διαδικασία

ΔΙΑΔΙΚΑΣΙΑ Δεκαδικός_σε_Δυαδικό (αριθμός, ΠΙΝΑΚΑΣ)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ : αριθμός, temp_αριθμός, i, ΠΙΝΑΚΑΣ[10], temp_ΠΙΝΑΚΑΣ[10], ψηφία

ΑΡΧΗ

ΑΝ (Πλήθος_Ψηφίων (αριθμός) > 3) ΤΟΤΕ ! Άσκηση 10.1.11

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10 ! Όλα μηδέν

ΠΙΝΑΚΑΣ[i] <-- 0

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

ΑΛΛΙΩΣ

temp_αριθμός <-- αριθμός

ψηφία <-- 0

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ

ψηφία <-- ψηφία + 1

temp_ΠΙΝΑΚΑΣ[ψηφία] <-- temp_αριθμός MOD 2

temp_αριθμός <-- temp_αριθμός DIV 2

ΜΕΧΡΙΣ_ΟΤΟΥ (temp_αριθμός = 0)

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ ψηφία ! αντιστροφή πίνακα

ΠΙΝΑΚΑΣ[i] <-- temp_ΠΙΝΑΚΑΣ[ψηφία + 1 - i]

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

ΤΕΛΟΣ_ΑΝ

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Άσκηση 13. Να γράψετε υποπρόγραμμα που να δέχεται ως όρισμα έναν αριθμό και έναν μονοδιάστατο

πίνακα Ν (μέγιστο πλήθος 1000) θέσεων πραγματικών αριθμών και να ελέγχει πόσες φορές εντοπίζεται

ο αριθμός αυτός στον πίνακα και να επιστρέφει το πλήθος αυτό

Άσκηση 14. Να γράψετε υποπρόγραμμα που να δέχεται δυο πραγματικούς αριθμούς να αντιμεταθέτει τις

τιμές τους

Άσκηση 15. Να γράψετε υποπρόγραμμα που να ταξινομεί έναν πίνακα με μέγιστο πλήθος θέσεων 1000

Άσκηση 16. Να υλοποιήσετε τον αλγόριθμο του πολλαπλασιασμού αλα ρωσικά σε πρόγραμμα γραμμένο σε

ΓΛΩΣΣΑ

Λύση

ΠΡΟΓΡΑΜΜΑ Πολλαπλ_αλά_ρωσικά_Πρόγραμμα

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: Αριθμός1, Αριθμός2, Αποτέλεσμα

ΑΡΧΗ

ΓΡΑΨΕ 'Εισάγετε 2 ακέραιους θετικούς αριθμούς'

ΔΙΑΒΑΣΕ Αριθμός1, Αριθμός2

Αποτέλεσμα <– 0

Page 91: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 91 από 100

ΟΣΟ (Αριθμός2 > 0) ΕΠΑΝΑΛΑΒΕ

ΑΝ (Αριθμός2 MOD 2 = 1) ΤΟΤΕ

Αποτέλεσμα <– Αποτέλεσμα + Αριθμός1

ΤΕΛΟΣ_ΑΝ

ΚΑΛΕΣΕ Τροποποίηση_Μεταβλητών (Αριθμός1, Αριθμός2)

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

ΓΡΑΨΕ 'Το αποτέλεσμα είναι: ', Αποτέλεσμα

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

! =========================================

ΔΙΑΔΙΚΑΣΙΑ Τροποποίηση_Μεταβλητών (Μ1, Μ2)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: Μ1, Μ2

ΠΡΑΓΜΑΤΙΚΕΣ: βοηθητική

ΑΡΧΗ

M1 <– M1 * 2

βοηθητική <– M2 / 2

M2 <– Α_Μ (βοηθητική)

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Άσκηση 17. Να αναπτύξετε πρόγραμμα που θα διαβάζει έναν ακέραιο αριθμό >100 και θα υπολογίζει και

θα εκτυπώνει την τιμή της παράστασης:

Λύση

ΠΡΟΓΡΑΜΜΑ Παράσταση

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: μετρητής, κάτω_όριο, άνω_όριο, πλήθος, αριθμητής, παρονομαστής

ΠΡΑΓΜΑΤΙΚΕΣ: άθροισμα

ΑΡΧΗ

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ

ΔΙΑΒΑΣΕ πλήθος

ΜΕΧΡΙΣ_ΟΤΟΥ πλήθος > 0 ΚΑΙ πλήθος <= 100

άθροισμα <– 0

ΓΙΑ μετρητής ΑΠΟ 1 ΜΕΧΡΙ πλήθος

παρονομαστής <– Παραγοντικό (μετρητής) ! συνάρτηση που υπολογίζει το παραγοντικό

άθροισμα <– άθροισμα + μετρητής * (μετρητής ^ 2 / παρονομαστής)

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

ΓΡΑΨΕ 'Η παράσταση είναι ', άθροισμα

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

! ================================================================

ΣΥΝΑΡΤΗΣΗ Παραγοντικό (αριθμός): ΑΚΕΡΑΙΗ

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ : αριθμός, εκτίμηση, i

ΑΡΧΗ

ΑΝ (αριθμός < 0) ΤΟΤΕ

εκτίμηση <- -1 ! Η τιμή -1 θα ερμηνευτεί ως λάθος δεδομένο εισόδου

ΑΛΛΙΩΣ

εκτίμηση <- 1

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ αριθμός

εκτίμηση <- εκτίμηση * i

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

ΤΕΛΟΣ_ΑΝ

Παραγοντικό <- εκτίμηση

Page 92: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 92 από 100

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Άσκηση 18. Τη στιγμή που η ταμίας του σουπερ μάρκετ ΦΑΔΙΣΟΠΟΥΛΟΣ "περνά" κάποιο προϊόν από

τον σαρωτή γραμμωτού κώδικα, η ταμειακή μηχανή αναζητά στη βάση δεδομένων του καταστήματος τις

πληροφορίες που αφορούν το προϊόν αυτό. Η βάση αυτή αποτελείται από τον μονοδιάστατο πίνακα

ΚΩΔΙΚΟΣ με πλήθος γραμμών όσα και τα προϊόντα, τον μονοδιάστατο πίνακα ΤΙΜΗ που περιέχει

αντίστοιχα την τιμή του προϊόντος και τον μονοδιάστατο πίνακα ΠΕΡΙΓΡΑΦΗ που περιέχει λίγα λόγια για

το προϊόν (αυτά που αναγράφονται στην οθόνη). Να αναπτυχθεί πρόγραμμα που θα διαβάζει κωδικό

προϊόντος και θα εκτυπώνει την περιγραφή του στην οθόνη της ταμειακής ενώ στο τέλος θα υπολογίζει

το κόστος της αγοράς. Η διαδικασία ολοκληρώνεται όταν εισαχθεί κωδικός προϊόντος 0. Στο σημείο αυτό

ερωτάται ο χρήστης αν έχει κερδοκάρτα και σε αυτήν την περίπτωση εισάγεται ο κωδικός της,

ανασύρονται τα στοιχεία του πελάτη και προστίθεται το ποσό αγορών στο αντίστοιχο πεδίο -

πραγματοποιείται δε έκπτωση 1% επί του ποσού αυτού. Ο πίνακας ΚΩΔΙΚΟΣ_ΠΕΛ έχει δυο στήλες: η

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

ενώ αντίστοιχα ο πίνακας ΟΝΟΜΑ_ΠΕΛ περιέχει το όνομα του κατόχου της κερδοκάρτας

Λύση

ΠΡΟΓΡΑΜΜΑ ΦΑΔΙΣΟΠΟΥΛΟΣ_Μαρκετ

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ : i, j, κωδικός_προϊόντος, κωδικός_πελάτη, θέση, θέση_πελ

ΑΚΕΡΑΙΕΣ : Πλήθος_προϊόντων, ΚΩΔΙΚΟΣ[1000], ΤΙΜΗ[1000], ΠΕΡΙΓΡΑΦΗ[1000]

ΑΚΕΡΑΙΕΣ : Πλήθος_πελατών, ΟΝΟΜΑ_ΠΕΛ[1000], ΚΩΔΙΚΟΣ_ΠΕΛ[1000,2]

ΠΡΑΓΜΑΤΙΚΕΣ : κόστος, έκπτωση

ΧΑΡΑΚΤΗΡΕΣ : μήνυμα_κερδοκάρτας, απάντηση

ΑΡΧΗ

ΚΑΛΕΣΕ Εισαγωγή_Δεδομένων (Πλήθος_προϊόντων, ΚΩΔΙΚΟΣ, ΤΙΜΗ, ΠΕΡΙΓΡΑΦΗ, Πλήθος_πελατών,

ΟΝΟΜΑ_ΠΕΛ, ΚΩΔΙΚΟΣ_ΠΕΛ)

κόστος <– 0

ΔΙΑΒΑΣΕ κωδικός_προϊόντος

ΟΣΟ (κωδικός_προϊόντος <> 0) ΕΠΑΝΑΛΑΒΕ

θέση <– Σειρ_Αναζήτηση (κωδικός_προϊόντος, Πλήθος_προϊόντων, ΚΩΔΙΚΟΣ) ! Συνάρτηση

ΑΝ (θέση = 0) ΤΟΤΕ ! Δεν βρέθηκε στον πίνακα ο συνδρομητής αυτός

ΓΡΑΨΕ 'Κάποιο λάθος έγινε κατά την εισαγωγή του κωδικού προϊόντος, δοκιμάστε πάλι'

ΑΛΛΙΩΣ

ΓΡΑΨΕ ΠΕΡΙΓΡΑΦΗ[θέση] ! περιγραφή του προϊόντος

κόστος <– κόστος + ΤΙΜΗ[θέση]

ΤΕΛΟΣ_ΑΝ

ΔΙΑΒΑΣΕ κωδικός_προϊόντος ! Διαβάζουμε τον κωδικό για την επόμενη επανάληψη

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

μήνυμα_κερδοκάρτας <– 'Έχετε κερδοκάρτα (Ναι/Όχι);'

απάντηση <– Ναι_Οχι (μήνυμα_κερδοκάρτας) ! Συνάρτηση

ΑΝ (απάντηση = 'Όχι') ΤΟΤΕ ! Δεν υπάρχει κερδοκάρτα

ΓΡΑΨΕ 'Ποσό πληρωμής', κόστος, ' €. Για έκπτωση στις αγορές σας αποκτήστε την κερδοκάρτα...'

ΑΛΛΙΩΣ

ΔΙΑΒΑΣΕ κωδικός_πελάτη

θέση_πελ <– Σειρ_Αναζήτηση (κωδικός_πελάτη, πλήθος_πελατών, ΚΩΔΙΚΟΣ_ΠΕΛ) ! Συνάρτηση

ΑΝ (θέση_πελ = 0) ΤΟΤΕ ! Δεν βρέθηκε στον πίνακα αυτός ο κωδικός πελάτη

ΓΡΑΨΕ 'Κάποιο λάθος έγινε κατά την εισαγωγή του κωδικού πελάτη. Δοκιμάστε πάλι...'

ΑΛΛΙΩΣ

ΚΩΔΙΚΟΣ_ΠΕΛ[θέση_πελ, 2] <– ΚΩΔΙΚΟΣ_ΠΕΛ[θέση_πελ, 2] + κόστος

έκπτωση <– 0.01 * ΚΩΔΙΚΟΣ_ΠΕΛ[θέση_πελ, 2]

κόστος <– κόστος - έκπτωση

ΓΡΑΨΕ 'Ποσό πληρωμής ', κόστος, ' € και έκπτωση ', έκπτωση

ΓΡΑΨΕ 'Σας ευχαριστούμε ', ΟΝΟΜΑ_ΠΕΛ[θέση_πελ]

Page 93: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 93 από 100

ΤΕΛΟΣ_ΑΝ

ΤΕΛΟΣ_ΑΝ

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

! =========================================

ΔΙΑΔΙΚΑΣΙΑ Εισαγωγή_Δεδομένων (Πλήθος_προϊόντων, ΚΩΔΙΚΟΣ, ΤΙΜΗ, ΠΕΡΙΓΡΑΦΗ, Πλήθος_πελατών,

ΟΝΟΜΑ_ΠΕΛ, ΚΩΔΙΚΟΣ_ΠΕΛ)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ : i, j, στήλες

ΑΚΕΡΑΙΕΣ : Πλήθος_προϊόντων, ΚΩΔΙΚΟΣ[1000], ΤΙΜΗ[1000], ΠΕΡΙΓΡΑΦΗ[1000]

ΑΚΕΡΑΙΕΣ : Πλήθος_πελατών, ΟΝΟΜΑ_ΠΕΛ[1000], ΚΩΔΙΚΟΣ_ΠΕΛ[1000,2]

ΑΡΧΗ

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ

ΓΡΑΨΕ 'Δώσε το πλήθος των προιόντων (μέγιστο 1000)'

ΔΙΑΒΑΣΕ Πλήθος_προϊόντων

ΜΕΧΡΙΣ_ΟΤΟΥ (Πλήθος_προϊόντων > 0) ΚΑΙ (Πλήθος_προϊόντων < 1000)

ΚΑΛΕΣΕ Εισαγωγή_Μον_Πίνακα (Πλήθος_προϊόντων, ΚΩΔΙΚΟΣ)

ΚΑΛΕΣΕ Εισαγωγή_Μον_Πίνακα (Πλήθος_προϊόντων, ΤΙΜΗ)

ΚΑΛΕΣΕ Εισαγωγή_Μον_Πίνακα (Πλήθος_προϊόντων, ΠΕΡΙΓΡΑΦΗ)

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ

ΓΡΑΨΕ 'Δώσε το πλήθος των πελατών (μέγιστο 1000)'

ΔΙΑΒΑΣΕ Πλήθος_πελατών

ΜΕΧΡΙΣ_ΟΤΟΥ (Πλήθος_πελατών> 0) ΚΑΙ (Πλήθος_πελατών< 1000)

ΚΑΛΕΣΕ Εισαγωγή_Μον_Πίνακα (Πλήθος_πελατών, ΟΝΟΜΑ_ΠΕΛ)

στήλες <– 2

ΚΑΛΕΣΕ Εισαγωγή_Δισ_Πίνακα (Πλήθος_πελατών, στήλες, ΚΩΔΙΚΟΣ_ΠΕΛ)

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

! =========================================

! Πρέπει να ακολουθήσουν τα υποπρογράμματα που χρησιμοποιούνται στο πρόγραμμα

Άσκηση 19. Στο πληκτρολόγιο του Γιωργάκη χάλασε το πλήκτρο "^" καθώς και το πλήκτρο "*" και

πρέπει να αναπτύξει πρόγραμμα το οποίο να υπολογίζει τη δύναμη 2 αριθμών. Ο Γιωργάκης θυμήθηκε ότι

έχει υλοποιήσει στο παρελθόν το υποπρόγραμμα: "ΣΥΝΑΡΤΗΣΗ Πολ_αλά_Ρωσικά (Μ1, Μ2): ΑΚΕΡΑΙΑ"

που υλοποιεί τον πολλαπλασιασμό αλά ρωσικά.

Να αναπτύξετε πρόγραμμα το οποίο:

α. να διαβάζει δυο ακέραιους αριθμούς x, n οι οποίοι πρέπει να είναι θετικοί.

β. να υπολογίζει την τιμή x^n με τη βοήθεια του υποπρογράμματος.

γ. να εμφανίζει το αποτέλεσμα στην οθόνη

Υπόδειξη: να χρησιμοποιήσετε τη γνωστή σχέση x^n=x*x*x*x... (n φορές)

Λύση

ΠΡΟΓΡΑΜΜΑ Υπολογισμός

ΜΕΤΑΒΛΗΤΕΣ

ΠΡΑΓΜΑΤΙΚΕΣ : x, n, γιν, i

ΑΡΧΗ

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ

ΔΙΑΒΑΣΕ x

ΜΕΧΡΙΣ_ΟΤΟΥ x > 0

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ

ΔΙΑΒΑΣΕ n

ΜΕΧΡΙΣ_ΟΤΟΥ n > 0

γιν <- 1

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ n

γιν <- Πολ_Αλά_Ρωσικά(γιν, x)

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

ΓΡΑΨΕ γιν

Page 94: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 94 από 100

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Υπολογισμός

Άσκηση 20. Στην εταιρεία διοδίων χρησιμοποιούν πίνακα Π[3] που περιέχει το πλήθος των οχημάτων

έχουν διέλθει από τα διόδια, πιο συγκεκριμένα: Επιβατικά (θέση 1 πίνακα), Φορτηγά (θέση 2 πίνακα) και

Δίκυκλα (θέση 3 πίνακα). Το κόστος διέλευσης για κάθε κατηγορία οχήματος είναι 2, 3, 1 ευρώ με τη

σειρά που αναφέρθηκαν.

Να αναπτύξετε αλγόριθμο πρόγραμμα για την ημερήσια διαχείριση των διοδίων που θα επιτελεί τις

παρακάτω λειτουργίες:

1. Θα μηδενίζει τα κελιά του πίνακα Π (αρχή της ημέρας)

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

(δε χρειάζεται να την υλοποιήσετε) «Διέλευση_οχήματος» που επιστρέφει τον τύπο του οχήματος, που

μπορεί να είναι "Ε", "Φ" ή "Δ".

Είναι αυτονόητο ότι εντός της διαδικασίας πραγματοποιείται ο απαραίτητος έλεγχος δεδομένων. Να

περιγράψετε τις παραμέτρους που χρησιμοποιεί η διαδικασία αυτή.

3. Να εμφανίζει το κόστος διέλευσης του οχήματος αυτού. Ο υπολογισμός του κόστους θα

πραγματοποιείται με υποπρόγραμμα που θα υλοποιηθεί για το σκοπό αυτό.

4. Θα ενημερώνει τον πίνακα Π καταμετρώντας το διερχόμενο όχημα. Η ενέργεια αυτή θα

πραγματοποιείται με υποπρόγραμμα που θα υλοποιηθεί για το σκοπό αυτό.

Η επαναληπτική διαδικασία ολοκληρώνεται όταν εισαχθεί το "Πέρας ημέρας" ως τύπος οχήματος.

5. Θα εμφανίζεται το πλήθος των οχημάτων κάθε κατηγορίας που διήλθαν. Η ενέργεια αυτή θα

πραγματοποιείται με υποπρόγραμμα που θα υλοποιηθεί για το σκοπό αυτό.

Λύση

ΠΡΟΓΡΑΜΜΑ Διόδια

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: i, Π[3], κόστος

ΧΑΡΑΚΤΗΡΕΣ: τύπος

ΑΡΧΗ

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 3

Π[i] <– 0

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

ΚΑΛΕΣΕ Διέλευση_οχήματος(τύπος) ! μια παράμετρος εξόδου

ΟΣΟ (τύπος <> 'πέρας ημέρας') ΕΠΑΝΑΛΑΒΕ

κόστος <– Πόσο_πληρώνει(τύπος)

ΓΡΑΨΕ κόστος

ΚΑΛΕΣΕ Καταμέτρηση(τύπος, Π)

ΚΑΛΕΣΕ Διέλευση_οχήματος(τύπος)

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

ΚΑΛΕΣΕ Έξοδος(Π)

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Διόδια

! =========================================

ΣΥΝΑΡΤΗΣΗ Πόσο_πληρώνει(τ): ΑΚΕΡΑΙΑ

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: χρ

ΧΑΡΑΚΤΗΡΕΣ: τ

ΑΡΧΗ

ΑΝ (τ = 'Ε') ΤΟΤΕ

χρ <– 2

ΑΛΛΙΩΣ_ΑΝ (τ = 'Φ') ΤΟΤΕ

χρ <– 3

ΑΛΛΙΩΣ

χρ <– 1

ΤΕΛΟΣ_ΑΝ

Πόσο_πληρώνει <– χρ

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Page 95: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 95 από 100

! =========================================

ΔΙΑΔΙΚΑΣΙΑ Καταμέτρηση (τ, Π)

ΜΕΤΑΒΛΗΤΕΣ

ΧΑΡΑΚΤΗΡΕΣ: τ

ΑΚΕΡΑΙΕΣ: Π[3]

ΑΡΧΗ

ΑΝ (τ = 'Ε') ΤΟΤΕ

Π[1] <– Π[1] + 1

ΑΛΛΙΩΣ_ΑΝ (τ = 'Φ') ΤΟΤΕ

Π[2] <– Π[2] + 1

ΑΛΛΙΩΣ

Π[3] <– Π[3] + 1

ΤΕΛΟΣ_ΑΝ

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

! =========================================

ΔΙΑΔΙΚΑΣΙΑ Έξοδος (Μ)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: i, Μ[3]

ΑΡΧΗ

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 3

ΓΡΑΨΕ Μ[i]

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

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Άσκηση 21. Να γράψετε ένα πρόγραμμα που επιτελεί την ίδια λειτουργία, απαλείφοντας τα

υποπρογράμματα

ΠΡΟΓΡΑΜΜΑ Άσκηση_ΙΙ

...

ΑΡΧΗ

ΔΙΑΒΑΣΕ α

λ ‹― 0

ΓΙΑ β ΑΠΟ 1 ΜΕΧΡΙ 10

ΚΑΛΕΣΕ Έλα (α, β, γ, δ)

λ ‹― λ + 2

ΓΡΑΨΕ α, λ, δ

ζ ‹― μέση (α, β)

ΓΡΑΨΕ ζ

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

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Άσκηση

! ========================================

ΔΙΑΔΙΚΑΣΙΑ Έλα (κ, λ, μ, α)

...

ΑΡΧΗ

μ ‹― (κ + λ ) DIV 2

α ‹― κ * λ

κ ‹― κ – α + 2

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

! ========================================

ΣΥΝΑΡΤΗΣΗ μέση (x, y): ΑΚΕΡΑΙΑ

ΣΤΑΘΕΡΕΣ

λ = 5

...

ΑΡΧΗ

μέση ‹― (x + y) MOD λ

Page 96: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 96 από 100

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Λύση

ΠΡΟΓΡΑΜΜΑ Άσκηση_ΙΙ

ΣΤΑΘΕΡΕΣ

Ω = 5

...

ΑΡΧΗ

ΔΙΑΒΑΣΕ α

λ ‹― 0

ΓΙΑ β ΑΠΟ 1 ΜΕΧΡΙ 10

γ ‹― (α + β ) DIV 2

δ ‹― α * β

α ‹― α – δ + 2

λ ‹― λ + 2

ΓΡΑΨΕ α, λ, δ

ζ ‹― (α + β) MOD Ω

ΓΡΑΨΕ ζ

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

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Άσκηση_ΙΙ

Άσκηση 22. Δίνεται το παρακάτω πρόγραμμα και υποπρόγραμμα:

ΠΡΟΓΡΑΜΜΑ Άσκηση

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: κ, λ

ΑΡΧΗ

ΔΙΑΒΑΣΕ κ, λ

ΑΝ Αξιολόγηση(κ, λ) >= κ ΤΟΤΕ

ΓΡΑΨΕ κ

ΑΛΛΙΩΣ

ΓΡΑΨΕ λ

ΤΕΛΟΣ_ΑΝ

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Άσκηση

ΣΥΝΑΡΤΗΣΗ Αξιολόγηση(α, β): ΑΚΕΡΑΙΑ

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: α, β, ω

ΑΡΧΗ

α ‹― α + 2

β ‹― β – 3

ω ‹― α * β – 2

Αξιολόγηση ‹― ω ^ 2 – (α + β)

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

1. Να γράψετε διαδικασία με όνομα Αξιολόγ_διαδ που να υλοποιεί τις ίδιες λειτουργίες με τη συνάρτηση

Αξιολόγηση.

2. Να παρουσίασετε τη νέα μορφή του προγράμματος ώστε να επιτελεί τις ίδιες λειτουργίες με τη βοήθεια της

διαδικασίας Αξιολόγ_διαδ.

3. Να μετατρέψετε το πρόγραμμα Άσκηση σε ψευδογλώσσα.

Άσκηση 23. Δίνεται η παρακάτω διαδικασία:

ΔΙΑΔΙΚΑΣΙΑ Επεξεργασία (μ, ε)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: Π[50], ε, α, i

ΠΡΑΓΜΑΤΙΚΕΣ: μ

ΑΡΧΗ

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 50

ΔΙΑΒΑΣΕ Π[i]

Page 97: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 97 από 100

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

α ‹― 0

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 50

α ‹― α + Π[i]

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

μ ‹― α / 50

ε ‹― Π[1]

ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ 50

ΑΝ Π[i] < ε ΤΟΤΕ

ε ‹― Π[i]

ΤΕΛΟΣ_ΑΝ

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

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

1. Ποια από τα χαρακτηριστικά των υποπρογραμμάτων δεν διακρίνουν το υποπρόγραμμα αυτό;

2. α. Να περιγράψετε τι ακριβώς κάνει η διαδικασία που παρουσιάζεται παραπάνω. Να διακρίνετε τις

επιμέρους λειτουργίες που επιτελεί η διαδικασία.

β. Να υλοποιήσετε ξεχωριστό υποπρόγραμμα για κάθε επιμέρους λειτουργία.

γ. Να παρουσιάσετε τη νέα μορφή της διαδικασίας ώστε με τη βοήθεια των υποπρογραμμάτων που

αναπτύξατε στο προηγούμενο ερώτημα να επιτελεί την ίδια λειτουργία.

Άσκηση 24. Να αναπτύξετε υποπρόγραμμα που να δέχεται έναν πίνακα 100x40 και έναν αριθμό που

εκφράζει κάποια γραμμή του πίνακα και να επιστρέφει το μέσο όρο και το μέγιστο στοιχείο της γραμμής

αυτής.

Λύση

ΔΙΑΔΙΚΑΣΙΑ Υπολογισμοί (ΠΙΝ, γραμμή, μο, max)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: γραμμή, j

ΠΡΑΓΜΑΤΙΚΈΣ: ΠΙΝ[100, 40], μο, max, S

ΑΡΧΗ

max ‹― ΠΙΝ[γραμμή, 1]

ΓΙΑ j ΑΠΟ 2 ΜΕΧΡΙ 40

ΑΝ max > ΠΙΝ[γραμμή, j] ΤΟΤΕ

max ‹― ΠΙΝ[γραμμή, j]

ΤΕΛΟΣ_ΑΝ

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

S ‹― 0

ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 40

S ‹― S + ΠΙΝ[γραμμή, j]

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

μο ‹― S / 40

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Άσκηση 25. Η TEVERLAS χρεώνει κλιμακωτά τους συνδρομητές της για κάθε τηλεφώνημα, σύμφωνα με

τον παρακάτω πίνακα:

Χρόνος συνδιάλεξης (δευτ.) Χρέωση (euro / δευτ.)

Μέχρι και 120 0.0020

Από 120 μέχρι και 360 0.0016

Άνω των 360 0.0010

Επιπλέον στις παραπάνω χρεώσεις υπάρχει κόστος για κάθε κλήση 0.01 €. Το μηνιαίο πάγιο είναι 10 €

ενώ υπάρχει και ΦΠΑ 19% επί της συνολικής χρέωσης. Να αναπτυχθεί πρόγραμμα, το οποίο:

α. Θα διαβάζει τις διάρκειες των κλήσεων που πραγματοποίησε ένας συνδρομητής στη διάρκεια του μήνα (σε

δευτερόλεπτα). Η διαδικασία θα τερματίζεται όταν δοθεί η τιμή -1.

β. Για κάθε κλήση θα υπολογίζει τη συνολική χρέωση του συνδρομητή σύμφωνα με τον πίνακα. Ο

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

Page 98: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 98 από 100

γ. Θα εμφανίζει τη συνολική χρέωση του συνδρομητή. δ. Θα εμφανίζει το πλήθος των κλήσεων που

πραγματοποιήθηκαν.

Άσκηση 26. Για την παρακολούθηση των θερμοκρασιών της επικράτειας κατά το μήνα Μάιο καταγράφεται

κάθε μέρα η θερμοκρασία στις 12:00 το μεσημέρι για 20 πόλεις. Να αναπτύξετε πρόγραμμα το οποίο:

α. θα διαβάζει τα ονόματα των 20 πόλεων και τις αντίστοιχες θερμοκρασίες για κάθε μία από τις ημέρες

του μήνα και θα καταχωρεί τα στοιχεία σε πίνακες.

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

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

που θα κατασκευάσετε για το σκοπό αυτό.

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

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

του υποπρογράμματος που αναπτύχθηκε στο προηγούμενο ερώτημα.

Άσκηση 27. Να αναπτύξετε το πρόγραμμα σε ΓΛΩΣΣΑ που χρησιμοποιεί η εταιρεία Arvies, το οποίο:

Α) για κάθε έναν από τους 1200 εργαζομένους της εταιρείας θα διαβάζει το όνομά τους και θα το

αποθηκεύει σε πίνακα Ο. Επίσης, θα διαβάζει τις ώρες που έχει εργαστεί μηνιαίως για τους 12 μήνες

του 2006 και θα τους αποθηκεύει σε πίνακα Ω. Τα παραπάνω θα πραγματοποιούνται με τη χρήση

υποπρογράμματος που θα υλοποιήσετε για το σκοπό αυτό.

Β) Αν κάθε ώρα εργασίας αμείβεται με 30€ να αναπτύξετε υποπρόγραμμα που θα δημιουργεί και θα

επιστρέφει στο κύριο πρόγραμμα πίνακα ΑΠ που θα περιέχει για κάθε εργαζόμενο τις αποδοχές του.

Γ) Θα ενημερώνει τον πίνακα ΑΠ, καθώς δόθηκε μηνιαίο επίδομα εξομάλυνσης 10% σε όσους

εργαζομένους είχαν μηνιαίες αποδοχές λιγότερες ή ίσες με 650€ και για όσους μήνες συνέβη αυτό. Το

επίδομα αυτό είναι 75€ σε όσους είχαν λιγότερες από 850€ και περισσότερες από 650€. Τα παραπάνω

θα πραγματοποιούνται με τη χρήση υποπρογράμματος που θα χρησιμοποιείται από το κύριο πρόγραμμα.

Δ) Θα δημιουργεί πίνακα Σ που θα περιέχει τις συνολικές αποδοχές κάθε εργαζομένου. Αυτό θα

πραγματοποιείται με κατάλληλο υποπρόγραμμα. Το κύριο πρόγραμμα θα εκτυπώνει τα ονόματα των

υπαλλήλων συνοδευόμενα από τους μηνιαίους μισθούς τους.

Άσκηση 28. Έστω οι πίνακες Α: [2, 4, 5, 5] και Β: [0, 2, 6, 9] και το παρακάτω πρόγραμμα και

υποπρογράμματα:

ΠΡΟΓΡΑΜΜΑ ασκ

...

ΑΡΧΗ

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 4

ΔΙΑΒΑΣΕ Α[Ι], Β[Ι]

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

κ <- 1

λ <- 1

δ <- 0

ΟΣΟ κ <= 4 ΚΑΙ λ <= 4 ΕΠΑΝΑΛΑΒΕ

ΑΝ Α[κ] <= Β[λ] ΤΟTE

ΚΑΛΕΣΕ ΒΑΛΕ(Α, κ, Ν, δ)

ΑΛΛΙΩΣ

ΚΑΛΕΣΕ ΒΑΛΕ(Β, λ, Ν, δ)

ΤΕΛΟΣ_ΑΝ

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

ΑΝ κ <= 4 ΤΟΤΕ

ΚΑΛΕΣΕ ΥΠΟΛΟΙΠΟ(Α, κ, Ν, δ)

ΑΛΛΙΩΣ

ΚΑΛΕΣΕ ΥΠΟΛΟΙΠΟ(Β, λ, Ν, δ)

ΤΕΛΟΣ_ΑΝ

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 8

ΓΡΑΨΕ Ν[Ι]

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

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ασκ

Page 99: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 99 από 100

ΔΙΑΔΙΚΑΣΙΑ ΒΑΛΕ(Π, ππ, Τ, πτ)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: πτ, ππ

ΠΡΑΓΜΑΤΙΚΕΣ: Π[4], Τ[8]

ΑΡΧΗ

πτ <- πτ + 1

Τ[πτ] <- Π[ππ]

ππ <- ππ + 1

ΤΕΛΟΣ_ΔΙΑΔΙΑΚΑΣΙΑΣ

ΔΙΑΔΙΚΑΣΙΑ ΥΠΟΛΟΙΠΟ(Π, ππ, Τ, πτ)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: i, ππ

ΠΡΑΓΜΑΤΙΚΕΣ: Π[4], Τ[8]

ΑΡΧΗ

ΓΙΑ i ΑΠΟ ππ ΜΕΧΡΙ 4

πτ <- πτ + 1

Τ[πτ] <- Π[i]

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

ΤΕΛΟΣ_ΔΙΑΔΙΑΚΑΣΙΑΣ

1. Τι θα εμφανίσει το πρόγραμμα;

2. Να συμπληρώσετε το τμήμα δηλώσεων του προγράμματος.

3. Ποια λειτουργία των δομών δεδομένων επιτελεί το πρόγραμμα αυτό;

.

Άσκηση 29. Σε ένα πρόγραμμα που επεξεργάζεται πίνακα Α = [3, 1, 7, 0, 12, –2], υπάρχει το

παρακάτω τμήμα προγράμματος:

……

ΚΑΛΕΣΕ Δ(Α[1], Α[5])

ΚΑΛΕΣΕ Δ(Α[3], Α[4])

ΚΑΛΕΣΕ Δ(Α[6], Α[2])

! σημείο 1

ΓΡΑΨΕ Σ(Α)

! σημείο 2

……

Ενώ τα υποπρογράμματα που χρησιμοποιεί παρατίθενται παρακάτω:

ΔΙΑΔΙΚΑΣΙΑ Δ(κ, λ)

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: κ, λ

ΑΡΧΗ

κ <- κ + λ + 1

λ <- κ – λ

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

ΣΥΝΑΡΤΗΣΗ Σ(Π): ΑΚΕΡΑΙΑ

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: i, Π[6], α

ΑΡΧΗ

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 3

ΚΑΛΕΣΕ Δ(Π[i], Π[i + 2])

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

α <- 0

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 6

Page 100: 1ο Πειραματικό ΓΕΛ Αθήνας – Γεννάδειο Ανάπτυξη Εφαρμογών ...’ιβλίο_Μαθητή_2012... · Η επαναληπτική δομή

1o ΓΕΛ ΑΘΗΝΑΣ – ΓΕΝΝΑΔΕΙΟ 2010 - 2011

Υλικό από ιστοσελίδα Π. Τσιωτάκη, επιμέλεια Δ. Γιάτας Σελίδα 100 από 100

α <- α + Π[i]

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

Σ <- α

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

1. Ποια θα είναι η μορφή του πίνακα στα σημεία 1 και 2;

2. Ποια τιμή θα εμφανιστεί;

Άσκηση 30. Ο γιος του κύριου Αρβίλογλου χρησιμοποιεί ένα ειδικό πρόγραμμα για να «κλειδώνει» τα

αρχείο στον υπολογιστή του. Σε ένα «κλειδωμένο» αρχείο αντιστοιχεί ένας κωδικός που αποτελείται από

3 διψήφιους αριθμούς. Οι αριθμοί στον κωδικό αν αλλάξουν θέση δεν ξεκλειδώνουν το αρχείο, για

παράδειγμα αν ο σωστός κωδικός είναι 11, 72, 30, τότε ο 30, 11, 72 είναι λάθος. Σας δίνεται

συνάρτηση: «ΣΥΝΑΡΤΗΣΗ Έλεγχος(α, β, γ): ΛΟΓΙΚΗ», η οποία δέχεται 3 αριθμούς που προσπαθούν

να ξεκλειδώσουν το αρχείο και επιστρέφει ΑΛΗΘΗΣ αν ξεκλειδώνεται το αρχείο ή ΨΕΥΔΗΣ στην

αντίθετη περίπτωση. Να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ, το οποίο θα εκτυπώνει το σωστό κωδικό

για το ξεκλείδωμα ενός αρχείου. Για τον κωδικό αυτού του αρχείο γνωρίζουμε:

- Ο δεύτερος αριθμός είναι το 91.

- Ο τρίτος αριθμός έχει δυο ψηφία ίσα.

- Ο πρώτος αριθμός έχει πρώτο ψηφίο, το 2.

Προσοχή: αν πραγματοποιηθούν περισσότερες από 99 προσπάθειες για ξεκλείδωμα του αρχείου, τότε

αυτό κλειδώνεται μόνιμα. Πόσοι είναι οι συνδυασμοί που πρέπει να δοκιμαστούν; Να εμφανίζει το

πρόγραμμα πόσες προσπάθειες πραγματοποίησε για το εντοπισμό του σωστού κωδικού.

Λύση

Απαιτούνται 90 προσπάθειες

ΠΡΟΓΡΑΜΜΑ Αρχείο

ΜΕΤΑΒΛΗΤΕΣ

ΑΡΧΗ

π <- 0

β <- 91 ! δε θα αλλάξει

α <- 20

done <- ΨΕΥΔΗΣ

ΟΣΟ α <= 29 ΚΑΙ done = ΨΕΥΔΗΣ ΕΠΑΝΑΛΑΒΕ

γ <- 11

ΟΣΟ γ <= 99 ΚΑΙ done = ΨΕΥΔΗΣ ΕΠΑΝΑΛΑΒΕ

π <- π + 1

ΑΝ Έλεγχος(α, β, γ) = ΑΛΗΘΗΣ ΤΟΤΕ

done <- ΑΛΗΘΗΣ

ΓΡΑΨΕ α, β, γ

ΓΡΑΨΕ π

ΤΕΛΟΣ_ΑΝ

γ <- γ + 11

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

α <- α + 1

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

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Αρχείο