IMPLICIT NONE INTEGER :: a, b, c

Σχετικά έγγραφα
Μορφοποίηση της εξόδου

Fortran και Αντικειμενοστραυής προγραμματισμός. 3ε ελόηεηα

ιαφάνειες παρουσίασης #3

ιαφάνειες παρουσίασης #3

Κεφάλαιο 5ο: Εντολές Επανάληψης

ιαφάνειες παρουσίασης #4

ιαφάνειες παρουσίασης #4

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

Εντολές Επανάληψης. Επικ. Καθ. Ν. Καραµπετάκης, Τµήµα. Τµήµα Μαθηµατικών, Α.Π.Θ.

Δομές ελέγχου. ομαδοποίηση εντολών εκτέλεση εντολών υπό συνθήκη επανάληψη εντολών

for for for for( . */

Εισαγωγή στον Προγραμματισμό Η/Υ (Fortran 90/95/2003)

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

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης

Πίνακες. (i) FORTRAN και Αντικειµενοστραφής Προγραµµατισµός

Εισαγωγή στην πληροφορική

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων

Δομή Επανάληψης. Κεφάλαιο 7 Mike Trimos

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

Κεφάλαιο : Επαναλήψεις (for, do-while)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ

ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2014

Ενότητα 1 Διάλεξη 3. Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού. Σιέττος Κωνσταντίνος

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων

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

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

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

Οι εντολές ελέγχου της ροής ενός προγράμματος.

ιαφάνειες παρουσίασης #5

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

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Μεταγλωττιστές Βελτιστοποίηση

ιαφάνειες παρουσίασης #2

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 3 η : Επίλυση Προβληµάτων Χειµερινό Εξάµηνο 2011

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

Κεφάλαιο : Επαναλήψεις (oι βρόγχοιfor, do-while) (Διάλεξη 10) Εντολές Επανάληψης που θα καλυφθούν σήμερα

Υπολογισμός - Εντολές Επανάληψης

ιαφάνειες παρουσίασης #7

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

Προγραμματισμός με FORTRAN Συνοπτικός Οδηγός Α. Σπυρόπουλος Α. Μπουντουβής

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C

Εισαγωγή στον Προγραμματισμό Η/Υ για Χημικούς Μηχανικούς

Κεφάλαιο 4ο: Εντολές επιλογής

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

4. Επιλογή και Επανάληψη

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Υπολογιστικά Συστήματα

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL

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

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Μεταγλωττιστές Βελτιστοποίηση

Νικόλαος Μιχαλοδημητράκης Σημειώσεις C (Εργαστήριο) 5 ο Μέρος 5 ο Μέρος Εντολές Επανάληψης: FOR - WHILE. Περιγραφή

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

Διάλεξη 5η: Εντολές Επανάληψης

Σειρά Προβλημάτων 5 Λύσεις

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Μονάδες 4. β. x=20 και y=10

ΚΕΦΑΛΑΙΟ 10 ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ (ή εντολές Ελέγχου και Επιλογής ή εντολές Επιλογής και Απόφασης)

Συνάρτηση Διαδικασία

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

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

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) a= b= c= 3 read(d,e)

Μονοδιάστατοι πίνακες

Ενότητα 1: «Εισαγωγή στην Αλγοριθμική και τον Προγραμματισμό. Απλές ασκήσεις με γλώσσα Pascal»

Εντολές Επανάληψης. int sum = 0, i=1; sum += i++ ; sum += i++ ; Η πράξη αυτή θα πρέπει να επαναληφθεί Ν φορές!

Ανάλυση της Ορθότητας Προγραμμάτων (HR Κεφάλαιο 4)

Αναδροµή (Recursion) ύο παρεξηγήσεις. Σκέψου Αναδροµικά. Τρίγωνο Sierpinski Μη αναδροµικός ορισµός;

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

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναδροµικές Συναρτήσεις Χειµερινό Εξάµηνο 2014

Λύσεις Σειράς Ασκήσεων 5

ΑΠΑΝΤΗΣΕΙΣ. H διαδικασία ανεύρεσης λογικών λαθών περιλαμβάνει : β- Σωστό. Διαπίστωση του είδους του λάθους γ- Σωστό δ- Λάθος

Fortran και Αντικειμενοστραφής προγραμματισμός.

Κεφάλαιο : Επαναλήψεις (oι βρόχος While) ( ιάλεξη 9) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Προγραµµατισµός στην Basic

Εισαγωγή στην πληροφορική

Pascal. 1 Γλώσσες προγραμματισμού. 21 Οκτωβρίου 2011

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017

