ΑΛΓΟΡΙΘΜΟΙ ΜΕ C. ΝΙΚΟΛΑΟΣ ΣΑΜΑΡΑΣ Αναπληρωτής Καθηγητής. CMOR Lab. Computational Methodologies and Operations Research

Σχετικά έγγραφα
ΑΛΓΟΡΙΘΜΟΙ ΜΕ C. ΝΙΚΟΛΑΟΣ ΣΑΜΑΡΑΣ Αναπληρωτής Καθηγητής. CMOR Lab. Computational Methodologies and Operations Research

Είδη εντολών. Απλές εντολές. Εντολές ελέγχου. Εκτελούν κάποια ενέργεια. Ορίζουν τον τρόπο με τον οποίο εκτελούνται άλλες εντολές

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

Η Δομή Επανάληψης. Εισαγωγή στην δομή επανάληψης Χρονική διάρκεια: 3 διδακτικές ώρες

Γ τάξη Τεχνολογικής Κατεύθυνσης Ενιαίου Λυκείου ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. ΔΟΜΗ ΕΠΙΛΟΓΗΣ Διδάσκων: ΔΟΥΡΒΑΣ ΙΩΑΝΝΗΣ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ομή Επανάληψης

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με:

Βασικές Έννοιες Αλγορίθμων. Βασικές Εντολές Αλγορίθμων (Κεφ. 2ο Παρ. 2.4)

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός

ΑΛΓΟΡΙΘΜΟΙ ΜΕ C. ΝΙΚΟΛΑΟΣ ΣΑΜΑΡΑΣ Αναπληρωτής Καθηγητής. CMOR Lab. Computational Methodologies and Operations Research

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΟΜΑΘΕΙΑ

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ;

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

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:


ΑΛΓΟΡΙΘΜΟΙ ΜΕ C. ΝΙΚΟΛΑΟΣ ΣΑΜΑΡΑΣ Αναπληρωτής Καθηγητής. CMOR Lab. Computational Methodologies and Operations Research

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

5.1. Προσδοκώμενα αποτελέσματα

Επαναληπτικές Διαδικασίες

Εισαγωγή στη γλώσσα προγραμματισμού C++

Κεφάλαιο 4: Συνθήκες Έλεγχου (if-else, switch) και Λογικοί τελεστές / παραστάσεις. (Διάλεξη 8)

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

Παρατηρήσεις για την δομή Όσο..επανάλαβε( ΣΟΣ)

Επαναληπτικές δοµές. µτ α.τ. Όχι. ! απαγορεύεται µέσα σε µία ΓΙΑ να µεταβάλλουµε τον µετρητή! διότι δεν θα ξέρουµε µετά πόσες επαναλήψεις θα γίνουν

Μονάδες 12 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

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

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον 2o Επαναληπτικό Διαγώνισμα Κεφ: 2 ο 7 ο 8 ο ΗΜΕΡΟΜΗΝΙΑ 21/ 10/ 2017

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

Κεφαλαιο 2.2 ΑΝΑΚΕΦΑΛΑΙΩΤΙΚΕΣ ΑΛΓΟΡΙΘΜΟΙ

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

8.4. Δραστηριότητες - ασκήσεις

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

Εισαγωγή στις Αρχές της επιστήμης των ΗΥ

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

9. OIΚΟΥΜΕΝΙΚΕΣ ΠΥΛΕΣ ΠΟΛΛΑΠΛΩΝ ΕΙΣΟ ΩΝ

Δυαδικές συναρτήσεις Άλγεβρα Boole Λογικά διαγράμματα

Υπολογιστικά & Διακριτά Μαθηματικά

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

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

Programming Basics. ACM Student Chapter Auth

Η γλώσσα προγραμματισμού Strange

Στόχοι και αντικείμενο ενότητας. Βασικές κατασκευές ΓΠ. Έλεγχος ροής προγράμματος. #4.. Εντολές Επιλογής

