Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου"— Μεταγράφημα παρουσίασης:

1 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) http://www.corelab.ece.ntua.gr/courses/programming/ 1Νίκος ΠαπασπύρουΕισαγωγή στον Προγραμματισμό Διαφάνειες παρουσίασης #5 Παρουσίαση και συντήρηση (επανάληψη) Είσοδος και έξοδος Αρχεία κειμένου Ορθότητα

2 2Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Παρουσίαση και συντήρηση(i) u Ποιοτικά χαρακτηριστικά προγραμμάτων l Αναγνωσιμότητα απλότητα κατάλληλη επιλογή ονομάτων, π.χ. monthly_income incomeBeforeTaxes στοίχιση σχόλια l Φιλικότητα προς το χρήστη l Τεκμηρίωση l Συντήρηση l Ενημέρωση

3 3Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Παρουσίαση και συντήρηση(ii) u Στοίχιση l Πρόγραμμα και υποπρογράμματα program... procedure... function... δηλώσεις δηλώσεις δηλώσεις beginbeginbegin εντολές εντολές εντολές end.endend l Απλές εντολές if... thenwhile... dofor... do εντολή εντολή εντολή else εντολή

4 4Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Παρουσίαση και συντήρηση(iii) u Στοίχιση (συνέχεια) l Σύνθετες εντολές if... thenwhile... dofor... do beginbeginbegin εντολές εντολές εντολές endendend else begin εντολές end

5 5Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Παρουσίαση και συντήρηση(iv) u Στοίχιση (συνέχεια) l Σύνθετες εντολές (συνέχεια) repeatcase... ofwith... do εντολές τιμή 1 : εντολή 1 ; begin until... τιμή 2 : εντολή 2 ; εντολές... end τιμή n : εντολή n end

6 6Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Είσοδος και έξοδος u Συσκευές εισόδου/εξόδου u Είσοδος: εισαγωγή δεδομένων l π.χ. από το πληκτρολόγιο u Έξοδος: παρουσίαση αποτελεσμάτων l π.χ. στην οθόνη u Προκαθορισμένες διαδικασίες της Pascal read, readln write, writeln

7 7Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Έξοδος(i) u Έξοδος με μορφοποίηση

8 8Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Έξοδος(ii) u Έξοδος με μορφοποίηση (συνέχεια)

9 9Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Έξοδος(iii) u Συμβολοσειρές, χωρίς μορφοποίηση program stars(input, output); var i, j : integer; begin for i := 0 to 5 do begin for j := 1 to 2*i do write('*'); writeln('$') end end. $ **$ ****$ ******$ ********$ **********$

10 10Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Έξοδος(iv) u Ακέραιες τιμές, χωρίς μορφοποίηση program example(input, output); var x, y, sum : integer; begin x := 3; y := 6; sum := x + y; writeln(x, '+', y, '=', sum) end. 3+ 6= 9 3 6+

11 11Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Έξοδος(v) u Ακέραιες τιμές, χωρίς μορφοποίηση program indent(input, output); begin writeln('x =', 42); writeln('y =', -324); writeln('z =', 123837) end. x = 42 y = -324 z = 123837

12 12Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Έξοδος(vi) u Ακέραιες τιμές, με μορφοποίηση writeln(42:4) 3+6=9 42 u Το προηγούμενο παράδειγμα program example(input, output); var x, y, sum : integer; begin x := 3; y := 6; sum := x + y; writeln(x:0, '+', y:0, '=', sum:0) end.

13 13Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Έξοδος(vii) u Πραγματικές τιμές, με μορφοποίηση writeln(3.14159:8:4) Paris 20.5 ---------------- Moscow -4.3 1416 3. u Παράδειγμα program temperatures(input,output); var i : integer; par, mos : real; begin par := 20.5; mos := -4.3; writeln('Paris':10, par:6:1); for i:=1 to 14 do write('-'); writeln; writeln('Moscow':10, mos:6:1) end.

14 14Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Είσοδος(i) u Συντακτικό διάγραμμα

15 15Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Είσοδος(ii) u Αποθηκευτικός χώρος (buffer) l παρεμβάλλεται μεταξύ του πληκτρολογίου και του προγράμματος l εκεί αποθηκεύονται προσωρινά τα δεδομένα που πληκτρολογεί ο χρήστης μέχρι να διαβαστούν από το πρόγραμμα l η εισαγωγή στο buffer γίνεται με το πάτημα του πλήκτρου enter l αρχικά ο buffer είναι κενός u Παραδείγματα

16 16Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Είσοδος(iii) u Παράδειγμα program example5(input,output); var x, y, sum : integer; begin writeln('Θα προσθέσω δύο ακεραίους'); write('Δώσε το x και : '); read(x); write('Δώσε το y και : '); read(y); sum := x + y; writeln(x:0, '+', y:0, '=', sum:0) end.

17 17Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Είσοδος(iv) u Πρώτη εκτέλεση παραδείγματος Θα προσθέσω δύο ακεραίους Δώσε το x και : 3 Δώσε το y και : 6 3+6=9 u Δεύτερη εκτέλεση παραδείγματος Θα προσθέσω δύο ακεραίους Δώσε το x και : 3 6 Δώσε το y και : 3+6=9

18 18Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Αρχεία κειμένου(i) u Αρχεία εισόδου και εξόδου u Παράδειγμα με αρχείο εισόδου program test1(input, output, F); var f : text; begin reset(f);... read(f,...);... close(f) end.

19 19Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Αρχεία κειμένου(ii) u Παράδειγμα με αρχείο εξόδου program test2(input, output, G); var g : text; begin rewrite(g);... write(g,...);... close(g) end.

20 20Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Ορθότητα(i) u Είδη ορθότητας l Συντακτική l Νοηματική l Σημασιολογική u Σημασιολογική ορθότητα ελέγχεται: l με δοκιμές (testing) l με μαθηματική επαλήθευση

21 21Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Ορθότητα(ii) u Παράδειγμα: εύρεση γινομένου function mult(x,y : integer) : integer; var i,z : integer; begin z := 0; for i := 1 to x do z := z+y; mult := z end u Ισχυρισμός: l Η συνάρτηση υπολογίζει το γινόμενο δυο φυσικών αριθμών x και y

22 22Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Ορθότητα(iii) u Εντοπισμός σημείων όπου θα γραφούν βεβαιώσεις function mult(x,y : integer) : integer; var i,z : integer; begin (* 1 *) z := 0; (* 2 *) for i := 1 to x do (* 3 *) z := z+y (* 4 *) ; (* 5 *) mult := z end u Καταγραφή όλων των δυνατών τρόπων ροής ελέγχου 1 2 3 4 5

23 23Νίκος Παπασπύρου Εισαγωγή στον Προγραμματισμό Ορθότητα(iv) u Βεβαιώσεις (* 1 – Βεβαίωση εισόδου: x  0, y  0 *) z := 0; (* 2 : x  0, y  0, z = 0 *) for i:=1 to x do (* 3 – Αναλλοίωτη βρόχου: x  0, y  0, i  x, z = y * (i-1) *) z := z+y (* 4 : x  0, y  0, z = y * i *) ; (* 5 – Βεβαίωση εξόδου: x  0, y  0, z = y * x *) mult := z u Επαλήθευση: για κάθε δυνατό τρόπο ροής 1  2, 2  3, 2  5, 3  4, 4  3, 4  5 1 2 3 4 5


Κατέβασμα ppt "ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google