ΕΠΑ.Λ ΧΡΥΣΟΥΠΟΛΗΣ Γ Πληροφορική Προγραµµατισµός Υπολογιστών Κεφάλαιο 9 Σηµειώσεις 03. Εντολή Εκχώρησης - Αντικατάστασης

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

Μαζέρας Αχιλλέας. Οι εντολές επανάληψης στην Pascal (While) Φυσικός Αυτοματιστής M.Sc. Νοέµβριος 2009

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13

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

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

Ακολουθιακές εντολές. (Peter Ashenden, The Students Guide to VHDL)

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

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης

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

Πίνακες. (i) FORTRAN και Αντικειµενοστραφής Προγραµµατισµός

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

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα

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

Fortran και Αντικειμενοστραφής προγραμματισμός.

Λύσεις Σειράς Ασκήσεων 5

8 FORTRAN 77/90/95/2003

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

Μέρος 2 Κατασκευή Συντακτικού Αναλυτή

Ανάλυση της Ορθότητας Προγραμμάτων

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου

Transcript:

Βρόχοι Επανάληψης (i) Εντολή DO DO Εντολή 1 Εντολή 2... Εντολή n υνητικά ατέρµονος βρόχος, απαραίτητη η χρήση EXIT 1

Εντολές ΕΧΙΤ και CYCLE Με την εντολή ΕΧΙΤδιακόπτεται η εκτέλεση του βρόχου και η εκτέλεση του προγράµµατος συνεχίζει µετά το τέλος του βρόχου. Με την εντολή CYCLE διακόπτεται η εκτέλεση της τρέχουσας επανάληψης και η εκτέλεση συνεχίζει µε την επόµενη επανάληψη. 2

Εύρεση ΜΚ µε βρόχο DO (i) PROGRAM GCD! Εύρεση ΜΚ δύο αριθµών IMPLICIT NONE INTEGER :: a, b, c WRITE(*,*) ' ώσε 2 θετικούς ακεραίους: ' READ(*,*) a, b IF (a < b) THEN c = a ELSE c = b END IF DO! οκιµές αριθµών c,c-1, έως ότου βρεθεί κοινός διαιρέτης IF ((MOD(a,c) == 0).AND. (MOD(b,c) == 0)) THEN EXIT ELSE c = c - 1 END IF WRITE(*,*) 'Ο ΜΚ είναι ο', c END PROGRAM GCD 3

Εύρεση ΜΚ µε βρόχο DO (ii) PROGRAM GCD! Εύρεση ΜΚ δύο αριθµών IMPLICIT NONE INTEGER :: a, b WRITE(*,*) ' ώσε 2 θετικούς ακεραίους: ' READ(*,*) a, b DO IF ((a == 0).OR. (b == 0)) EXIT IF (a > b) THEN a = a - b ELSE b = b - a END IF WRITE(*,*) 'Ο ΜΚ είναι ο', a+b END PROGRAM GCD 4

Εύρεση ΜΚ µε βρόχο DO (iii) PROGRAM GCD! Εύρεση ΜΚ δύο αριθµών IMPLICIT NONE INTEGER :: a, b, t WRITE(*,*) ' ώσε 2 θετικούς ακεραίους: ' READ(*,*) a, b IF (a < b) THEN! πρέπει a >= b οπότε αν δεν ισχύει t = a! οι τιµές τους ανταλλάσσονται a = b b = t END IF DO t = MOD(a, b) IF (t == 0) EXIT a = b b = t WRITE(*,*) 'Ο ΜΚ είναι ο', b END PROGRAM GCD! υπολογισµός του υπολοίπου t! αν t = 0 o MK είναι ο b! αλλιώς συνεχίζουµε για να βρούµε! τον ΜΚ των b και t 5

Εύρεση ΜΚ µε βρόχο DO (iv) PROGRAM GCD IMPLICIT NONE INTEGER :: a, b, t! Εύρεση ΜΚ δύο αριθµών WRITE(*,*) ' ώσε 2 θετικούς ακεραίους: ' READ(*,*) a, b! Απλοποίηση: δεν χρειάζεται να ελέγξουµε αν a < b DO t = MOD(a, b) IF (t == 0) EXIT a = b b = t WRITE(*,*) 'Ο ΜΚ είναι ο', b END PROGRAM GCD! υπολογισµός του υπολοίπου t! αν t = 0 o MK είναι ο b! αλλιώς συνεχ/µε για να βρούµε! τον ΜΚ των b και t 6

