30
ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 3 Ανάλυση προβλήματος Αλγόριθμος Δομή ακολουθίας 1.1 Η έννοια πρόβλημα Δώστε τον ορισμό του προβλήματος. Με τον όρο Πρόβλημα εννοείται μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής. Τι ονομάζουμε επίλυση ενός προβλήματος. Επίλυση ( η αντιμετώπιση) ενός προβλήματος ονομάζουμε τη διαδικασία μέσω της οποίας, ο λύτης του προβλήματος βρίσκει το ζητούμενο (επιτυγχάνει τον επιθυμητό στόχο). 1.2 Κατανόηση προβλήματος Ποιοι είναι οι παράγοντες κατανόησης ενός προβλήματος; Η κατανόηση ενός προβλήματος αποτελεί συνάρτηση δύο παραγόντων, της σωστής διατύπωσης εκ μέρους του δημιουργού του και της αντίστοιχα σωστής ερμηνείας από τη μεριά εκείνου που καλείται να το αντιμετωπίσει. Τι σημαίνει ο όρος "δεδομένο"; Με τον όρο δεδομένο δηλώνεται οποιοδήποτε στοιχείο μπορεί να γίνει αντιληπτό από έναν τουλάχιστον παρατηρητή με μία από τις πέντε αισθήσεις του. Τι σημαίνει ο όρος "πληροφορία"; Με τον όρο πληροφορία αναφέρεται οποιοδήποτε γνωσιακό στοιχείο προέρχεται από επεξεργασία δεδομένων. Τι σημαίνει ο όρος "επεξεργασία δεδομένων"; Ο όρος επεξεργασία δεδομένων δηλώνει εκείνη τη διαδικασία κατά την οποία ένας "μηχανισμός" δέχεται δεδομένα, τα επεξεργάζεται σύμφωνα με έναν προκαθορισμένο τρόπο και αποδίδει πληροφορίες. Επί χιλιετίες ο "μηχανισμός" επεξεργασίας των δεδομένων ήταν και εξακολουθεί να είναι ο ανθρώπινος εγκέφαλος. Στις μέρες μας, ένας άλλος "μηχανισμός" επεξεργασίας δεδομένων είναι ο υπολογιστής. 1.3 Δομή προβλήματος Τι είναι η δομή ενός προβλήματος; Με τον όρο δομή ενός προβλήματος αναφερόμαστε στα συστατικά του μέρη, στα επιμέρους τμήματα που το αποτελούν καθώς επίσης και στον τρόπο που αυτά τα μέρη συνδέονται μεταξύ τους. 1

ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 3

Ανάλυση προβλήματος

Αλγόριθμος

Δομή ακολουθίας

1.1 Η έννοια πρόβλημα

Δώστε τον ορισμό του προβλήματος. Με τον όρο Πρόβλημα εννοείται μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής.

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

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

Τι σημαίνει ο όρος "δεδομένο"; Με τον όρο δεδομένο δηλώνεται οποιοδήποτε στοιχείο μπορεί να γίνει αντιληπτό από έναν τουλάχιστον παρατηρητή με μία από τις πέντε αισθήσεις του.

Τι σημαίνει ο όρος "πληροφορία"; Με τον όρο πληροφορία αναφέρεται οποιοδήποτε γνωσιακό στοιχείο προέρχεται από επεξεργασία δεδομένων.

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

1.3 Δομή προβλήματος Τι είναι η δομή ενός προβλήματος; Με τον όρο δομή ενός προβλήματος αναφερόμαστε στα συστατικά του μέρη, στα επιμέρους τμήματα που το αποτελούν καθώς επίσης και στον τρόπο που αυτά τα μέρη συνδέονται μεταξύ τους.

1

Page 2: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 4

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

Με ποιους τρόπους παρουσιάζεται η ανάλυση ενός προβλήματος; Η ανάλυση αυτή ενός προβλήματος παρουσιάζεται με δύο τρόπους:

• Φραστικά, δηλαδή στη φυσική γλώσσα που μιλάμε.

• Διαγραμματικά. Για τη γραφική απεικόνιση της δομής ενός προβλήματος χρησιμοποιείται συχνότατα η διαγραμματική αναπαράσταση. Σύμφωνα με αυτή:

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

1.4 Καθορισμός απαιτήσεων Η σωστή επίλυση ενός προβλήματος προϋποθέτει τον επακριβή προσδιορισμό των

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

των ζητουμένων που αναμένονται ως αποτελέσματα της επίλυσης του προβλήματος.

Ποια είναι τα τρία στάδια αντιμετώπισης ενός προβλήματος.

• Κατανόηση, όπου απαιτείται η σωστή και πλήρης αποσαφήνιση των δεδομένων και των ζητούμενων του προβλήματος.

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

• Επίλυση, όπου υλοποιείται η λύση του προβλήματος, μέσω της λύσης των επιμέρους προβλημάτων.

ΚΑΤΑΝΟΗΣΗ

ΑΝΑΛΥΣΗ

ΕΠΙΛΥΣΗ

Page 3: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 5

1.5 Τι είναι αλγόριθμος

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

Κάθε αλγόριθμος απαραίτητα ικανοποιεί τα επόμενα κριτήρια.

i. Είσοδος (input). Καμία, μία ή περισσότερες τιμές δεδομένων πρέπει να δίνονται ως είσοδοι στον αλγόριθμο. Η περίπτωση που δεν δίνονται τιμές δεδομένων εμφανίζεται όταν ο αλγόριθμος δημιουργεί και επεξεργάζεται κάποιες πρωτογενείς τιμές με τη βοήθεια συναρτήσεων παραγωγής τυχαίων αριθμών ή με τη βοήθεια άλλων απλών εντολών.

ii. Έξοδος (output). Ο αλγόριθμος πρέπει να δημιουργεί τουλάχιστον μία τιμή δεδομένων ως αποτέλεσμα προς το χρήστη ή προς έναν άλλο αλγόριθμο.

iii. Καθοριστικότητα (definiteness). Κάθε εντολή πρέπει να καθορίζεται χωρίς καμία αμφιβολία για τον τρόπο εκτέλεσής της.

iv. Περατότητα (finiteness). Ο αλγόριθμος πρέπει να τελειώνει μετά από πεπερασμένα βήματα εκτέλεσης των εντολών του. Μια διαδικασία που δεν τελειώνει μετά από ένα συγκεκριμένο αριθμό βημάτων δεν αποτελεί αλγόριθμο, αλλά λέγεται απλά υπολογιστική διαδικασία (computational procedure).

v. Αποτελεσματικότητα (effectiveness). Κάθε μεμονωμένη εντολή του αλγορίθμου πρέπει να είναι απλή. Αυτό σημαίνει ότι μία εντολή δεν αρκεί να έχει ορισθεί, αλλά πρέπει να είναι και εκτελέσιμη.

1.6 Περιγραφή και αναπαράσταση αλγορίθμων i. Με ελεύθερο κείμενο (free text), που αποτελεί τον πιο ανεπεξέργαστο τρόπο

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

ii. Με διαγραμματικές τεχνικές (diagramming techniques), που συνιστούν ένα γραφικό τρόπο παρουσίασης του αλγορίθμου. Από τις διάφορες διαγραμματικές τεχνικές που έχουν επινοηθεί, η πιο παλιά και η πιο γνωστή ίσως, είναι το διάγραμμα ροής (flow chart).

iii. Με φυσική γλώσσα (natural language) κατά βήματα. Στην περίπτωση αυτή χρειάζεται προσοχή, γιατί μπορεί να παραβιαστεί το τρίτο βασικό χαρακτηριστικό ενός αλγορίθμου, το κριτήριο του καθορισμού.

iv. Με κωδικοποίηση (coding), δηλαδή με ένα πρόγραμμα που όταν εκτελεσθεί θα δώσει τα ίδια αποτελέσματα με τον αλγόριθμο.

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

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

Page 4: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 6

Σε αυτό το βιβλίο θα χρησιμοποιήσουμε την ψευδογλώσσα Γλώσσα (όπως ορίζεται από το σχολικό βιβλίο και τις οδηγίες του Παιδαγωγικού Ινστιτούτου), η οποία μπορεί πάρα πολύ εύκολα να μετατραπεί σε οποιαδήποτε πραγματική γλώσσα προγραμματισμού όπως η Pascal ή η C. Θα δείξουμε επίσης την αντιστοιχία των εντολών της Γλώσσας με τα σχήματα του διαγράμματος ροής.

1.7 Βασικές συνιστώσες αλγορίθμου Είναι οι δομές ακολουθίας, επιλογής και επανάληψης.

