Εργαστήριο 9 Συναρτήσεις στη PASCAL. Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός

Σχετικά έγγραφα
TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL

Εισαγωγή στο προγραμματισμό με τη PASCAL Οδηγός Προετοιμασίας για τη Τελική Εξέταση

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

ΣΥΝΑΡΤΗΣΕΙΣ. Η σύνταξη μιας συνάρτησης σ ένα κελί έχει την γενική μορφή: =όνομα_συνάρτησης(όρισμα1; όρισμα2;.)

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 9 Ανάλυση Fourier: Από τη Θεωρία στην Πρακτική Εφαρμογή των Μαθηματικών

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Τα Εργαστηριακά Προγράμματα. Η δομή Επιλογής στη PASCAL. H δομή Επανάληψης στη PASCAL. Η εντολή επανάληψης for

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

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΡΑΞΕΙΣ. Παράδειγμα #1. Πράξεις μεταξύ ακεραίων αριθμών

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Διαδικασίες και συναρτήσεις. 22 Νοε 2008 Ανάπτυξη εφαρμογών/ Υποπρογράμματα 1

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι είναι ; Συναρτήσεις. Παράδειγμα #1. double convert ( double cm ) { double inch;

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ

Αναδρομικός αλγόριθμος

Άσκηση 1. Α. Υπολογίστε χωρίς να εκτελέσετε κώδικα FORTRAN τα παρακάτω: Ποιά είναι η τελική τιμή του Z στα παρακάτω κομμάτια κώδικα FORTRAN:

Ρητή μετατροπή αριθμητικής τιμής σε άλλο τύπο. Τι θα τυπωθεί στον παρακάτω κώδικα;

Εισαγωγή στο Προγραμματισμό με τη PASCAL & τη Matlab Εξαμηνιαία Εργασία 2014 Μετατρέποντας AC σε DC Τάση Μέρος Β : Πορεία Εργασίας

Σκοπός. Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές. Συλλογή & Επεξεργασία Δεδομένων. Πρόγραμμα. Εντολές Επεξεργασίας Δεδομένων

4. Ποιος είναι ο τύπος και ποια η τιμή της μεταβλητής που χρησιμοποιείται παρακάτω;

Μέθοδοι πολυδιάστατης ελαχιστοποίησης

Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού

Συναρτήσεις. Υποπρόγραμμα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 8 Επεξεργασία Σήματος με την Ανάλυση Fourier. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 3: Συναρτήσεις

ΠΛΗΡΟΦΟΡΙΚΗ Ι (MATLAB) Ενότητα 4

ΜΑΗΣ ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Σημειωματάριο Δευτέρας 30 Οκτ. 2017

Προγραμματισμός Ι Εργαστήριο 8ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 8 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Ηλεκτρονικοί Υπολογιστές

Χρησιμοποιώντας συναρτήσεις

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τι είναι μια συνάρτηση; ΣΥΝΑΡΤΗΣΕΙΣ. Δήλωση συνάρτησης sq. Παράδειγμα συνάρτησης: υπολογισμός τετραγώνου

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Συναρτήσεις I Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Υπολογιστές Ι. Άδειες Χρήσης. Τύποι δεδομένων. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Επικοινωνία:

Κεφάλαιο 12 : ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

Μαθηματικός Ορισμός Διδιάστατου Χώρου (R 2 )

Όταν οι αριθμοί είναι ομόσημοι Βάζουμε το κοινό πρόσημο και προσθέτουμε

Προγραμματισμός Ι Εργαστήριο 8ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 8 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 7 Ακούγοντας Πρώτη Ματιά στην Ανάλυση Fourier. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

y 1 (x) f(x) W (y 1, y 2 )(x) dx,

Κεφάλαιο 9 : Βασικές εντολές

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.

ΚΕΦΑΛΑΙΟ 3 ο ΣΥΝΑΡΤΗΣΕΙΣ, ΤΡΙΓΩΝΟΜΕΤΡΙΑ( FUNCTIONS,TRIGONOMETRY)

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών

Υποπρογράµµατα Συναρτήσεις. Στόχοι Μαθήµατος. Οι µαθητές να µπορούν:

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