Εύρεση ΜΚ µε βρόχο DO (v) PROGRAM GCD! Εύρεση ΜΚ δύο αριθµών IMPLICIT NONE INTEGER :: a, b, t WRITE(*,*) ' ώσε 2 θετικούς ακεραίους: ' READ(*,*) a, b! οµηµένος προγραµµατισµός: ορθότερη χρήση του IF DO t = MOD(a, b)! υπολογισµός του υπολοίπου t IF (t == 0) THEN EXIT! αν t = 0 o MK είναι ο b ELSE a = b! αλλιώς συνεχίζουµε για να βρούµε b = t! τον ΜΚ των b και t ENDIF WRITE(*,*) 'Ο ΜΚ είναι ο', b END PROGRAM GCD 7

DO µε µεταβλητή ελέγχου (i) DO control variable = αρχή, τέλος, βήµα Εντολή 1 Εντολή 2... Εντολή n Παράδειγµα DO a=1,10,1 WRITE(*,*) a! Εκτελείται 10 φορές 8

Εντολή DO (ii) Παραδείγµατα DO i=10,1,-1 WRITE(*,*)i DO i=41,-3,-1 WRITE(*,*)i f=2 DO i=1,15 WRITE(*,*) f*i 9

Εντολή DO Παραδείγµατα (συνέχεια) DO i=1,5 DO j=1,10 WRITE(*, '(A1\)') '*' WRITE(*,*) (iii) ********** ********** ********** ********** ********** DO i=1,5 DΟ j=1,2*i WRITE(*, '(A1\)') '*' WRITE(*,*) ** **** ****** ******** ********** 10

Εντολή DO (iv) Ειδικές περιπτώσεις για τα όρια: DO i=10, 10... (* µία φορά *) DO i=12, 10... (* καµία φορά *) Η µεταβλητή ελέγχου δεν µπορεί να µεταβληθεί (π.χ. µε ανάθεση) µέσα στο σώµα του βρόχου Τα όρια υπολογίζονται µια φοράστην αρχή 11

Βρόχος DO WHILE (i) Επανάληψη βρόχου όσο ικανοποιείται µια συνθήκη DO WHILE (συνθήκη) Εντολή 1 Εντολή 2... Εντολή n Παραδείγµατα DO WHILE (x>15); k=k+2; DO WHILE (state.and. (x>15)) x=x-5; WRITE(*, *) 'a' 12

Εντολή DO WHILE (ii) Παραδείγµατα i=1 DO WHILE (i<15) WRITE(*, *) i; i=i+1 i=40 DO WHILE (i>2)!θα τερµατίσει ο βρόχος; WRITE(*,*) i; i=i+5 f=10; g=5 DO WHILE (g*f<200) WRITE(*, *) g*f; g=g+10 13

Εντολή DO WHILE (iii) Ο αριθµός επαναλήψεων γενικά δεν είναι γνωστός εκ των προτέρων Αν η συνθήκη είναι αρχικά ψευδής, ο βρόχος τερµατίζεται χωρίς να εκτελεστεί το σώµα. 14

Υπολογισµός του Παραγοντικού!Πρόγραµµα που υπολογίζει το παραγοντικό PROGRAM PARAGONTIKO IMPLICIT NONE INTEGER:: n, i, result result=1 WRITE(*,'(A)') "Give number" READ(*, *) n DO i=1,n result = result * i WRITE(*, *) result END 15

Υπολογισµός των αριθµών FIBONACCI! Πρόγραµµα που εκτυπώνει τους αριθµούς Fibonacci PROGRAM FIBONACCI IMPLICIT NONE INTEGER:: n, i, fib, fib_prev, fib_last fib_prev=0 fib_last=1 WRITE(*,'(A)')"Give number" READ(*, *) n WRITE(*,'(I5\)') fib_prev WRITE(*,'(I5\)') fib_last DO i=3,n fib = fib_prev + fib_last WRITE(*,'(I5\)') fib fib_prev = fib_last fib_last = fib END 16

Ύψωση σε ύναµη! Πρόγραµµα ύψωσης σε δύναµη PROGRAM POWER IMPLICIT NONE INTEGER:: a, b, i, p p=1 WRITE(*,'(A)') "Give the first number" READ(*,*) a WRITE(*,'(A)') "Give the second number" READ(*,*) b DO i=1,b p=p*a WRITE(*,*) p END 17

Υπολογισµός του ΜΚ PROGRAM MKD IMPLICIT NONE INTEGER:: a,b,i,j WRITE(*,'(a)') "Give number a" READ(*,*) a WRITE(*,'(a)') "Give number b" READ(*,*) b i=a; j=b DO WHILE ((i>0).and.(j>0)) IF (i>j) THEN i=mod(i,j) ELSE j=mod(j,i) END IF WRITE (*,'(I10)') i+j END 18