1.8 Διαγράμματα Ροής Ένα διάγραμμα ροής αποτελείται από ένα σύνολο γεωμετρικών σχημάτων, όπου το καθένα δηλώνει μία συγκεκριμένη ενέργεια ή λειτουργία. Τα γεωμετρικά σχήματα ενώνονται μεταξύ τους με βέλη, που δηλώνουν τη σειρά εκτέλεσης των ενεργειών αυτών. Τα κυριότερα γεωμετρικά σχήματα είναι:

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

ii. Ρόμβος, που δηλώνει έλεγχο με δύο εξόδους (ΑΛΗΘΗΣ ή ΨΕΥΔΗΣ) για απάντηση.

iii. Ορθογώνιο, που δηλώνει την εκτέλεση μιας ή περισσότερων πράξεων.

iv. Πλάγιο παραλληλόγραμμο, που δηλώνει είσοδο ή έξοδο στοιχείων. Πολλές φορές το σχήμα αυτό μπορεί να διαφοροποιείται προκειμένου να προσδιορίζεται και το είδος της συσκευής από όπου γίνεται η είσοδος ή η έξοδος.

Αρχή

Τέλος

έλεγχος

όχι ναι

εντολές

Διάβασε Γράψε

Page 5: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 7

1.9 Βασικά χαρακτηριστικά του ψευδοκώδικα

Ορισμοί

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

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

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

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

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

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

Επειδή μερικές λέξεις χρησιμοποιούνται από την ίδια τη Γλώσσα για συγκεκριμένους λόγους, αυτές οι λέξεις δεν μπορούν να χρησιμοποιηθούν ως ονόματα. Οι λέξεις αυτές ονομάζονται δεσμευμένες.

Τύποι μεταβλητών

Η Γλώσσα υποστηρίζει τέσσερις τύπους μεταβλητών.

i. Ακέραιες. Μπορούμε να καταχωρίσουμε οποιαδήποτε ακέραια τιμή αρνητική ή θετική (χωρίς δεκαδικό τμήμα).

ii. Πραγματικές. Μπορούμε να καταχωρίσουμε οποιονδήποτε αριθμό.

iii. Χαρακτήρες. Μπορούμε να καταχωρίσουμε είτε μεμονωμένο χαρακτήρα, είτε λέξη, είτε ολόκληρη πρόταση. Αυτά πρέπει να βρίσκονται υποχρεωτικά μέσα σε εισαγωγικά (απλά ' ' στο πρόγραμμα και διπλά " " στον αλγόριθμο) για να μην μπερδευτούν με ονόματα μεταβλητών ή δεσμευμένων λέξεων.

iv. Λογικές. Μπορούμε να καταχωρίσουμε αποκλειστικά και μόνο δύο τιμές, ΑΛΗΘΗΣ και ΨΕΥΔΗΣ.

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

Page 6: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 8

Αριθμητικοί τελεστές

Παραδείγματα χρησιμοποίησης τελεστών.

y 3 * x + 2 y x / (z - 5)

z x mod 2 i i + 1

Όταν κάνουμε πράξεις πρέπει να προσέχουμε τη προτεραιότητα των πράξεων. Αυτή είναι: i. Παρενθέσεις. ii. Ύψωση σε δύναμη. iii. Διαιρέσεις - Πολλαπλασιασμοί. iv. Προσθέσεις - Αφαιρέσεις.

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

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

Συγκριτικός τελεστής Έλεγχος

> Μεγαλύτερο

>= Μεγαλύτερο ή ίσο

= Ίσο

<> Διάφορο

<= Μικρότερο ή ίσο

< Μικρότερο

Οι συγκριτικοί τελεστές χρησιμοποιούνται οποτεδήποτε θέλουμε να κάνουμε κάποιο έλεγχο, π.χ. η εντολή x = 3 σημαίνει: είναι το x ίσο με 3;

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

Αριθμητικός τελεστής Πράξη

+ Πρόσθεση

- Αφαίρεση

* Πολλαπλασιασμός

/ Διαίρεση

^ Ύψωση σε δύναμη

mod Υπόλοιπο της διαίρεσης

div Πηλίκο της διαίρεσης

Page 7: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 9

Λογικοί τελεστές

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

Α Β Α ΚΑΙ Β Α Η Β ΟΧΙ Α

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

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

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

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

Προτεραιότητα λογικών πράξεων: i. Παρενθέσεις ii. ΟΧΙ iii. ΚΑΙ iν. Η

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

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

Αν Α = 3, Β = 5 και Γ = -1 τότε η έκφραση

Α > 2 ΚΑΙ Β <> 5 Η Γ <= 2 θα είναι ΑΛΗΘΗΣ, ενώ η έκφραση

(Α < 3 ΚΑΙ Β <= 5) Η ΟΧΙ (Γ < 0 ΚΑΙ Α = 3) θα είναι ΨΕΥΔΗΣ.

ΠΡΟΤΕΡΑΙΟΤΗΤΑ ΤΕΛΕΣΤΩΝ: ΑΡΙΘΜΗΤΙΚΟΙ > ΣΥΓΚΡΙΤΙΚΟΙ > ΛΟΓΙΚΟΙ

Τελεστής εκχώρησης

Ο τελεστής εκχώρησης είναι το σύμβολο <- και σημαίνει παίρνει την τιμή, δηλαδή η μεταβλητή που βρίσκεται στο αριστερό τμήμα του τελεστή εκχώρησης παίρνει την τιμή της παράστασης που βρίσκεται στο δεξί τμήμα του τελεστή εκχώρησης.

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

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

Προσοχή! Δεν πρέπει να μπερδεύουμε τον τελεστή εκχώρησης με τον τελεστή ελέγχου =.

Συναρτήσεις

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

Συνάρτηση Λειτουργία

ΗΜ(x) Υπολογισμός ημιτόνου

ΣΥΝ(x) Υπολογισμός συνημιτόνου

ΕΦ(x) Υπολογισμός εφαπτομένης

Τ_Ρ(x) Υπολογισμός τετραγωνικής ρίζας

ΛΟΓ(x) Υπολογισμός φυσικού λογάριθμου (ln)

Ε(x) Υπολογισμός του ex

Α_Μ(x) Ακέραιο μέρος του x

Α_Τ(x) Απόλυτη τιμή του x

Page 8: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 10

Στις τριγωνομετρικές συναρτήσεις το x πρέπει να είναι είτε ακέραιος είτε πραγματικός και το τόξο εκφράζεται σε μοίρες. Σε όλες τις γλώσσες προγραμματισμού οι τριγωνομετρικές

συναρτήσεις δέχονται το τόξο σε ακτίνια. Ο τύπος μετατροπής από μοίρες σε ακτίνια

είναι 180

r

= . Το αποτέλεσμα είναι πάντοτε πραγματικός αριθμός.

Στη συνάρτηση Τ_Ρ(x) το x πρέπει να είναι ακέραιος ή πραγματικός θετικός και το αποτέλεσμα είναι πάντα πραγματικός.

Στη συνάρτηση ΛΟΓ(x) το x μπορεί να είναι ακέραιος ή πραγματικός μεγαλύτερος του μηδενός και το αποτέλεσμα είναι πάντα πραγματικός.

Στη συνάρτηση Ε(x) το x μπορεί να είναι ακέραιος ή πραγματικός και το αποτέλεσμα είναι πάντα πραγματικός.

Στη συνάρτηση Α_Μ(x) το x πρέπει να είναι πραγματικός και το αποτέλεσμα είναι πάντα ακέραιος. Η συνάρτηση Α_Μ(x) είναι η μόνη συνάρτηση που επιστρέφει ακέραιο αποτέλεσμα και είναι ο μόνος ασφαλής τρόπος για να μετατρέψουμε ένα πραγματικό σε ακέραιο.

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

Α_Μ(3.1) θα δώσει 3 Α_Μ(3.9) θα δώσει επίσης 3

Το πως θα κάνουμε στρογγυλοποίηση θα το δούμε λίγο αργότερα.

Εντολές εισόδου και εξόδου

Για είσοδο χρησιμοποιούμε την εντολή ΔΙΑΒΑΣΕ

Δεξιά από την εντολή Διάβασε μπορούμε να βάλουμε μία ή περισσότερες μεταβλητές οι οποίες διαχωρίζονται με κόμμα. Όταν το πρόγραμμα φτάσει σε μία εντολή Διάβασε τότε σταματάει η εκτέλεση του και περιμένει από το χρήστη να δώσει μία ή περισσότερες τιμές από το πληκτρολόγιο (ανάλογα με το πόσες μεταβλητές έχουμε βάλει). Τότε καταχωρεί τις τιμές αυτές στις μεταβλητές με τη σειρά που τις έχουμε βάλει και συνεχίζει την εκτέλεση των επόμενων εντολών. Πριν από κάθε εντολή Διάβασε καλό είναι να βάζουμε πάντα ένα μήνυμα για να πληροφορούμε το χρήστη τι περιμένουμε να μας δώσει ως είσοδο.