Ερωτήσεις Ασκήσεις Επανάληψης για τις Διακοπές των Χριστουγέννων

Αρχές Προγραμματισμού Η/Υ Μέθοδοι παρουσίασης του αλγόριθμου και Βασικές έννοιες

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

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

Φυσικές και τεχνητές γλώσσες. Το αλφάβητο της ΓΛΩΣΣΑΣ, Τύποι Δεδομένων. Σταθερές, Μεταβλητές, Τελεστές, Συναρτήσεις, Δομή Προγράμματος

Ψευδοκώδικας. November 7, 2011

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

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

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

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος

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

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

7.1 Αλφάβητο. 7.2 Τύποι δεδομένων. 7.3 Σταθερές. 7.4 Μεταβλητές. 7.5 Αριθμητικοί τελεστές. 7.6 Συναρτήσεις. 7.7 Αριθμητικές εκφράσεις. 7.

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

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

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3)

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

Επαναληπτική δοκιμασία στην Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τεχνολογικής Κατεύθυνσης Μάιος 2013

Γ2.1 Στοιχεία Αρχιτεκτονικής. Γ Λυκείου Κατεύθυνσης

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

ΜΕΡΟΣ 1 ο : Δυαδικές συναρτήσεις Άλγεβρα Boole Λογικά διαγράμματα

Β7.1.4 Δομές Επανάληψης. Β Λυκείου Κατεύθυνσης

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

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

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ ΚΕΦΑΛΑΙΟ 2 ο ΚΕΦΑΛΑΙΟ 7 ο ΕΡΩΤΗΣΕΙΣ ΓΕΝΙΚΑ ΠΕΡΙ ΑΛΓΟΡΙΘΜΩΝ

Τρίτη, 1 Ιουνίου 2004 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ

ΘΕΜΑ 1 ο. Στήλη Β Προτάσεις. β. Ο βρόχος επανάληψης τερµατίζεται, όταν η συνθήκη είναι αληθής. όταν η συνθήκη είναι ψευδής.

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

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

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

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

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

Εισαγωγή στην Αριθμητική Ανάλυση

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

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

Παραδείγματα (1 ο σετ) Διανυσματικοί Χώροι

Γ ΤΑΞΗ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ÑÏÌÂÏÓ

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

1. Τι είναι αλγόριθμος; Καταγράψτε ή συζητήστε με τους συμμαθητές σας έναν αλγόριθμο.

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο

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

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

9. Συστολικές Συστοιχίες Επεξεργαστών

Προγραμματισμός Η/Υ. Ενότητα 4: Εντολές Επιλογής

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα.

Πληροφορική ΙΙ. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

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

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ

Μάριος Αγγελίδης

Κεφάλαιο 8. Αριθμητική Λογική μονάδα

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο

Transcript:

ΑΛΓΟΡΙΘΜΟΙ ΜΕ C ΝΙΚΟΛΑΟΣ ΣΑΜΑΡΑΣ Αναπληρωτής Καθηγητής CMOR Lab Computational Methodologies and Operations Research

Περιγραφή Αλγορίθμων Χρήση Ψευδοκώδικα Γενική μορφή ψευδοκώδικα Αλγόριθμος : όνομα αλγορίθμου Δεδομένα : ονόματα μεταβλητών Αποτελέσματα : ονόματα μεταβλητών 1 εντολή_1... n εντολή_... εντολή_n

Τελεστές & Συνθήκες (1) Οι εντολές ψευδοκώδικα περιέχουν Μαθηματικές παραστάσεις Συνθήκες Σχεσιακούς τελεστές < > π.χ. (x y) (z<y) Λογικοί τελεστές: και ή ή όχι π.χ. (x y) και (y<z) (x y) ή (y<z) π.χ. (x y) ή (y<z) 3

Τελεστές & Συνθήκες () Πίνακας τιμών λογικών πράξεων ή Πίνακας Αληθείας p q p και q p ή q p ή q όχι(p) Α Α Α Α Ψ Ψ Α Ψ Ψ Α Α Ψ Ψ Α Ψ Α Α Α Ψ Ψ Ψ Ψ Ψ Α 4