ΑΣΚΗΣΕΙΣ Ακολουθίας. Πίνακας τιµών µεταβλητών Χ Α Β α β γ

ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΗΣ

ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ Α. β. Οι πληροφορίες είναι δεδομένα τα οποία δεν έχουν υποστεί επεξεργασία.

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοι- νωνία Σ Σειριακή Επικοινωνία

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ. Πως γίνεται ο ορισμός μιας διαδικασίας; Να δοθούν σχετικά παραδείγματα. ΑΡΧΗ Εντολές ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

1. Κατασκευάστε ένα διάνυσμα με στοιχεία τους ζυγούς αριθμούς μεταξύ του 31 και 75

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Σκοπός. Εργαστήριο 5 Εντολές Επιλογής

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τι χρειάζεται η εντολή DO ; ΕΠΑΝΑΛΗΨΕΙΣ ΕΝΤΟΛΗ DO. Όταν απαιτείται να εκτελεστεί πολλές φορές το ίδιο τμήμα ενός προγράμματος.

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

Τι είναι υποπρόγραμμα; Τμήμα προγράμματος το οποίο επιτελεί ένα αυτόνομο υπολογιστικό έργο (γράφεται χωριστά από το υπόλοιπο πρόγραμμα)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Εισαγωγή στη Matlab Βασικές Συναρτήσεις

Να γράψετε τα αποτελέσματα αυτού του αλγόριθμου για Χ=13, Χ=9 και Χ=22. Και στις 3 περιπτώσεις το αποτέλεσμα του αλγορίθμου είναι 1

Προτεινόμενα Θέματα ΑΕΠΠ

a (x)y a (x)y a (x)y' a (x)y 0

Αναφέρατε τις ιδιότητες που πρέπει να διακρίνουν τα υποπρογράμματα. Μονάδες 3

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος

Κεφάλαιο 10 ο Υποπρογράµµατα

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

Μέτρηση Θερμοκρασίας με τον αισθητήρα TMP36. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων. Βασική δομή ενός προγράμματος στο LabVIEW.

1 3 (a2 ρ 2 ) 3/2 ] b V = [(a 2 b 2 ) 3/2 a 3 ] 3 (1) V total = 2V V total = 4π 3 (2)

ΑΕΠΠ Ερωτήσεις θεωρίας

Υπολογιστές Ι. Άδειες Χρήσης. Συναρτήσεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Μεθόδων Επίλυσης Προβλημάτων

Κεφάλαιο , 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Pascal, απλοί τύποι, τελεστές και εκφράσεις

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 1. Arduino + LabVIEW: Μέτρηση Έντασης Φωτός με Φωτοαντίσταση. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ ΕΛΛΗΝΙΚΟ ΑΝΟΙKΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Εισαγωγή στο Προγραμματισμό με τη PASCAL & τη Matlab Εξαμηνιαία Εργασία 2015 Μετατρέποντας AC σε DC Τάση Περισσότερες Επεξηγήσεις

a = f( x ) =. (Μονάδες 8) 2 = =,από όπου προκύπτει ( υψώνοντας στο τετράγωνο ), x =, επομένως x = 0 x = ή Άσκηση 4679 Δίνεται η συνάρτηση:

Εισαγωγή στο Πρόγραμμα Maxima

Ανάλυση Ηλεκτρικών Κυκλωμάτων

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ - ΓΛΩΣΣΑ

ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ - ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

ΤΡΙΩΡΗ ΓΡΑΠΤΗ ΔΟΚΙΜΑΣΙΑ

Εφαρμογή 9.2 Μετατροπή Ασύμμετρης Τριφασικής Κατανάλωσης σε Συμμετρική, με Ανακατανομή των Φορτίων

Εφαρμογές Υπολογιστών. Κεφάλαιο 7 Προγραμματισμός υπολογιστή

Εφαρμοσμένα Μαθηματικά ΙΙ Εξέταση Σεπτεμβρίου 25/9/2017 Διδάσκων: Ι. Λυχναρόπουλος

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Τύποι δεδομένων, μεταβλητές, πράξεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

ΔΙΑΓΩΝΙΣΜΑ ΕΚΠ. ΕΤΟΥΣ ΑΠΑΝΤΗΣΕΙΣ

Κεφάλαιο 1. Τι θα μάθουμε σήμερα: -AND, OR, NOT. -Ενσωματωμένες συναρτήσεις. -Μαθηματικοί τελεστές -ΤΕΛΕΣΤΕΣ DIV ΚΑΙ MOD. -Προτεραιότητα πράξεων

Αλγόριθμοι. Βασικές έννοιες ΤΕΛΟΣ