Για έξοδο χρησιμοποιούμε τις εντολές ΕΜΦΑΝΙΣΕ ή ΕΚΤΥΠΩΣΕ ή ΓΡΑΨΕ

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

Για παράδειγμα αν το x έχει τιμή 3, η εντολή: ΓΡΑΨΕ 'Το x είναι ' , x θα εμφανίσει: Το x είναι 3 ενώ η εντολή: ΓΡΑΨΕ 'Το x είναι, x' θα εμφανίσει: Το x είναι, x

Page 9: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 11

1.10 Δομή του προγράμματος Η βασική δομή που θα χρησιμοποιήσουμε για να γράψουμε ένα πρόγραμμα σε Γλώσσα είναι:

Αλγόριθμος <Όνομα αλγορίθμου> <εντολές>

Τέλος <Όνομα αλγορίθμου>

ΠΡΟΓΡΑΜΜΑ <Όνομα προγράμματος> ΣΤΑΘΕΡΕΣ

<Δηλώνουμε όλες τις σταθερές του προγράμματος>

ΜΕΤΑΒΛΗΤΕΣ <Δηλώνουμε όλες τις μεταβλητές που παίρνουν μέρος στο πρόγραμμα καθώς και τον τύπο τους>

ΑΡΧΗ <εντολές>

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

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

π.χ. Αλγόριθμος Μέσος_όρος_τετραμήνων Εμφάνισε "Δώσε το όνομα του μαθητή" Διάβασε ΟΝ Εμφάνισε "Δώσε βαθμούς τετραμήνων" Διάβασε Α, Β

ΜΟ (Α + Β) / 2 Εμφάνισε ΟΝ, " έχεις Μ.Ο. ", ΜΟ Τέλος Μέσος_όρος_τετραμήνων

ΠΡΟΓΡΑΜΜΑ Μέσος_όρος_τετραμήνων ΜΕΤΑΒΛΗΤΕΣ ΧΑΡΑΚΤΗΡΕΣ: ΟΝ ΑΚΕΡΑΙΕΣ: Α, Β ΠΡΑΓΜΑΤΙΚΕΣ: ΜΟ ΑΡΧΗ ΓΡΑΨΕ 'Δώσε το όνομα του μαθητή' ΔΙΑΒΑΣΕ ΟΝ ΓΡΑΨΕ 'Δώσε βαθμούς τετραμήνων' ΔΙΑΒΑΣΕ Α, Β ΜΟ <- (Α + Β) / 2 ΓΡΑΨΕ ΟΝ, ' έχεις Μ.Ο. ', ΜΟ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Παρατηρούμε ότι στις σταθερές χρησιμοποιούμε το σύμβολο = και όχι τον τελεστή εκχώρησης. Είναι η μόνη περίπτωση που το = δεν χρησιμοποιείται ως τελεστής ελέγχου. Στις μεταβλητές πρώτα δηλώνουμε τον τύπο ή τους τύπους των μεταβλητών και μετά την άνω και κάτω τελεία γράφουμε τις μεταβλητές. Οι εντολές μέσα στο πρόγραμμα εκτελούνται ακολουθιακά. Δηλαδή η μία μετά την άλλη με τη σειρά που γράφονται. Μπορούμε να προσθέσουμε σχόλια μέσα στο πρόγραμμα χρησιμοποιώντας το σύμβολο ! και γράφοντας τα σχόλια μετά από αυτό. Ο ρόλος των σχολίων είναι για να μπορούμε να θυμόμαστε εύκολα γιατί χρησιμοποιήσαμε τις συγκεκριμένες εντολές και πώς σκεφτήκαμε για να λύσουμε το συγκεκριμένο πρόβλημα, όταν θα ξαναδιαβάσουμε το πρόγραμμα.

Page 10: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 12

Προσοχή! Στο σχολικό βιβλίο τα προγράμματα γράφονται με όλες τις εντολές με κεφαλαία. Αυτό γίνεται για λόγους σύμβασης και για να ξεχωρίζει από το υπόλοιπο κείμενο και δεν είναι απαραίτητο. Ο μεταφραστής της Γλώσσας μπορεί να δεχτεί τις εντολές και με κεφαλαία και με μικρά, δεν κάνει δηλαδή διάκριση των πεζών και των κεφαλαίων.

Παρατηρήσεις

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

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

Για να χρησιμοποιήσουμε μία μεταβλητή στο δεξί τμήμα ενός τελεστή εκχώρησης ή σε μια εντολή ελέγχου ή σε μια εντολή επανάληψης, ή σε μια εντολή Γράψε πρέπει οπωσδήποτε προηγουμένως να της δώσουμε κάποια αρχική τιμή.

1.11 Παραδείγματα - Μέθοδοι

Αντιμετάθεση των περιεχομένων δύο μεταβλητών

ΠΡΟΓΡΑΜΜΑ Αντιμετάθεση_γενική ΜΕΤΑΒΛΗΤΕΣ ΧΑΡΑΚΤΗΡΕΣ: α, β, temp ΑΡΧΗ ΔΙΑΒΑΣΕ α, β temp <- α α <- β β <- temp ΓΡΑΨΕ α, β ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΠΡΟΓΡΑΜΜΑ Αντιμετάθεση_αριθμών ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: α, β ΑΡΧΗ

ΔΙΑΒΑΣΕ α, β α <- α + β β <- α – β α <- α – β

ΓΡΑΨΕ α, β ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Στρογγυλοποίηση

Να γραφεί αλγόριθμος που να διαβάζει έναν αριθμό και να τον στρογγυλοποιεί σε ένα δεκαδικό ψηφίο. Για παράδειγμα: αν δώσουμε 157,32 μας δίνει 157,3 , αν δώσουμε 157,88 μας δίνει 157,9 , αν δώσουμε 60,85 μας δίνει 60,9 , αν δώσουμε 5,99 μας δίνει 6.

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

x x+0.05 ! προσθέτουμε 0,05 για την στρογγυλοποίηση

x x*10 ! μετακινούμε την υποδιαστολή δεξιά

x Α_Μ(x) ! κόβουμε τα δεκαδικά

x x/10 ! ξαναγυρνάμε την υποδιαστολή στη θέση της Εμφάνισε x

Τέλος στρογγυλοποίηση

Page 11: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 13

Χρήση div και mod

Όταν διαιρούμε έναν οποιοδήποτε ακέραιο με κάποια δύναμη του 10 (10, 100, 1000 κ.ο.κ.) χρησιμοποιώντας τους τελεστές mod και div, τότε μπορούμε να φανταστούμε ότι ο αριθμός αυτός χωρίζεται από μία νοητή γραμμή σε δύο τμήματα. Τη γραμμή θα την τοποθετήσουμε τόσες θέσεις από το δεξί άκρο του αριθμού, όσα και τα μηδενικά στη δύναμη του 10. Δηλαδή: Αν ο αριθμός 86583 διαιρεθεί με mod ή div με το 100, τότε η νοητή γραμμή θα τοποθετηθεί 2 ψηφία από το δεξί άκρο του αριθμού, δηλαδή κάπως έτσι: div mod Διαίρεση με 100 (mod ή div) --> 865 83 Ανάλογα τώρα με το ποια διαίρεση χρησιμοποιούμε έχουμε και διαφορετικό αποτέλεσμα, δηλαδή: Η διαίρεση με το mod θα μας δώσει το τμήμα στα δεξιά της νοητής γραμμής και… Η διαίρεση με το div θα μας δώσει το τμήμα αριστερά της νοητής γραμμής π.χ.

865 | 83 86583 mod 100 = 83 και 86583 div 100 = 865

Κάνοντας τώρα χρήση αυτής της αρχής, μπορούμε να πάρουμε οποιοδήποτε τμήμα του αριθμού συνδυάζοντας διαιρέσεις με mod και div και αποθηκεύοντας εάν χρειαστεί, κάποια αποτελέσματα σε προσωρινές μεταβλητές.

Αντίστοιχες διαιρέσεις με το 3600, 60 μπορούν να μετατρέψουν δευτερόλεπτα σε ώρες και λεπτά αντίστοιχα (δες παράδειγμα παρακάτω).

Όπως επίσης και ακέραιες διαιρέσεις με 100, 50 κ.ο.κ. μπορούν να αναλύσουν ένα ποσό σε χαρτονομίσματα (δες παράδειγμα παρακάτω).