Τελεστές & Συνθήκες (3) ΠΑΡΑΔΕΙΓΜΑ. F (A AND (NOT B)) OR ((NOT A) AND B AND C) A B C A B K AB L A BC F K+L 0 0 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0 0 0 1 1 1 0 0 1 1 1 0 0 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 5

Οι εντολές του ψευδοκώδικα (1) Απλή εντολή καταχώρησης όνομα_μεταβλητής μαθηματική έκφραση z z+x+5+y Σύνθετη εντολή καταχώρησης όνομα_μεταβλητής Συστοιχία ή Πίνακας ή παραστάσεις πινάκων z [ 10 3 8-4 -8] 6

Οι εντολές του ψευδοκώδικα () Κλήση αλγορίθμων : Στην εντολή καταχώρησης μπορούμε να χρησιμοποιούμε αλγορίθμους [a 1 a... a m ] αλγ(x 1 x... x n ) Μεταβλητές εξόδου Όνομα αλγορίθμου Μεταβλητές εισόδου Μερικές από τις μεταβλητές εξόδου και μερικές από τις μεταβλητές εισόδου μπορεί να παραλείπονται α αλγ(x 1 x... x n ) 7

Οι εντολές του ψευδοκώδικα (3) Μερικοί χρήσιμοι αλγόριθμοι συναρτήσεις [x y] swap(x y) ή [x y] εναλλαγή(x y) temp x x y y temp x div(ab) (άγνωστος προς το παρόν ψευδοκώδικας) x mod(ab) (άγνωστος προς το παρόν ψευδοκώδικας 8

Οι εντολές του ψευδοκώδικα (4) Προσοχή!!! Στις εσοχές: Δηλώνουν πότε τελειώνει μια και πότε αρχίζει άλλη εντολή Στις δεσμευμένες λέξεις : γράφονται bold Η εντολή επιλογής αν...αλλιώς_αν... αν συνθήκη_1 εντολές_1 αλλιώς_αν συνθήκη_ εντολές_ αλλιώς εντολές_ν Προαιρετικά τμήματα 9

Οι εντολές του ψευδοκώδικα (5) Αλγόριθμος: AbsoluteValue1 Δεδομένα: x Αποτελέσματα: a 1 3 4 αν x 0 a x αλλιώς a - x Αλγόριθμος: AbsoluteValue Δεδομένα: x Αποτελέσματα: a 1 3 a x αν x < 0 a - x 10

Οι εντολές του ψευδοκώδικα (6) Παράδειγμα. Γνωρίζοντας ότι οι 4 πρώτοι αριθμοί 0 1 3 στο δυαδικό σύστημα αρίθμησης είναι 00 01 10 11 να γραφεί αλγόριθμος υπολογισμού αθροίσματος 3 δυφίων (ψηφία του δυαδικού συστήματος αρίθμησης). Λύση. Έστω x y z τα 3 δυφία. Επειδή το άθροισμά τους είναι ένας από τους αριθμούς 00 01 10 11 του δυαδικού συστήματος θα γράψουμε το αποτέλεσμα στο στοιχείων διάνυσμα s. Δηλ ο s έχει διάσταση 1x. Κάθε δυφίο παίρνει τιμές 1 ή 0. Άρα 8 περιπτώσεις 11

Οι εντολές του ψευδοκώδικα (7) χ y z 0 0 0 0 0 1 Οι 8 περιπτώσεις. Ομαδοποίηση σε 3 περιπτώσεις Περίπτωση 1 0 1 0 0 1 1 1 0 0 Περίπτωση 1 0 1 1 1 0 1 1 1 Περίπτωση 3 1

Οι εντολές του ψευδοκώδικα (8) Διάνυσμα στοιχείων Οι 8 περιπτώσεις ανάγονται σε 3: x0 και y0 x1 ή y1 x1 και y1 και σε κάθε μια εξετάζουμε αν z0 ή z1 Αλγόριθμος : add3bits Δεδομένα : x y z Αποτελέσματα : s 1 3 4 5 6 7 8 9 αν x 0 και y 0 s [0 0] αν z 1 s() 1 αλλιώς_αν x 1 ή y 1 s [0 1] αν z 1 s [1 0] αλλιώς s [1 0] αν z 1 s() 1 13

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

Quiz-[3] Ανίχνευση ψεύτικου νομίσματος Υπάρχουν 8 εμφανισιακά ίδια νομίσματα π.χ. του ενός ευρώ. Ένα από αυτά είναι πλαστό και είναι γνωστό ότι είναι ελαφρύτερο από τα υπόλοιπα γνήσια νομίσματα. Ποιος είναι ο ελάχιστος αριθμός ζυγισμάτων που απαιτούνται για την ανίχνευση του πλαστού νομίσματος έχοντας στη διάθεσή σας μια κλασσική ζυγαριά και κανένα ζύγι. 15

Οι εντολές του ψευδοκώδικα (9) Bρόχος για...από...μέχρι... για μεταβλητή από αρχική_τιμή μέχρι τελική_τιμή με βήμα β εντολές Παράδειγμα. Υπολογισμός αθροίσματος 1++3+4+5 s 0 για x από 1 μέχρι 5 s s+x Επαναλήψεις x s Αρχή - 0 1 1 1 3 3 3 6 4 4 10 5 5 15 16

17 Οι εντολές του ψευδοκώδικα (10) Φωλιασμένοι βρόχοι Παράδειγμα. Να υπολογιστεί το άθροισμα των στοιχείων της μήτρας 6 3 1 4 A s 0 για i από 1 μέχρι 3 για j από 1 μέχρι s s + A(i j) 8 A(3) s j A(31) 5 s 1 j 3 i 5 A() 4 s j 4 A(1) 6 s 1 j i 6 A(1) s j A(11) 0 s 1 j 1 i 0 s + + + + + +

Οι εντολές του ψευδοκώδικα (11) Το πλήθος των επαναλήψεων που εκτελεί ένας βρόχος μετρητή όταν είναι βήμα>0 : τελική τιμή-αρχική τιμή+βήμα βήμα ΓΙΑ i 1 100 4. ΤΕΛΟΣ ΓΙΑ; 100 1+ 4 4 103 4 5 18

Οι εντολές του ψευδοκώδικα (1) Το πλήθος των επαναλήψεων που εκτελεί ένας βρόχος μετρητή όταν είναι βήμα<0 : αρχική τιμή-τελική τιμή-βήμα -βήμα ΓΙΑ i 100 1-4. ΤΕΛΟΣ ΓΙΑ; 100 1+ 4 103 4 4 5 19

Οι εντολές του ψευδοκώδικα (13) Παράδειγμα. Υπολογισμός όρων ακολουθίας Fibonacci f(n) f(n 1) + f(n ) n f(0) 0 f(1) 1 n 0 1 3 4 5 6 7 8 f(n) 0 1 1 3 5 8 13 1 0

Οι εντολές του ψευδοκώδικα (14) Λύση. Αλγόριθμος : fib1 Δεδομένα : n Αποτελέσματα : f 1 3 4 5 f 0 i 1 για k από 1 μέχρι n f f+i i f-i Υλοποίηση για n 5 k f i - 0 1 1 1 0 1 1 3 1 4 3 5 5 3 1

Οι εντολές του ψευδοκώδικα (15) Παράδειγμα. Να γραφεί αλγόριθμος ο οποίος να υπολογίζει το ελάχιστο (min) στοιχείο ενός διανύσματος Τ n στοιχείων καθώς και τη θέση του (index). Αλγόριθμος: min1 Δεδομένα: T n Αποτελέσματα: min index 1 3 4 5 6 Λύση min Τ(1) index 1 για i από μέχρι n αν Τ(i) < min min T(i) index i