επιµέλεια Θοδωρής Πιερράτος

Transcript:

Εργαστήριο 9 Συναρτήσεις στη PASCAL Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός

7.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Η έννοια της συνάρτησης ως υποπρογράμματος είναι τόσο βασική σε όλες τις γλώσσες προγραμματισμού, ώστε κάθε πρόγραμμα που γράφεται για μία πραγματική εφαρμογή, αποτελείται από πολλές συναρτήσεις. Σε προηγούμενα προγράμματα, έχουμε χρησιμοποιήσει αρκετές από τις μαθηματικές συναρτήσεις στη PASCAL, όπως οι rand(), sin(), cos(), sqrt() και άλλες. Όμως, η έννοια της συνάρτησης στη PASCAL δεν περιλαμβάνει μόνον τις μαθηματικές συναρτήσεις. Μία συνάρτηση μπορεί για παράδειγμα, να επεξεργάζεται κείμενο. Στη PASCAL και γενικότερα στο προγραμματισμό, οι συναρτήσεις έχουν μία γενικότερη έννοια και λειτουργία: εκτελούν έναν επιμέρους υπολογισμό / μία επιμέρους λειτουργία του προγράμματος. Κάθε πρόγραμμα που γράφουμε στη PASCAL, αλλά και σε κάθε άλλη γλώσσα προγραμματισμού, όπως η C, αλλά και η C++ / Objective C πρέπει απαραίτητα να περιλαμβάνει ένα κυρίως πρόγραμμα, όπως τα προγράμματα που μέχρι τώρα έχουμε γράψει. Όμως ένα πρόγραμμα στη, εκτός από το κυρίως πρόγραμμα, μπορεί να περιλαμβάνει στο ίδιο αρχείο ή ακόμα και σε διαφορετικά αρχεία, ένα ή περισσότερα άλλα υποπρογράμματα ή συναρτήσεις. Στα προγράμματα που έχουμε γράψει μέχρι τώρα, όλοι οι υπολογισμοί που απαιτούνταν για τη λύση ενός προβλήματος εκτελούνταν από / περιλαμβάνονταν στο κυρίως πρόγραμμα. Αυτή όμως, δεν είναι η πρακτική που συνήθως ακολουθείται. Συνήθως, η λύση ενός προβλήματος αναλύεται και αναπτύσσεται μέσα από επιμέρους υπολογισμούς. Μέσα από αυτούς τους επιμέρους υπολογισμούς, παίρνουμε ενδιάμεσα αποτελέσματα που τα συνδυάζουμε για να σχηματίσουμε τη λύση του προβλήματος που επιχειρούμε να λύσουμε. Επιμέρους υπολογισμοί του υπολογισμού που απαιτείται για τη λύση ενός προβλήματος, μπορεί να γράφονται / αναπτύσσονται ως ξεχωριστά προγράμματα. Αυτά τα προγράμματα, αν και αποτελούν μέρη / κομμάτια της λύσης ενός προβλήματος, α- ναπτύσσονται ανεξάρτητα το ένα από το άλλο και συνδέονται μεταξύ τους, μέσα από ένα κυρίως πρόγραμμα. Το κυρίως πρόγραμμα καλεί κάθε ένα από τα επιμέρους προγράμματα, μεταβιβάζοντας σ αυτό, τα δεδομένα που χρειάζεται για να εκτελέσει τον υπολογισμό του. Όταν το επιμέρους πρόγραμμα ολοκληρώνει τον υπολογισμό που εκτελεί, επιστρέφει το αποτέλεσμα αυτού του υπολογισμού, στο κυρίως πρόγραμμα. Το κυρίως πρόγραμμα συνδυάζει τα αποτελέσματα που παίρνει από όλα τα επιμέρους προγράμματα, στη λύση του συνολικού προβλήματος που επιχειρούμε να λύσουμε. Αυτή η αλληλεπίδραση ανάμεσα σ ένα κυρίως πρόγραμμα και σε επιμέρους προγράμματα, στη λύση ενός προβλήματος, παριστάνεται στην Εικόνα. Σ αυτή την ενότητα, εξετάζουμε πως μπορούμε να γράφουμε προγράμματα που αποτελούνται και εκτελούν τον υπολογισμό που απαιτείται για τη λύση ενός προβ-