Διαχείριση ψηφίων ακεραίου

Αν x ο ελεγχόμενος αριθμός, τότε με τις εντολές x1__x_MOD_10_^_ν και

x2__x_DIV_10_^_ν , στη μεταβλητή x1 εκχωρούμε τα τελευταία ν ψηφία του, και στη μεταβλητή x2 τα προηγούμενα από αυτά.

Αν π.χ. είναι x = 12345, τότε μετά την εντολή x1__x_MOD_10_^_3 θα είναι

x1_=_345 (τα τελευταία 3 ψηφία), ενώ μετά την x2__x_DIV_10_^_3 θα είναι x2_=_12 (τα προηγούμενα από τα 3 τελευταία ψηφία).

Να διαβαστεί τετραψήφιος ακέραιος, μετά τα δύο πρώτα ψηφία του να παρεμβληθεί το 9 και να εκτυπωθεί ο πενταψήφιος που προέκυψε.

ΠΡΟΓΡΑΜΜΑ ακέραιος ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: x, x1, x2 ΑΡΧΗ

ΔΙΑΒΑΣΕ x ! έστω ότι δίνεται ο τετραψήφιος 1234 x1 <- x DIV 100 ! x1 = 12 x2 <- x MOD 100 ! x2 = 34

x <- x1 * 1000 + 900 + x2 ! x = 121000 + 900 + 34 = 12934 ΓΡΑΨΕ x

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

Page 12: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 14

Δευτερόλεπτα σε ώρες, λεπτά και δεύτερα

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

Αλγόριθμος Χρόνος Διάβασε time

sec time mod 60

time time div 60

min time mod 60

hr time div 60 Εμφάνισε hr, min, sec

Tέλος Χρόνος

ΠΡΟΓΡΑΜΜΑ Χρόνος ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: hr, min, sec, time

AΡΧΗ ΔΙΑΒΑΣΕ time hr <- time DIV 3600 time <- time MOD 3600 min <- time DIV 60 sec <- time MOD 60 ΓΡΑΨΕ hr, min, sec

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

Ανάλυση ποσού σε χαρτονομίσματα

Η ακέραια διαίρεση του ποσού με 50 θα δώσει ως div το πλήθος χαρτονομισμάτων των 50€ και ως mod το υπόλοιπο ποσό. Η ακέραια διαίρεση του υπόλοιπου ποσού με το 20 θα δώσει ως div το πλήθος χαρτονομισμάτων των 20€ και ως mod το νέο υπόλοιπο, κ.ο.κ.

Να γραφεί αλγόριθμος που να διαβάζει έναν ακέραιο αριθμό (ποσό σε ευρώ) και να εμφανίζει το μικρότερο πλήθος χαρτονομισμάτων των 50€, 20€ και 10€ καθώς και το μικρότερο πλήθος κερμάτων των 2€ κα 1€ στα οποία αναλύεται. Για παράδειγμα: αν δώσουμε 132 υπολογίζει δύο χαρτονομίσματα των 50€, ένα των 20€, ένα των 10€, κανένα των 5€, ένα κέρμα των 2€ και κανένα κέρμα του 1€.

Αλγόριθμος χαρτονομίσματα Διάβασε ποσό

των_50 ποσό div 50

ποσό ποσό mod 50

των_20 ποσό div 20

ποσό ποσό mod 20

των_10 ποσό div 10

ποσό ποσό mod 10

των_5 ποσό div 5

ποσό ποσό mod 5

των_2 ποσό div 2

του_1 ποσό Εμφάνισε "Χαρτονομίσματα των 50: ", των_50 Εμφάνισε "Χαρτονομίσματα των 20: ", των_20 Εμφάνισε "Χαρτονομίσματα των 10: ", των_10 Εμφάνισε "Χαρτονομίσματα των 5: ", των_5 Εμφάνισε "Κέρματα των 2: ", των_2 Εμφάνισε "Κέρματα των 1: ", του_1

Τέλος χαρτονομίσματα

Page 13: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 15

Ποσοστά

Ένας παντρεμένος υπάλληλος έχει έναν βασικό μισθό. Παίρνει επιπλέον 35€ επίδομα γάμου και 20€ επίδομα για κάθε παιδί. Επί του βασικού μισθού έχει κρατήσεις 20% προς το ασφαλιστικό του ταμείο. Στο ποσό που απομένει μετά την αφαίρεση των ασφαλιστικών εισφορών γίνεται παρακράτηση 11% για προκαταβολή φόρου. Να αναπτύξετε αλγόριθμο που να ρωτάει τον βασικό μισθό και τον αριθμό παιδιών και να εμφανίζει τις συνολικές ακαθάριστες αποδοχές, τις κρατήσεις και τέλος το καθαρό ποσό που θα εισπράξει ο υπάλληλος.

Αλγόριθμος Αποδοχές Διάβασε μισθός, παιδιά

! έσοδα επίδομα ← 35 + παιδιά*20 μικτά ← μισθός + επίδομα

! έξοδα ασφάλεια ← μισθός* 0.2 προΦόρου ← μικτά - ασφάλεια φόρος ← προΦόρου* 0.11

! εκκαθάριση καθαρά ← μικτά - ασφάλεια - φόρος Εμφάνισε "Ακαθάριστος Μισθός : ", μικτά Εμφάνισε "Κρατήσεις : ", ασφάλεια + φόρος Εμφάνισε "Καθαρός μισθός : ", καθαρά

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

ΠΡΟΓΡΑΜΜΑ Αποδοχές ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: μισθός, επίδομα, μικτά, ασφάλεια, προΦόρου, φόρος, καθαρά ΑΚΕΡΑΙΕΣ: παιδιά ΑΡΧΗ ΔΙΑΒΑΣΕ μισθός, παιδιά !έσοδα επίδομα <- 35 + παιδιά*20 μικτά <- μισθός + επίδομα ! έξοδα ασφάλεια <- μισθός* 0.2 προΦόρου <- μικτά - ασφάλεια φόρος <- προΦόρου* 0.11 ! εκκαθάριση καθαρά <- μικτά - ασφάλεια - φόρος ΓΡΑΨΕ 'Ακαθάριστος Μισθός : ', μικτά ΓΡΑΨΕ 'Κρατήσεις : ', ασφάλεια + φόρος ΓΡΑΨΕ 'Καθαρός μισθός : ', καθαρά ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Page 14: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 16

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

ΠΡΟΓΡΑΜΜΑ Δίαιτα ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: πριν, μετά, διαφορά, ποσοστό ΑΡΧΗ ΔΙΑΒΑΣΕ πριν, μετά διαφορά <- πριν – μετά ! τα κιλά που "χάθηκαν" ποσοστό <- διαφορά / πριν * 100 ! "μετατροπή" σε ποσοστό ΓΡΑΨΕ ποσοστό, '%' ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Τιμές συνάρτησης

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

και εκτυπώνει την τιμή της συνάρτησης: ( )21 1

ln( 1)x

xf x

e

+ +=

+ .

Αλγόριθμος συνάρτηση Διάβασε x

Fx (1 + Τ_Ρ(x^2 + 1)) / (ΛΟΓ(Ε(x) + 1)) Εμφάνισε Fx Τέλος συνάρτηση

Αναλογίες

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

ΠΡΟΓΡΑΜΜΑ Εγγόνια ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: χαρτζιλίκι, ποσό1, ποσό2, ποσό3 ΑΚΕΡΑΙΕΣ: ηλικία1, ηλικία2, ηλικία3, σύνολοΗλικιών ΧΑΡΑΚΤΗΡΕΣ: όνομα1, όνομα2, όνομα3 ΑΡΧΗ ΔΙΑΒΑΣΕ χαρτζιλίκι , όνομα1, ηλικία1, όνομα2, ηλικία2, όνομα3, ηλικία3 σύνολοΗλικιών <- ηλικία1 + ηλικία2 + ηλικία3 ποσό1 <- χαρτζιλίκι / σύνολοΗλικιών * ηλικία1 ποσό2 <- χαρτζιλίκι / σύνολοΗλικιών * ηλικία2 ποσό3 <- χαρτζιλίκι / σύνολοΗλικιών * ηλικία3 ΓΡΑΨΕ όνομα1, ' παίρνει ', ποσό1, ' €' ΓΡΑΨΕ όνομα2, ' παίρνει ', ποσό2, ' €' ΓΡΑΨΕ όνομα3, ' παίρνει ', ποσό3, ' €' ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Page 15: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 17

1.12 Ερωτήσεις του τύπου Σωστό – Λάθος

1. Τα προβλήματα είναι αποκλειστικά μαθηματικά. Σ Λ

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

Σ Λ

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

