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

Σχετικά έγγραφα
Συναρτήσεις. Υποπρόγραμμα

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

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

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

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

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

1. Καταχωρεί σ ένα πίνακα ΠΟΛΕΙΣ[10] τις 10 πόλεις της Ελλάδας.

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

Προγραμματισμός Η/Υ. Συναρτήσεις & Υποπρογράμματα. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

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

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

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

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

1. Λογικά λάθη ονομάζονται αυτά που οφείλονται σε σφάλματα κατά την υλοποίηση του αλγόριθμου.

(Γραμμικές) Αναδρομικές Σχέσεις

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

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

(Γραμμικές) Αναδρομικές Σχέσεις

Προγραμματισμός ΙI (Θ)

Άθροισμα τριών ποσοτήτων (1/2)

(Γραμμικές) Αναδρομικές Σχέσεις

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

Προσεγγιστικοί Αλγόριθμοι

Προγραμματισμός Η/Υ. 6 η ενότητα: Συναρτήσεις. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

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

Παρουσίαση συλλογών υποπρογραμμάτων για γραμμική άλγεβρα: blas lapack

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

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

Ανάπτυξη και Σχεδίαση Λογισμικού

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

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

ΚΕΦΑΛΑΙΟ 5 ΓΕΝΝΗΤΡΙΕΣ ΣΥΝΑΡΤΗΣΕΙΣ

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

ΠΕΡΙΕΧΟΜΕΝΑ Τμηματικός προγραμματισμός Χαρακτηριστικά των υποπρογραμμάτων Πλεονεκτήματα του τμηματικού προγραμματισμού Παράμετροι Διαδικασίες και

Αριθµητική Ολοκλήρωση

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Δρ. Ιωάννης Λυχναρόπουλος Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

III. Πως μετατρέπεται το πηγαίο πρόγραμμα σε εκτελέσιμο πρόγραμμα;

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

Τυχαίοι αριθμοί struct Αρχεία Διαμορφώσεις Συναρτήσεις Χειρισμός σφαλμάτων ΠΕΜΠΤΗ ΔΙΑΛΕΞΗ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

ΦΡΟΝΤΙΣΤΗΡΙΟ ΦΑΣΜΑ 21/4/2013

ΚΣΕ ΣΟΥΦΛΙΟΥ. Συνεδρία 7

ΦΡΟΝΤΙΣΤΗΡΙΑ ΠΡΟΟΔΟΣ

ΚΕΦΑΛΑΙΟ 3 ΤΟ ΔΙΩΝΥΜΙΚΟ ΘΕΩΡΗΜΑ

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Λύσεις Θεμάτων Εξετάσεων Ενιαίου Λυκείου 2004

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Εξετάσεις Προσομοίωσης 10/04/2018

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

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

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ' ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΥΠΗΡΕΣΙΩΝ 2005

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

Fast Fourier Transform

Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο.

Β. Να γράψετε στο τετράδιό σας τους αριθμούς της Στήλης Α, που αντιστοιχούν σωστά με το γράμμα της Στήλης Β. ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΤΑΞΗ

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

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή

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

Κεφάλαιο 10ο. ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ιαδικασίες - Συναρτήσεις

<<ΔΗΜΗΤΡΗΣ ΜΑΝΩΛΗΣ ΦΥΣΙΚΟΣ ΜCs>> 1

Γ.Κονδύλη 1 & Όθωνος-Μαρούσι Τηλ. Κέντρο: ,

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον. τελική επανάληψη /4/2015 1

Θέματα Προγραμματισμού Η/Υ

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

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Θέματα ΑΕΠΠ Πανελλήνιες Εξετάσεις 2007

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

Ασκήσεις στα υποπρογράμματα

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

Στοιχεία Αλγορίθµων και Πολυπλοκότητας

Επαναληπτική δοκιμασία στην Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Απρίλης 2015

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΑΠΡΙΛΙΟΣ 2019 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ)

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

Προσεγγιστικοί Αλγόριθμοι

Προγραμματισμός ΙI (Θ)

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Εξετάσεις Προσομοίωσης 24/04/2019


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