λήματος, χρησιμοποιώντας / καλώντας και συνδυάζοντας συναρτήσεις, κάθε μία από τις οποίες εκτελεί έναν επιμέρους υπολογισμό της συνολικής λύσης του προβλήματος. Στην αρχή, γράφουμε προγράμματα που αποτελούνται / περιλαμβάνουν μία συνάρτηση, εκτός από το κυρίως πρόγραμμα. Μετά, η γενίκευση σε προγράμματα που περιλαμβάνουν περισσότερες από μία συναρτήσεις είναι απλή διαδικασία. Θέμα 1: Γράψτε μία συνάρτηση στη C για να υπολογίζει το τετράγωνο ενός πραγματικού αριθμού. Χρησιμοποιείστε αυτή τη συνάρτηση σ ένα πρόγραμμα που θα διαβάζει έναν πραγματικό αριθμό και θα καλεί τη συνάρτηση, για να υπολογίσει το τετράγωνο αυτού του αριθμού. ΑΠΑΝΤΗΣΗ Για να γράψουμε μία συνάρτηση στη C, ακολουθούμε τη παρακάτω διαδικασία. Βήμα 1: Επικεφαλίδα. Όπως και με την ανάπτυξη του προγράμματος, η ανάπτυξη του κώδικα μίας συνάρτησης ξεκινάει από την επικεφαλίδα. Στην επικεφαλίδα, ορίζουμε: 1. Το τύπο του αποτελέσματος που υπολογίζει η συνάρτηση 2. Το όνομα της συνάρτησης και 3. Τις παραμέτρους της συνάρτησης Έτσι, η επικεφαλίδα μίας συνάρτησης για να υπολογίζει το τετράγωνο ενός πραγματικού αριθμού x, μπορεί να έχει τη μορφή: function square (x : real) : real; Όνομα της συνάρτησης Παράμετροι (Δεδομένα) της συνάρτησης Τύπος της συνάρτησης Ο τύπος μίας συνάρτησης είναι ο τύπος του αποτελέσματος που η συνάρτηση υπολογίζει. Οι παράμετροι μίας συνάρτησης είναι / παριστάνουν τα δεδομένα που χρειάζεται μία συνάρτηση, για να εκτελέσει τον ζητούμενο υπολογισμό. Έτσι, το πλήθος των παραμέτρων μίας συνάρτησης είναι τόσο όσο και το πλήθος των δεδομένων που απαιτούνται για να υπολογίζει και να επιστρέφει η συνάρτηση, το ζητούμενο αποτέλεσμα. Οι τιμές των παραμέτρων καθορίζονται / στέλνονται / μεταβιβάζονται στη συνάρτηση από το κυρίως πρόγραμμα, κατά τη κλήση της συνάρτησης. Η συνάρτηση square για να υπολογίζει το τετράγωνο ενός αριθμού x, χρειάζεται ένα δεδομένο, τη τιμή x αυτού του αριθμού. Δεν χρειάζεται κανένα άλλο δεδομένο. Έτσι, στον ορισμό αυτής της συνάρτησης, δηλώνουμε μία παράμετρο την x, για να παρισ-