Σ Λ

4. Δομή ενός προβλήματος είναι μόνο το σύνολο των μερών που το αποτελούν. Σ Λ

5. Ένα πρόβλημα μπορεί να εκφραστεί είτε διαγραμματικά είτε φραστικά. Σ Λ

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

Σ Λ

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

8. Με τον όρο δεδομένο αναφέρεται οποιοδήποτε γνωσιακό στοιχείο προέρχεται από επεξεργασία δεδομένων.

Σ Λ

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

10. Το ότι η ηλικία ενός ατόμου είναι 15 ετών αποτελεί δεδομένο, ενώ το ότι το άτομο αυτό είναι έφηβος αποτελεί πληροφορία.

Σ Λ

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

Σ Λ

12. Ένας αλγόριθμος είναι μία πεπερασμένη σειρά ενεργειών. Σ Λ

13. Ένας αλγόριθμος στοχεύει στην επίλυση ενός προβλήματος. Σ Λ

14. Οι ενέργειες που ορίζει ένας αλγόριθμος είναι αυστηρά καθορισμένες. Σ Λ

15. Ο αλγόριθμος τελειώνει έπειτα από πεπερασμένα βήματα εκτέλεσης εντολών. Σ Λ

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

Σ Λ

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

Σ Λ

18. Ο πιο δομημένος τρόπος παρουσίασης αλγορίθμων είναι με ελεύθερο κείμενο. Σ Λ

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

Σ Λ

20. Το διάγραμμα ροής (flow chart) είναι ένας τρόπος περιγραφής αλγορίθμου. Σ Λ

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

Σ Λ

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

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

Σ Λ

Page 16: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 18

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

Σ Λ

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

Σ Λ

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

Σ Λ

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

Σ Λ

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

Σ Λ

29. Ενώ η τιμή μίας μεταβλητής μπορεί να αλλάζει κατά την εκτέλεση του προγράμματος, αυτό που μένει υποχρεωτικά αναλλοίωτο είναι ο τύπος της.

Σ Λ

30. Στην αριθμητική έκφραση Α + Β * Γ εκτελείται πρώτα η πρόσθεση και μετά ο πολλαπλασιασμός.

Σ Λ

31. Η εντολή εκχώρησης αποδίδει το αποτέλεσμα μίας έκφρασης (παράστασης ) σε μία μεταβλητή.

Σ Λ

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

Σ Λ

33. Σε μία εντολή εκχώρησης του αποτελέσματος μίας έκφρασης σε μία μεταβλητή, η μεταβλητή και η έκφραση πρέπει να είναι του ίδιου τύπου.

Σ Λ

34. Κάθε μεταβλητή παίρνει τιμή μόνο με την εντολή Διάβασε. Σ Λ

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

Σ Λ

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

Σ Λ

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

Σ Λ

38. Οι τύποι των μεταβλητών που υποστηρίζει η γλώσσα είναι μόνο ΠΡΑΓΜΑΤΙΚΕΣ και ΑΚΕΡΑΙΕΣ.

Σ Λ

39. Κατά την εκτέλεση του προγράμματος η εντολή ΔΙΑΒΑΣΕ διακόπτει την εκτέλεσή του και περιμένει την εισαγωγή τιμών από το πληκτρολόγιο.

Σ Λ

40. Οι δεσμευμένες λέξεις της ΓΛΩΣΣΑΣ δεν μπορούν να χρησιμοποιηθούν ως ονόματα δεδομένων σε ένα πρόγραμμα.

Σ Λ

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

Σ Λ

42. Η λογική πράξη "ή" μεταξύ δύο προτάσεων είναι ψευδής, όταν οποιαδήποτε από τις δύο προτάσεις είναι ψευδής.

Σ Λ

Page 17: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 19

43. Η λογική πράξη ΚΑΙ μεταξύ δύο προτάσεων είναι ψευδής, όταν οποιαδήποτε από τις δύο προτάσεις είναι ψευδής.

Σ Λ

44. Ο τελεστής ΚΑΙ αντιστοιχεί στη λογική πράξη της σύζευξης. Σ Λ

45. Η ιεραρχία των λογικών τελεστών είναι μικρότερη των αριθμητικών. Σ Λ

46. Το σύμβολο (=) είναι αριθμητικός τελεστής. Σ Λ

47. Η σύγκριση λογικών δεδομένων έχει έννοια μόνο στην περίπτωση του ίσου (=) και του διάφορου (<>).

Σ Λ

48. Όταν αριθμητικοί και συγκριτικοί τελεστές συνδυάζονται σε μία έκφραση, οι αριθμητικές πράξεις εκτελούνται πρώτες.

Σ Λ

49. Σε μία λογική έκφραση οι συγκριτικοί τελεστές έχουν χαμηλότερη ιεραρχία από τους λογικούς τελεστές.

Σ Λ

50. Η λογική έκφραση Χ Ή (ΟΧΙ Χ) είναι πάντα αληθής για κάθε τιμή της λογικής μεταβλητής Χ.

Σ Λ

51. Η έκφραση Χ ΚΑΙ (ΟΧΙ Χ) είναι πάντα Αληθής για κάθε τιμή της λογικής μεταβλητής Χ.

Σ Λ

52. Η έκφραση "ΚΑΛΗΜΕΡΑ" > "ΚΑΛΗΣΠΕΡΑ" έχει την τιμή Αληθής . Σ Λ

53. Μετά από την εκτέλεση της εντολής Σ ← Σ+Α, η τιμή της μεταβλητής Σ είναι πάντοτε μεγαλύτερη από την τιμή που είχε πριν από την εκτέλεση της εντολής .

Σ Λ

54. Η έκφραση ΟΧΙ(Κ=10 ΚΑΙ Χ>7) είναι ισοδύναμη με την έκφραση (Κ<>10 Ή Χ<=7) Σ Λ

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

Σ Λ

56. Οι εκφράσεις διαμορφώνονται από τους τελεστέους και τους τελεστές. Σ Λ

57. Οι λογικές τιμές είναι οι εξής: ΟΧΙ, ΚΑΙ, Ή. Σ Λ

58. Αν Α=2, Β=3, Γ=4 και Δ=ΑΛΗΘΗΣ, τότε η τιμή της έκφρασης (Β*Γ>Α+Β) ΚΑΙ (ΟΧΙ(Δ)) είναι ΑΛΗΘΗΣ.

Σ Λ

59. Η μεταβλητή Χ είναι πραγματικού τύπου στην εντολή εκχώρησης: Χ ← α/2 Σ Λ

60. Η μεταβλητή Χ είναι ακέραιου τύπου στην εντολή εκχώρησης: Χ ← Α_Μ(α) / 2 Σ Λ

61. Η σύνθετη συνθήκη Χ<= -5 ΚΑΙ Χ>5, δεν αληθεύει για καμία τιμή του Χ. Σ Λ

62. Η τελική τιμή μιας έκφρασης εξαρτάται , μεταξύ άλλων, από την ιεραρχία των πράξεων και τη χρήση των παρενθέσεων.

Σ Λ

63. Η λογική έκφραση (Α > Β) Ή ΟΧΙ(Α > Β) είναι πάντα αληθής για οποιεσδήποτε τιμές των αριθμητικών μεταβλητών Α και Β.

Σ Λ

64. Στη ΓΛΩΣΣΑ ο χαρακτήρας είναι ένας τύπος δεδομένων.

Σ Λ

65. Η πράξη της σύζευξης δύο λογικών εκφράσεων δίνει ως αποτέλεσμα την τιμή ΨΕΥΔΗΣ, μόνον όταν και οι δύο εκφράσεις έχουν την τιμή ΨΕΥΔΗΣ .

Σ Λ

Page 18: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 20

1.13 Ασκήσεις

1. Να γράψετε τους αριθμούς 1, 2, 3, 4 από τη στήλη Α και δίπλα το γράμμα α, β της στήλης Β που δίνει τον σωστό χαρακτηρισμό.

Στήλη Α Στήλη Β

1. Εύστοχη χρήση ορολογίας

2. Τήρηση λεξικολογικών και συντακτικών κανόνων

3. Επακριβής προσδιορισμός δεδομένων

4. Λεπτομερειακή καταγραφή ζητουμένων

α. Σαφήνεια διατύπωσης προβλήματος β. Καθορισμός απαιτήσεων

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

Στήλη Α Στήλη Β

1. Καθορισμός απαιτήσεων

2. Δομή προβλήματος

3. Στάδιο αντιμετώπισης προβλημάτων

4. Πληροφορία

5. Κατανόηση προβλήματος

6. Ανάλυση προβλήματος

α. Προσδιορισμός δεδομένων και ζητουμένων