4.3 Ορθότητα και Πληρότητα

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Κεφάλαιο 10. Ερωτήσεις ανάπτυξης

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

Γ.Κονδύλη 1 & Όθωνος-Μαρούσι Τηλ. Κέντρο: ,

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

Γραμμικός Προγραμματισμός

Πληροφορική 2. Αλγόριθμοι

Εισαγωγή στην επιστήμη των υπολογιστών. Λογισμικό Υπολογιστών Κεφάλαιο 8ο Αλγόριθμοι

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ Α.Ε.Π.Π. ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Γ ΛΥΚΕΙΟΥ Θέματα και Απαντήσεις

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 2)

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΥ

Θέμα Α Α1. Γράψτε την λογική έκφραση Χ < > 0 ισοδύναμα με τη χρήση λογικών τελεστών Μονάδες 7

Απλοποιεί τα γεγονότα έτσι ώστε να περιγράφει τι έχει γίνει και όχι πως έχει γίνει.

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο

Transcript:

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

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

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

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

Παράδειγμα: παραγοντικό Δύο ισοδύναμοι ορισμοί για το παραγοντικό ακέραιου μη αρνητικού αριθμού: Μη αναδρομικός n! = { 1 2 (n 1) n, n > 0, 1, n = 0 Aναδρομικός n! = { (n 1)! n, n > 0, 1, n = 0

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

Αναδρομική συνάρτηση παραγοντικού Όχι απόλυτα σωστός κώδικας Στις εντολές γράφουμε ακριβώς ό,τι μας λέει ο μαθηματικός ορισμός: Ο παραπάνω κώδικας δεν είναι ΑΠΟΛΥΤΑ ΣΩΣΤΟΣ Χρειάζεται τροποποίηση Ας δούμε πρώτα πώς λειτουργεί

Αναδρομική συνάρτηση παραγοντικού (2/2) Πώς λειτουργεί Αν γράψουμε ο compiler εκτελεί την par με

Αναδρομική συνάρτηση παραγοντικού (2/2) Πώς λειτουργεί Αν γράψουμε ο compiler εκτελεί την par με Το αποτέλεσμα της είναι Δεν μπορεί να το επιστρέψει: καλείται μια συνάρτηση (η par για )

Αναδρομική συνάρτηση παραγοντικού (2/2) Πώς λειτουργεί Αν γράψουμε ο compiler εκτελεί την par με Το αποτέλεσμα της είναι Δεν μπορεί να το επιστρέψει: καλείται μια συνάρτηση (η par για ) Το αποτέλεσμα της είναι Δεν μπορεί να το επιστρέψει: καλείται μια συνάρτηση (η par για )

Αναδρομική συνάρτηση παραγοντικού (2/2) Πώς λειτουργεί Αν γράψουμε ο compiler εκτελεί την par με Το αποτέλεσμα της είναι Δεν μπορεί να το επιστρέψει: καλείται μια συνάρτηση (η par για ) Το αποτέλεσμα της είναι Δεν μπορεί να το επιστρέψει: καλείται μια συνάρτηση (η par για ) Το αποτέλεσμα της είναι Αυτό επιστρέφεται

Αναδρομική συνάρτηση παραγοντικού (2/2) Πώς λειτουργεί Αν γράψουμε ο compiler εκτελεί την par με Άρα Το αποτέλεσμα της είναι Δεν μπορεί να το επιστρέψει: καλείται μια συνάρτηση (η par για ) Το αποτέλεσμα της είναι Δεν μπορεί να το επιστρέψει: καλείται μια συνάρτηση (η par για ) Το αποτέλεσμα της είναι Αυτό επιστρέφεται par(2) par(1)*2 (par(0)*1)*2 (1*1)*2 = 2!

Γενικός ορισμός αναδρομικής συνάρτησης Στον ορισμό (και τη δήλωση) της συνάρτησης πρέπει δηλώσουμε ότι είναι αναδρομική και να διαχωρίσουμε το όνομα με το οποίο γίνεται η κλήση της συνάρτησης από τη μεταβλητή του ονόματος της συνάρτησης: όνομα(παράμετροςα, παράμετροςβ, ) & (όνομα2) τύπος_παραμέτρου_α, (xxx) :: παράμετροςα τύπος_παραμέτρου_β, (yyy) :: παράμετροςβ τύπος_επιστρεφόμενης_ποσότητας :: όνομα2 τύπος_α :: τοπική_μεταβλητή_α, τύπος_β :: τοπική_μεταβλητή_β,! κώδικας όνομα2 = όνομα

Αναδρομική συνάρτηση παραγοντικού Τροποποίηση του ορισμού Ο παραπάνω κώδικας είναι ΣΩΣΤΟΣ

Γενικός ορισμός αναδρομικής υπορουτίνας Σε υπορουτίνα που καλεί τον εαυτό της χρειάζεται μόνο η προσθήκη της λέξης πριν το : όνομα(παράμετροςα, παράμετροςβ, ) τύπος_παραμέτρου_α, (xxx) :: παράμετροςα τύπος_παραμέτρου_β, (yyy) :: παράμετροςβ τύπος_α :: τοπική_μεταβλητή_α, τύπος_β :: τοπική_μεταβλητή_β,! κώδικας όνομα

Παράδειγμα: πολυώνυμα Hermite (1/2) Στη Μαθηματική Φυσική χρησιμοποιείται η οικογένεια πολυωνύμων Hermite: H 0 (x) = 1, H 1 (x) = 2x, H 2 (x) = 4x 2 2, H 3 (x) = 8x 3 12x, H 4 (x) = 16x 4 48x 2 + 12, Τα πολυώνυμα H n (x) ικανοποιούν την αναδρομική σχέση: H n (x) = 2xH n 1 (x) 2(n 1)H n 2 (x), n 2

Παράδειγμα: πολυώνυμα Hermite (2/2) Αναδρομική συνάρτηση που υπολογίζει τα H n (x):

Υποπρογράμματα κατά στοιχείο (ELEMENTAL) Στις ενσωματωμένες συναρτήσεις το όρισμα μπορεί να είναι μία τιμή αλλά επιτρέπεται να είναι και διάνυσμα: Επιθυμούμε το ίδιο να μπορεί να γίνει και σε δικά μας υποπρογράμματα που δέχονται απλές μεταβλητές Γι αυτό συμπληρώνουμε τη δήλωση με το πριν τη λέξη ή

Παράδειγμα υπορουτίνας ELEMENTAL (1/2) Ορισμός

Παράδειγμα υπορουτίνας ELEMENTAL (2/2) Δήλωση και κλήση

Υπορουτίνα παραγωγής τυχαίων αριθμών (1/2) Η υπορουτίνα δέχεται μια πραγματική μεταβλητή Κάθε φορά που καλείται αποδίδει στο όρισμα τυχαία τιμή στο διάστημα [0, 1) Η υπορουτίνα είναι άρα δέχεται και διάνυσμα πραγματικών στους οποίους αποδίδει τυχαίες τιμές

Υπορουτίνα παραγωγής τυχαίων αριθμών (1/2) Η υπορουτίνα δέχεται μια πραγματική μεταβλητή Κάθε φορά που καλείται αποδίδει στο όρισμα τυχαία τιμή στο διάστημα [0, 1) Η υπορουτίνα είναι άρα δέχεται και διάνυσμα πραγματικών στους οποίους αποδίδει τυχαίες τιμές Παράδειγμα

Υπορουτίνα παραγωγής τυχαίων αριθμών (2/2) Αλλαγή διαστήματος Αν r είναι τυχαίος πραγματικός αριθμός στο [0, 1), τότε κάνουμε τη μετατροπή x = κr + λ και επιλέγουμε τους συντελεστές κ, λ ώστε η ποσότητα x να βρίσκεται εντός των επιθυμητών ορίων Εύκολα επαληθεύεται ότι ο x = (b a)r + a ικανοποιεί τις σχέσεις a x < b, άρα ο x είναι τυχαίος πραγματικός στο διάστημα [a, b)