τάνει τη τιμή του αριθμού που το τετράγωνό του καλείται να υπολογίσει η συνάρτηση. Η παράμετρος x δηλώνεται να έχει το τύπο real. H τιμή της παραμέτρου x θα δίνεται από το κυρίως πρόγραμμα, κατά τη κλήση της συνάρτησης. Βήμα 2: Γράφουμε το πρόγραμμα / εντολές για να εκτελούν τον υπολογισμό που επιδιώκεται από μία συνάρτηση, όπως θα γράφαμε το κώδικα ενός οποιουδήποτε προγράμματος στη PASCAL. H συνάρτηση που χρειάζεται να γράψουμε σ αυτό το θέμα, πρέπει να υπολογίζει το τετράγωνο / να υψώνει στο τετράγωνο ένα αριθμό x που δίνεται σαν παράμετρος στη συνάρτηση. Πως θα υπολογίζει το τετράγωνο αυτού του αριθμού? Πολύ απλά πολλαπλασιάζοντάς τον με τον εαυτό του: function square (x : real) : real; begin square := x * x end; Βήμα 3 Ένα ακόμα χαρακτηριστικό μίας συνάρτησης: Όταν η συνάρτηση ολοκληρώσει τον υπολογισμό της, χρειάζεται να επιστρέψει το αποτέλεσμα αυτού του υ- πολογισμού στο κυρίως πρόγραμμα επικοινωνία ανάμεσα στη συνάρτηση και το κυρίως πρόγραμμα. Για παράδειγμα, η συνάρτηση square (x) υπολογίζει το τετράγωνο του αριθμού x, πολλαπλασιάζοντάς τον με τον εαυτό του. Έχοντας ολοκληρώσει τον υπολογισμός της, η συνάρτηση χρειάζεται να επιστρέψει / να επικοινωνήσει το αποτέλεσμα αυτού του υπολογισμού, πίσω στο κυρίως πρόγραμμα. Πως? Στη PASCAL, μία συνάρτηση επιστρέφει / στέλνει το αποτέλεσμα του υπολογισμού της στο κυρίως πρόγραμμα, με την τελευταία εντολή στο κώδικα της συνάρτησης που είναι η εκχώρηση αυτού του αποτελέσματος στο όνομα της συνάρτησης: square := x; Βήμα 4 Ενσωμάτωση της συνάρτησης στο κυρίως πρόγραμμα: Αφού γράψουμε το κώδικα μίας συνάρτησης, απομένει να ενσωματώσουμε αυτό το κώδικα, στο κώδικα του κυρίως προγράμματος. Για να περιλάβουμε το κώδικα μίας συνάρτησης, στο κυρίως πρόγραμμα: Προσθέτουμε το κώδικα (πρόγραμμα) της συνάρτησης, μετά τις δηλώσεις των μεταβλητών του κυρίως προγράμματος και πριν την αρχή του κυρίως προγράμματος. Εάν έχουμε γράψει περισσότερες από μία συναρτήσεις, προσθέτουμε το κώδικα (πρόγραμμα) κάθε μίας από αυτές, πριν την αρχή του κυρίως προγράμματος. Όλες οι συναρτήσεις πρέπει να είναι πριν το κυρίως πρόγραμμα, όμως η σειρά με την οποία γράφουμε / περιλαμβάνουμε τους κώδικες αυτών των συναρτήσεων, πριν το κυρίως πρόγραμμα, δεν έχει σημασία.

Εικόνα 1: H μορφή και η λειτουργία μίας συνάρτησης στη PASCAL.

Θέμα 2: Γράψτε μία συνάρτηση στη PASCAL που να υπολογίζει τη τετραγωνική ρίζα ενός αριθμού x, χρησιμοποιώντας τον αλγόριθμο Newton ΑΠΑΝΤΗΣΗ Έστω c η τετραγωνική ρίζα ενός αριθμού x. Τότε: c 2 = x, Άρα, x - c 2 = 0 Επομένως, για να βρούμε τη τετραγωνική ρίζα ενός αριθμού x, στη βάση του αλγόριθμού Newton, αρκεί να βρούμε τις ρίζες της εξίσωσης f(x) = x - c 2 = 0 Διαβάζουμε τον αριθμό x και ξεκινάμε με μία αρχική εκτίμηση, έστω: c := x; για τη τετραγωνική ρίζα του αριθμού x. Εάν x/c = c x = c 2, τότε η τετραγωνική ρίζα του αριθμού x είναι c. Διαφορετικά, παίρνουμε την επόμενη εκτίμηση c για τη τετραγωνική ρίζα του x, να είναι: c := (c + x/c) / 2.; Επαναλαμβάνουμε αυτή τη διαδικασία, μέχρι x/c = c ή πολύ κοντά με ε = 10-6

Θέμα 3: Γράψτε μία συνάρτηση στη PASCAL για να υπολογίζει το συνημίτονο μίας γωνίας θ. Το συνημίτονο μίας γωνίας θ, μπορεί να υπολογιστεί από την ακόλουθη σειρά: cosx = 1 - x 2 / 2! + x 4 / 4! - x 6 / 6! + Η συνάρτηση που θα γράψετε, θα πρέπει να υπολογίζει το συνημίτονο από τους πέντε πρώτους όρους της παραπάνω σειράς, Γράψτε μετά, ένα πρόγραμμα που να διαβάζει μία γωνία μία γωνία θ σε μοίρες, 0 θ 360. Το πρόγραμμα θα πρέπει να μετατρέπει αυτή τη γωνία σε ακτίνια και να υπολογίζει το συνημίτονο της γωνίας, καλώντας τη συνάρτηση που γράψατε, στη βάση της παραπάνω ακολουθίας.