β. Επεξεργασία δεδομένων

γ. Σαφήνεια διατύπωσης

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

ε. Επίλυση προβλήματος

στ. Διαγραμματική αναπαράσταση

στ. Διαγραμματική αναπαράσταση

3. Να αντιστοιχίσετε κάθε στοιχείο της στήλης Α με ένα ή περισσότερα στοιχεία της στήλης Β.

Στήλη Α Στήλη Β

1. Βήματα επίλυσης προβλήματος

2. Κατανόηση προβλήματος

3. Διατύπωση προβλήματος

4. Καθορισμός απαιτήσεων

α. Σωστή χρήση ορολογίας

β. Σωστή διατύπωση

γ. Κατανόηση

δ. Σωστή χρήση λόγου

ε. Σωστή ερμηνεία

στ. Επίλυση

ζ. Καταγραφή δεδομένων

η. Ανάλυση

θ. Αποτύπωση ζητουμένων

Page 19: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 21

4. Να αντιστοιχίσετε τα στοιχεία της στήλης Α με αυτά της στήλης Β:

5. Να αντιστοιχίσετε κάθε Δεδομένο της Στήλης Α με το σωστό Τύπο Δεδομένου της Στήλης Β.

6. Να αντιστοιχίσετε τα στοιχεία της στήλης Α με αυτά της στήλης Β:

7. Να συμπληρώσετε τον παρακάτω πίνακα με τον κατάλληλο τύπο και το περιεχόμενο της μεταβλητής.

Στήλη Α Δεδομένα

Στήλη Β Τύπος Δεδομένων

1. "124" α. Αλφαριθμητικός (Χαρακτήρας)

2. 124

3. "AΛΗΘΗΣ" β. Ακέραιος

4. ΨΕΥΔΗΣ

5. -98.345 γ. Πραγματικός

6. 0

7. "ΚΑΛΗΜΕΡΑ ΣΕ ΟΛΟΥΣ" δ. Λογικός

8. 3 + 78.4

Στήλη Α Δεδομένα

Στήλη Β Τύπος Δεδομένων

1. 0.42 α. Ακέραιος

2. "ΨΕΥΔΗΣ" β. Πραγματικός

3. "Χ" γ. Χαρακτήρας

4. −32.0 δ. Λογικός

5. ΑΛΗΘΗΣ

Στήλη Α Στήλη Β

1. "ΑΛΗΘΗΣ" α. λογικός τελεστής

2. ΚΑΙ β. μεταβλητή

3. α > 12 γ. αλφαριθμητική σταθερά

4. αριθμός_παιδιών δ. λογική σταθερά

5. <= ε. συγκριτικός τελεστής

στ συνθήκη

Εντολή εκχώρησης Τύπος μεταβλητής Χ Περιεχόμενο μεταβλητής Χ

Χ 'ΑΛΗΘΗΣ'

Χ 11.0 – 13.0

Χ 7 > 4

Χ ΨΕΥΔΗΣ

Χ 4

Page 20: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 22

8. Να κρίνετε για την ορθότητά τους τις παρακάτω εντολές:

1. ποσό τιμή + 0.18*τιμή

2. ποσό 2 * ποσό

3. ποσό ποσό + 5% * ποσό

4. i i + 1

5. x + y 3

6. x 'x' + 3

7. 2*x 3

8. 2 * Α Α

9. Α 3 * Α + 5

10. Β + 5 "Α"

11. y "Λάθος"

12. "Λάθος" 3+2

13. y ΑΛΗΘΗΣ

14. "ΓΙΑΝΝΗΣ" ΑΛΗΘΗΣ

15. Όνομα "ΓΙΑΝΝΗΣ"

16. ΤαχΚωδ "34100"

17 ΤΗΛ "22210766"+ 89

18. Κωδικός 32200 - "200"

19. Διάβασε τιμή 100

20. Διάβασε "Λάθος"

21. Γράψε "Λάθος"

22. Διάβασε 2,x

23. Γράψε x, 2

24. Εμφάνισε x, "2"

25. Γράψε "x=", x

26. Διάβασε α + β

27. Εκτύπωσε α + β

28. Διάβασε α 2

29. y 'ΆΝΝΑ">"ΜΑΡΙΑ"

30. ποσό 213>(x-7)

31. x όχι 'ΆΝΝΑ"

32. κ (y >x) και (y>0)

33. y (x ΑΛΗΘΗΣ)

Page 21: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 23

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

α. 2

5 3x y−

− β. 2 2x y− γ.

2 2

x x

x

+

δ. 3

2

1

2

xx

y y

−+

+ ε. ln 2

2

x στ. xe x

10. Να υπολογιστούν οι τελικές τιμές των μεταβλητών στο παρακάτω τμήμα αλγορίθμου:

Α 2

Β 2 * Α

Β Β * Α + 3

Β 3 – 2 * Β

Β Α + Β ^ 2

11. Να υπολογιστούν οι τελικές τιμές των μεταβλητών στο παρακάτω τμήμα αλγορίθμου:

Α 3

Β 4

Α Α ^ 2

Β Β ^ 2

Α Τ_Ρ(Α + Β)

12. Να υπολογιστούν οι τελικές τιμές των μεταβλητών στο παρακάτω τμήμα αλγορίθμου:

Α 1

Α (Α + 1)^3 + 6 / 2 * 3 + 15

Β Α div 12

C A mod 12

D 12 mod A

E 12 div A

Page 22: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 24

13. Έστω Α και Β λογικές μεταβλητές για τις οποίες ισχύει Α = Ψευδής, Β = Αληθής. Να βρεθεί η τιμή των παρακάτω παραστάσεων:

Α ή Β

(όχι Α) και Β

(Α και Β) ή (όχι Β)

(Α ή Β) ή (όχι Α)

(Α ή Β) και (όχι (Α και Β))

14. Δίνονται οι τιμές των μεταβλητών Α = 5, Β = 7 και Γ = -3. Να χαρακτηρίσετε κάθε έκφραση που ακολουθεί με το γράμμα Α, αν είναι αληθής, ή με το γράμμα Ψ, αν είναι ψευδής.

i. ΟΧΙ (Α + Β <10)

ii. (Α >= Β) Η (Γ < Β)

iii. ((Α > Β) ΚΑΙ (Γ < Α)) Η (Γ > 5)

iv. (ΟΧΙ(Α <> Β)) ΚΑΙ (Β + Γ <> 2 * Α)

15. Ποιο είναι το λογικό αποτέλεσμα (αληθής ή ψευδής) από την εκτέλεση των παρακάτω πράξεων αν οι μεταβλητές έχουν τις τιμές: Α = 10, Β = 2, Γ = -4, Δ = 9 και Ε = 1;

i. (Α > Β) ή (Δ =10)

ii. (Δ >= Β) και (Ε <> Γ)

iii. όχι (Ε <=Γ ) ή (Δ <= Γ)

iv. όχι ((Β <= Γ) και (Δ < 2))

v. όχι (όχι (Β <= Ε) ή όχι (Γ <= Β))

vi. ((Ε <= Α) και (Ε >= Γ)) και όχι (Γ >= Α)

16. Να συμπληρώσετε τον παρακάτω πίνακα:

x y z (x>y) και z>0 (x+1 )=y και x=(y-z) όχι (x>0) και (y>0) και z>=1

3 2 -1

-2 3 2

3 4 1

-4 -3 1

17. Τι θα εμφανίσει η ακόλουθη σειρά εντολών;

A 5

B 2

Α Α*Α ΕΜΦΑΝΙΣΕ Β ΕΜΦΑΝΙΣΕ Α α. 2 β. 5 γ. 2 δ. 2 5 2 2 25

Page 23: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 25

18. Τι θα εμφανίσει καθένα από τα ακόλουθα προγράμματα;

ΠΡΟΓΡΑΜΜΑ ΔυοΑ1 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α ΑΡΧΗ

A 3

A A+A ΓΡΑΨΕ Α

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

ΠΡΟΓΡΑΜΜΑ ΔυοΑ1 ΜΕΤΑΒΛΗΤΕΣ ΧΑΡΑΚΤΗΡΕΣ: Α ΑΡΧΗ

A '3'

A 'A+A' ΓΡΑΨΕ Α

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

ΠΡΟΓΡΑΜΜΑ ΔυοΑ1 ΜΕΤΑΒΛΗΤΕΣ ΧΑΡΑΚΤΗΡΕΣ: Α ΑΡΧΗ

A '3'

A A+A ΓΡΑΨΕ Α

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

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

12 mod 7 - 11 mod 6 (32 mod 4) + (32 mod 3) * 5

13 div 4 - 13 mod 4 2 * (13 div 4) - (14 mod 7) + 5

3 * (66 mod 56) - 4 * (16 div 3) 2*(11+7-2) div 3 div 17 mod 6

(28 mod 24) div 2 (128 mod 120) - (128 div 120)

20. Ποια η τιμή της μεταβλητής Α μετά την εκτέλεση της παρακάτω εντολής:

Α (5 + 4 / 2 * 2) * 2 - (3 * 2 + 5 - 3) ^ 2 + 9 / 3 - 2 α. -53 β. -37 γ. -125 δ. -45

21. Να δοθεί ο παρακάτω αλγόριθμος σε μορφή ψευδοκώδικα.

Αρχή

Διάβασε α, β

Γράψε x, y

x α mod β

y 2*α + 3*β

x x^2 - y

y x + y

Τέλος

Page 24: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 26

22. Να δοθεί ο παρακάτω αλγόριθμος σε μορφή διαγράμματος ροής. Αλγόριθμος Διάγραμμα

Διάβασε α, β

α α mod β Εμφάνισε α

β β^2 - α Εμφάνισε β

α α + β

β β^2 + 2*α Εμφάνισε α, β

Τέλος Διάγραμμα

23. Δίνεται ο παρακάτω αλγόριθμος. Να παρουσιαστεί ο πίνακας τιμών και οι τιμές που θα εκτυπωθούν. Αλγόριθμος Πίνακας_Τιμών_1

α 2

β α +5

α α * β − 4

β α mod β

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

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

24. Δίνεται ο παρακάτω αλγόριθμος. Να παρουσιαστεί ο πίνακας τιμών και οι τιμές που θα εκτυπωθούν. Αλγόριθμος Πίνακας_Τιμών_2

Χ 2

Υ Χ ^ 3 - 1

Ζ Υ div Χ Εκτύπωσε Χ, Υ, Ζ

X Y mod X

Υ Y div X

Ζ Χ + Υ - Ζ ^ 2 Εκτύπωσε Ζ, Υ, Χ

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

25. Δίνεται ο παρακάτω αλγόριθμος. Να παρουσιαστεί ο πίνακας τιμών και οι τιμές που θα εκτυπωθούν. Αλγόριθμος Πίνακας_Τιμών_3

A 2

B A+ 1

Α A+ Β

B A+ 1

Γ Α + Β + 15 Εκτύπωσε Α, Β, Γ

Α (Α + Β) mod Α

Β Γ div (Α + Β) Εκτύπωσε Α, Β, Γ

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

Page 25: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 27

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

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

α 28

β α mod 5

α α div 3

γ α + (α * β)

γ γ div α Εμφάνισε α, β, γ

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

27. Δίνεται ο παρακάτω αλγόριθμος. Να παρουσιαστεί ο πίνακας τιμών και οι τιμές που θα εκτυπωθούν (η αρχική τιμή που θα δοθεί στο x ας είναι το 10).

Αλγόριθμος Πίνακας_Τιμών_5 Διάβασε x

x x mod 6 Εκτύπωσε x

x x +x ^ 2 Εκτύπωσε x

x (x mod 2) * (x div 2) Εκτύπωσε x

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

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

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

κωδικός "76"

x "κωδικός"

y x

x κωδικός

Εκτύπωσε κωδικός, x, y

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

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

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

X 7653

Υ (X div 100) mod 5 Εκτύπωσε Υ

X X* Υ ^ 2

Υ (X div 10) mod 4

Ζ X div Υ

Εκτύπωσε Χ, Υ, Ζ Τέλος Πίνακας_Τιμών_7

Page 26: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 28

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

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

α 7

β 8

γ (α > β) Εκτύπωσε γ

δ (α <=β ) και ((2*α - 1)= (2*β + 1)) Εκτύπωσε γ ή όχι δ

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

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

Αλγόριθμος : Άσκηση_μετατροπή Είσοδος : Ακέραιοι αριθμοί α, β Έξοδος : Ακέραιοι αριθμοί α, β, γ Βήμα 1 : Θέσε γ = (α + β) div 2 Βήμα 2 : Τύπωσε το γ Βήμα 3 : Θέσε α = (α – γ)2 Βήμα 4 : Θέσε β = (β + γ)2 Βήμα 5 : Θέσε γ = (β mod α)2 Βήμα 6 : Τύπωσε τα α, β, γ

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

Αλγόριθμος κενά α β γ

α . . . . . 3

β 5 5

γ α . . . β −2

α α + . . . 1

. . . β – . . . 3

γ γ – (α + . . . ) −6

. . . α + β – . . . 10

Εμφάνισε . . . . . Θα εμφανιστεί: 3, 10

Τέλος κενά

33. Δίνονται τα τμήματα αλγορίθμων:

α. Διάβασε Α, Β β. Διάβασε Α, Β Τ Α Α Β

Α Β Β Α

Β Τ Εμφάνισε Α, Β

Εμφάνισε Α, Β

Να εκτελεστούν και τα δύο για Α = 5 και Β = 8. Ποιο από τα δύο τμήματα ανταλλάσσει τις τιμές των μεταβλητών Α και Β; Για ποιο λόγο το άλλο τμήμα δεν κάνει το ίδιο;

Page 27: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 29

1.14 Προβλήματα

1. Να γραφεί αλγόριθμος ο οποίος θα υπολογίζει και θα εκτυπώνει το εμβαδόν ενός τραπεζίου, όταν δίνονται οι βάσεις και το ύψος του. (Ισχύει ότι Ε=(Β+β)*υ/2)

2. Να γράψετε αλγόριθμο που διαβάζει 4 αριθμούς και να υπολογίζει και να εμφανίζει το άθροισμά τους, το γινόμενο τους και το μέσο όρο τους.

3. Να γραφεί αλγόριθμος που να διαβάζει την τιμή ενός προϊόντος σε δραχμές και να υπολογίζει και εμφανίζει την αντίστοιχη αξία του σε €. Δίνεται ότι 1 € = 340,75 δρχ.

4. Να γραφεί πρόγραμμα που διαβάζει τον αριθμό επιστολών που στέλνει μια επιχείρηση σε πελάτες εσωτερικού και εξωτερικού που έχει και στη συνέχεια υπολογίζει κι εμφανίζει το συνολικό κόστος αποστολής. Τα ταχυδρομικά τέλη κάθε επιστολής για το εσωτερικό και το εξωτερικό είναι αντίστοιχα €0,50 και €2,00.

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

Ποσοστά

6. Να γραφεί πρόγραμμα που διαβάζει τις συνολικές εισπράξεις τριμήνου μιας επιχείρησης ανά κατηγορία Φ.Π.Α. και στη συνέχεια υπολογίζει κι εμφανίζει το συνολικό ποσό του Φ.Π.Α. που πρέπει να καταβάλλει η επιχείρηση στο τέλος του τριμήνου στην εφορία. Τα ποσοστά Φ.Π.Α. είναι οι σταθερές (0.11, 0.19, 0.23, 0.24) και τα ποσά τριμήνου πρέπει να εισάγονται με την αντίστοιχη σειρά.

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

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

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

10. Σε κάποιο κατάστημα οι τιμές των προϊόντων στις ετικέτες αναγράφονται χωρίς το ΦΠΑ. Να γραφεί πρόγραμμα που θα διαβάζει την αρχική τιμή ενός προϊόντος και τα χρήματα που δίνει ο πελάτης και θα υπολογίζει και θα εμφανίζει το πληρωτέο ποσό (συντελεστής ΦΠΑ 23%) καθώς και τα ρέστα που δικαιούται ο πελάτης.

11. Κάθε υπάλληλος μίας εταιρείας πληρώνεται με ημερομίσθιο 35€, ενώ ο μισθός του υπόκειται σε κρατήσεις 12%. Να γραφεί πρόγραμμα που θα διαβάζει τις ημέρες που εργάστηκε τον περασμένο μήνα ένας υπάλληλος και να εκτυπώνει τις καθαρές αποδοχές του καθώς και το ποσό των κρατήσεων.

Page 28: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 30

Συναρτήσεις

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

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

13. Να γραφεί πρόγραμμα που θα διαβάζει την τιμή της μεταβλητής x και μετά θα υπολογίζει και εκτυπώνει την τιμή της συνάρτησης: f(x) = x5 + 3x4 – x + 21.

14. Να γραφεί πρόγραμμα που θα διαβάζει τους προφορικούς βαθμούς ενός μαθητή της Γ’ Λυκείου στα δυο τετράμηνα στο μάθημα της Ανάπτυξης Εφαρμογών καθώς και τον γραπτό του βαθμό στις πανελλήνιες εξετάσεις. Στη συνέχεια το πρόγραμμα να υπολογίζει και να εκτυπώνει τον βαθμό πρόσβασης του μαθητή αυτού στο συγκεκριμένο μάθημα. (Σημείωση: ο βαθμός πρόσβασης υπολογίζεται από την πράξη 70% * γραπτός βαθμός και 30% * προφορικός βαθμός, όπου ο προφορικός βαθμός είναι ο μέσος όρος των βαθμών στα δυο τετράμηνα).

Αναλογίες

15. Ένα ποσό 60.000 € πρόκειται να διανεμηθεί σε 5 σχολεία ανάλογα με το πλήθος των μαθητών τους. Να γραφεί αλγόριθμος που να διαβάζει το πλήθος των μαθητών για τα 5 σχολεία και να υπολογίζει και εμφανίζει το ποσό που θα δοθεί σε κάθε σχολείο.

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

DIV και MOD

17. Μια ναυτιλιακή εταιρεία μεταφέρει οικιακές συσκευές τυποποιημένου μεγέθους και χρησιμοποιεί ειδικά μεταφορικά κιβώτια (containers) τα οποία χωρούν 1, 5, 20 ή 50 οικιακές συσκευές. Γράψτε ένα πρόγραμμα το οποίο να δέχεται ως δεδομένο τον αριθμό των οικιακών συσκευών που πρόκειται να μεταφερθούν και υπολογίζει κι εμφανίζει τον απαιτούμενο αριθμό μεταφορικών κιβωτίων από κάθε μέγεθος, έτσι ώστε η μεταφορά να πραγματοποιηθεί με τον ελάχιστο δυνατό αριθμό μεταφορικών κιβωτίων.

18. Να γραφεί πρόγραμμα που να διαβάζει έναν μισθό σε Ευρώ και να κάνει ανάλυση του. Δηλαδή, να βρίσκει και να εμφανίζει από πόσα χαρτονομίσματα και κέρματα αποτελείται των 500, 200, 100, 50, 20, 10, 5, 2 και 1 Ευρώ.

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

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

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

Page 29: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΛΓΟΡΙΘΜΟΣ – ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 31

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

23. Ένα super market κάνει προσφορές στους πελάτες του ανάλογα με τους πόντους που συγκεντρώνουν στις αγορές τους. Για κάθε έναν πόντο απαιτείται αγορά προϊόντων αξίας 3€. Να γραφεί πρόγραμμα που να διαβάζει το ποσό σε ΕΥΡΩ που πλήρωσε ένας πελάτης στο super market και να βρίσκει και εμφανίζει πόσοι πόντοι του αναλογούν.

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

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

26. Ρομπότ με σταθερό μήκος βήματος καταφτάνει στον πλανήτη Άρη για να περισυλλέξει πετρώματα. Κάθε 1 βήμα του είναι 80cm. Το ρομπότ διαθέτει μετρητή βημάτων. Διένυσε στον Άρη μία ευθεία από σημείο Α σε σημείο Β και ο μετρητής βημάτων κατέγραψε Ν βήματα. Να γραφεί αλγόριθμος που: α. να διαβάζει τον αριθμό Ν των βημάτων του ρομπότ.

μονάδες 2 β. να υπολογίζει και να τυπώνει την απόσταση ΑΒ που διανύθηκε σε cm.

μονάδες 3 γ. να μετατρέπει και να τυπώνει αυτήν την απόσταση σε Km, m και cm. Π.χ. αν η

απόσταση είναι 100080cm, τότε να τυπώνει: 1 Km, 0 m, 80 cm. μονάδες 15

Γενικά

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

α. Πάγιο μηνιαίο κόστος 1.40 €, και επιπλέον χρέωση 0.23 € για κάθε μελωδία που “κατεβαίνει” στο κινητό του συνδρομητή.

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

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

28. Μια εταιρία στάθμευσης οχημάτων διαθέτει τρεις χώρους στάθμευσης, έναν για φορτηγά, έναν για επιβατηγά και έναν για μοτοσικλέτες. Η είσοδος ενός οχήματος για στάθμευση χρεώνεται ανεξάρτητα από τον χρόνο παραμονής του και είναι: • 2,7 € για τα φορτηγά, • 2,3 € για τα επιβατηγά και • 1,8 € για τις μοτοσικλέτες.

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

Page 30: ΑΝΑΛ IΗ EΟΒΛΗΜΑ HΟ – ΑΛΓΟΜΟ – ΔΟΜΗ ΑΚΟΛΟΑ Ανάλʑση ... · Δομή ακολοʑθίας 1.1 Η έννοια πρόβλημα Δώσʐε ʐον

Σάββας Λερίου

ΑΝΩΣΗ – ΣΠΟΥΔΑΣΤΗΡΙΟ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ 32

29. Οι μαθητές ενός λυκείου του Βόλου θα πάνε πενθήμερη εκδρομή με λεωφορεία στη Κρήτη. Πληροφορήθηκαν λοιπόν πως στο πλοίο το εισιτήριο είναι € 250 για κάθε λεωφορείο μαζί με το εισιτήριο του οδηγού και € 50 για κάθε επιβάτη. Να γράψετε πρόγραμμα το οποίο θα διαβάζει το πλήθος των λεωφορείων και των αριθμό των ατόμων (μαθητές και οδηγοί) που συμμετέχουν στην εκδρομή και θα εμφανίζει το πληρωτέο ποσό.

30. Κάποιο κατάστημα προσφέρει 10 άτοκες μηνιαίες δόσεις στα προϊόντα του. Να γράψετε πρόγραμμα το οποίο: α. διαβάζει την τιμή ενός προϊόντος β. υπολογίζει την αξία του ΦΠΑ (23%) γ. υπολογίζει την τιμή της μηνιαίας δόσης δ. εμφανίζει την τιμή της μηνιαίας δόσης και τη συνολική αξία του προϊόντος.

31. Δύο φίλοι είναι οι μόνοι μέτοχοι στην εταιρεία τους. Η εταιρική συμφωνία για την κατανομή των κερδών είναι η εξής: Το 30% των κερδών επενδύεται στην εταιρεία, ενώ τα υπόλοιπα μοιράζονται σε δύο ίσα μερίδια που τα παίρνουν οι δικαιούχοι. Υποχρέωση του πρώτου είναι να διαθέσει το 5% του μεριδίου επίσης για νέες επενδύσεις, ενώ ο δεύτερος πρέπει να κάνει το ίδιο με ποσοστό 20% του δικού του μεριδίου. Ό,τι απομένει από το μερίδιό τους μπορούν να το αξιοποιήσουν όπως επιθυμούν. Να γράψετε αλγόριθμο που θα διαβάζει τα κέρδη της εταιρείας και θα εκτυπώνει: α. το συνολικό ποσό που θα επενδυθεί στην εταιρεία, β. πόσα χρήματα απομένουν στο κάθε μέτοχο, γ. ποιο είναι το μέσο ποσό που έχει ο καθένας στη διάθεσή του.

32. Μια εταιρεία αποφάσισε να χρηματοδοτήσει την εκπαίδευση του προσωπικού της στην πληροφορική και για το σκοπό αυτό θα συνεργαστεί με ιδιωτικό κέντρο. Το κόστος εκπαίδευσης είναι 25 € ανά εκπαιδευόμενο. Ωστόσο, το Υπουργείο Εργασίας χρηματοδοτεί μέσω Ευρωπαϊκού προγράμματος την εκπαίδευση σε ποσοστό 40%. Να αναπτύξετε αλγόριθμο που να διαβάζει το πλήθος των ατόμων που θα εκπαιδευτούν και να εκτυπώνει τα χρήματα που θα ξοδέψει η εταιρεία για την εκπαίδευση του προσωπικού και το αντίστοιχο μερίδιο του Υπουργείου Εργασίας.

33. Σε μια ιδιωτική εταιρεία κάθε εργαζόμενος κατά την πρόσληψή του διαπραγματεύεται για τον μηνιαίο βασικό μισθό που θα λαμβάνει. Επιπρόσθετα κάθε τριετία που συμπληρώνει στην εργασία λαμβάνει μηνιαίο επίδομα 300 € (για παράδειγμα, αν κάποιος εργαζόμενος έχει εργαστεί από 1 έως και 2 έτη, δε δικαιούται επίδομα, αν έχει όμως εργαστεί 7 έτη, δικαιούται επίδομα 600 € κ.ο.κ.). Να γραφεί πρόγραμμα το οποίο:

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

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

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

επίδομα σε κρατήσεις 8%. Το πρόγραμμα πρέπει να εμφανίζει, λοιπόν, το ποσό των καθαρών αποδοχών, καθώς και το ποσό των κρατήσεων.