ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ -150 Προγραμματισμός Εντολές Ελέγχου Ροής.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Προγραμματισμός Ι (αποφύγετέ τον!) 3) Διακοπτόμενος βρόχος: (αποφύγετέ τον!) float energy;......while(TRUE){drink_water(); if(energy
Advertisements

Προγραμματισμός Ι Προτάσεις ελέγχου ροής Ο πιο συνηθισμένος τρόπος εκτέλεσης είναι ο ακολουθιακός: δύο ή περισσότερες προτάσεις βρίσκονται διατεταγμένες.
Στατική Συμβολική Παραγώγιση Λάμδα Εκφράσεων στην C++
ΜΑΘΗΜΑ: ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C++ ΔΙΔΑΣΚΩΝ: Π. ΚΑΤΣΑΡΟΣ Δευτέρα, 30 Ιουνίου 2014Δευτέρα, 30 Ιουνίου 2014Δευτέρα, 30 Ιουνίου 2014Δευτέρα, 30 Ιουνίου 2014Τμ.
Πολυδιάστατοι Πίνακες, Δομές, Ενώσεις
Αναδρομη και static Γραψετε την συναρτηση sequence_size που διαβαζει μια απροσδιοριστου μεγεθους σειρας και υπολογιζει και τυπωνει το μεγεθος της. int.
Προγραμματισμός Ι Παράδειγμα: Παράδειγμα: Να γραφεί πρόγραμμα που επιλύει δευτεροβάθμιες εξισώσεις. Να δέχεται ως είσοδο τους συντελεστές της εξίσωσης.
ΜΑΘ-3122/106 Προγραμματισμός
Εντολες Επιλογης (Selection)
ΜΑΘ-3122/106 Γλώσσα προγραμματισμού Ξενοφών Ζαμπούλης ΗΥ-150 Προγραμματισμός Ταξινόμηση και Αναζήτηση.
Συναρτήσεις Κληση/Επιστροφη Παραμετροι
ΜΑΘ-3122/106 Γλώσσα Προγραμματισμού
ΗΥ-150 Προγραμματισμός Εντολές Ελέγχου Ροής.
Αρχές Προγραμματισμού (C). ...γράφοντας σωστά προγράμματα! (IIΙ)
ΗΥ150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ-150 Προγραμματισμός Ταξινόμηση και Αναζήτηση.
ΗΥ 150 – ΠρογραμματισμόςΞενοφών Ζαμ π ούλης ΗΥ-150 Προγραμματισμός Αλγόριθμοι και Προγράμματα.
ΜΕΤΑΒΛΗΤΕΣ - ΤΥΠΟΙ ΜΑΘΗΜΑ 3.
ΕΠΑΝΑΛΗΨΗΕΠΑΝΑΛΗΨΗ ΠΡΟΓΡΑΜΜΑΤΑ. ΠΡΟΓΡΑΜΜΑ 1 ΕΞΗΓΗΣΤΕ ΤΙ ΕΞΟΔΟ ΠΑΡΑΓΕΙ ΤΟ ΠΑΡΑΚΑΤΩ ΠΡΟΓΡΑΜΜΑ #include int main() { char ch; int i; float fl; printf("dose.
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
Υποθετικός τελεστής Ο υποθετικός τελεστής (?:) αποτελείται από δύο σύμβολα. Ανήκει στην κατηγορία των τελεστών που αποτελούνται από συνδυασμό συμβόλων.
Προγραμματισμός ΙΙ Διάλεξη #6: Απλές Δομές Ελέγχου Δρ. Νικ. Λιόλιος.
1 Ολυμπιάδα Πληροφορικής Μάθημα 7. 2 Στόχοι μαθήματος Δημιουργία συναρτήσεων από το χρήστη Δομή προγράμματος με συναρτήσεις Συναρτήσεις και παράμετροι.
Ολυμπιάδα Πληροφορικής
Ολυμπιάδα Πληροφορικής
Πάνω προς Κάτω Σχεδιασμός και Συναρτήσεις
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΤΟ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ ΓΛΩΣΣΑΣ PASCAL ΠΑΡΟΥΣΙΑΣΗ ΠΑΡΑΔΕΙΓΜΑΤΟΣ: ΕΚΤΕΛΕΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ ΜΕ ΤΙΣ ΤΡΕΙΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
ΜΑΘ3122/106 – Γλώσσα προγραμματισμούΞενοφών Ζαμπούλης ΜΑΘ3122/106 Γλώσσα προγραμματισμού Συναρτήσεις.
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 1 Δείκτες σε συναρτήσεις Δείκτης σε συνάρτηση – Περιέχει τη διεύθυνση του κώδικα της συνάρτησης – Ό π ως ένας.
ΜΑΘ3122/106 – Γλώσσα προγραμματισμού Ξενοφών Ζαμπούλης ΜΑΘ3122/106 – Γλώσσα προγραμματισμού Επανάληψη.
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
2/28/00epl-1311 Παραδειγματα Aλγοριθμων Αριθμος λεξεων που διαβαστηκαν απο εισοδο Εκτυπωση περιφερειας τετραγωνων με * Υπολογισμος exp(x,n) = 1 + x/1!
ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ -150 Προγραμματισμός Αρχεία.
ΗΥ150 – ΠρογραμματισμόςΞ. Ζαμπούλης ΗΥ-150 Προγραμματισμός Αρχεία.
ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ -150 Προγραμματισμός Τύ π οι Μεταβλητών Τελεστές Βασική Είσοδος / Έξοδος.
ΗΥ150 – ΠρογραμματισμόςΞενοφών Ζαμπούλης ΗΥ-150 Προγραμματισμός Συναρτήσεις.
ΗΥ150 – Προγραμματισμός Ξενοφών Ζαμπούλης 1 getchar() /* char_count.c A program to count characters of input. */ main() { int c ; int count = 0; while.
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Διδάσκοντες:Γιάννης Μαΐστρος Στάθης Ζάχος Νίκος Παπασπύρου
ΗΥ150 – ΠρογραμματισμόςΞενοφών Ζαμπούλης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις (μέρος δεύτερο) και Μεταβλητές.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Τύποι Μεταβλητών Τελεστές Βασική Είσοδος/Έξοδος.
ΗΥ 150 – ΠρογραμματισμόςΞενοφών Ζαμ π ούλης ΗΥ -150 Προγραμματισμός Αλγόριθμοι και Προγράμματα.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Προγραμματισμός ΗΥ Ενότητα 2: Συναρτήσεις Εισόδου ⁄ Εξόδου. Διδάσκων: Ηλίας Κ Σάββας, Αναπληρωτής Καθηγητής.
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ «Εισαγωγή στον οντοκεντρικό προγραμματισμό (βασική εισαγωγή στο περιβάλλον εργασίας)» Ρουσσάκης Ιωάννης, ΤΕΙ Κρήτης,
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Προγραμματισμός ΗΥ Ενότητα 4: Επαναληπτικές δομές. Διδάσκων: Ηλίας Κ Σάββας, Αναπληρωτής Καθηγητής. Τμήμα Μηχανικών.
Τεχνολογία και Προγραμματισμός Υπολογιστών Ενότητα 5: Τύπος πίνακα,Μεταβλητές με δείκτη, Πολυδιάστατοι πίνακες Επίκουρος Καθηγητής Χρήστος Μακρής Τμήμα.
ΔΟΜΗ ΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΕ C 1.Σχόλια 2.Οδηγίες προεπεξεργαστή 3.Ορισμοί τύπων 4.Δηλώσεις συναρτήσεων (πρωτότυπα) 5.Ορισμός της main 6.Ορισμοί συναρτήσεων.
Προτάσεις, εκφράσεις, τελεστές Βασικά στοιχεία ελέγχου προγράμματος
Τεχνολογία και Προγραμματισμός Υπολογιστών
Αντικειμενοστραφής Προγραμματισμός Ι
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Π Ι Ν Α Κ Ε Σ (arrays) ΤΑΞΙΝΟΜΗΣΗ
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ
ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ Η εντολή if if ( παράσταση) εντολή επόμενη εντολή.
for (παράσταση_1; παράσταση_2; παράσταση_3)
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Δομές διακλάδωσης, επαναλήψεις, μέθοδοι
ΔΟΜΕΣ ΕΛΕΓΧΟΥ(if-else, switch) και Λογικοί τελεστές / παραστάσεις
Ταξινόμηση Ορισμός: Δοθέντων των στοιχείων a1,a2,… ,an η ταξινόμηση συνίσταται στην αντιμετάθεση της θέσης των στοιχείων ώστε να τοποθετηθούν με μια νέα.
Τεχνολογία και Προγραμματισμός Υπολογιστών
ΣΥΝΑΡΤΗΣΕΙΣ (Functions)
ΗΥ-150 Προγραμματισμός Αναδρομή (1/2).
Δομές ροής προγράμματος
Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου
ΑΣΚΗΣΕΙΣ C.
ΑΣΚΗΣΕΙΣ.
Μεταγράφημα παρουσίασης:

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ -150 Προγραμματισμός Εντολές Ελέγχου Ροής

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 2 Σειριακή εκτέλεση εντολών Όλα τα π ρογράμματα « γράφονται » χρησιμο π οιώντας 3 είδη εντολών : – Σειριακές εντολές (sequential – built in C) – Εντολές α π όφασης (if, if/else, switch) – Εντολές ε π ανάληψης ( for, while, do/while)

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 3 Εντολές υ π ό Συνθήκη - if εντολή <- έκφραση ; εντολή <- { σειρά εντολών } if ( έκφραση ) εντολή 1 if ( έκφραση ) εντολή 1 else εντολή 2 if ( έκφραση 1) εντολή 1 else if ( έκφραση 2) εντολή 2 else εντολή 3 // Αν η έκφραση έχει τιμή διάφορη του 0 (!0), // εκτελείται η εντολή 1 αλλιώς η εντολή 2 // Αν η έκφραση έχει τιμή διάφορη του 0 (!0), // εκτελείται η εντολή 1 // Αν η έκφραση 1 έχει τιμή διάφορη του 0 (!0), // εκτελείται η εντολή 1 // αλλιώς αν η έκφραση 2 έχει τιμή διάφορη του 0 // εκτελείται η εντολή 2 // αλλιώς εκτελείται η εντολή 3

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 4 Παράδειγμα με switch int main() /*Ypologismos aplwn pra3ewn*/ { char p; float x,y,res; scanf("%f %c %f",&x,&p,&y); if (p == ‘+’) { res = x+y; } else if (p == ‘-’) { res = x-y; } else if (p == ‘*’) { res = x*y; } else if (p == ‘/’); { res = x/y; } else { printf(“La8os eisodos\n”); return -1; } printf(“%f%c%f = %f\n”,x,c,y,res); return 0; }

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 5 Εντολές υ π ό Συνθήκη - switch switch ( έκφραση ) { case σταθερή _ παράσταση _1 : statements; break; case σταθερή _ παράσταση _2 : statements; break; default : statements; } Το default είναι προαιρετικό και εκτελείτε αν καμία παράσταση δεν βρεθεί ίση με την έκφραση Αν ένα break λείπει τότε συνεχίζεται η εκτέλεση των εντολών

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 6 Παράδειγμα με switch #include /*Ypologismos aplwn pra3ewn*/ int main() { char p; float x,y,res; scanf("%f %c %f",&x,&p,&y); switch (p) { case ‘+’ : res = x+y; break; case ‘-’ : res = x-y; break; case ‘*’ : res = x*y; break; case ‘/’ : res = x/y; break; default : printf(“La8os eisodos\n”); } printf(“%f%c%f = %f\n”,x,c,y,res); return 0; }

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 7 Παραστάσεις υ π ό Συνθήκη - ? if ( x > y) { x = a; }  else { x = b; } x = (x>y) ? a : b;

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 8 Τυ π ικά Λάθη if(x=5) αντί για if(x==5) Ξεχάσατε το break σε εντολή switch Ξεχάσατε {, } Λάθος στις π ροτεραιότητες : ( ) Λύση : Μορφο π οίηση και χρήση σχολίων

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 9 Μορφο π οίηση Σχόλια πριν από συναρτήσεις και τους ορισμούς μεταβλητών Κατάλληλη χρήση tabs, παρενθέσεων και αγκυλών Κατάλληλη ονοματολογία συναρτήσεων - μεταβλητών /*Epistrefei ton endiameso ari8mo twn a,b,c*/ int getMedian(int a,int b, int c) { int median; /*Endiamesos*/ if ((a = c)) || ((a >= b) && (a <= c)) { median = a; } else if ((b = c)) || ((b >= a) && (b <= c)) { median = b; } else { median = c; } return median; }

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 10 Define – Const – Include #define #define FALSE 0 #define TRUE !FALSE #define N 1000 /* ΠΡΟΣΟΧΗ !! – ΔΕΝ ΜΠΟΡΩ ΝΑ ΧΡΗΣΙΜΟΠΟΙΗΣΩ ΤΟ Ν ΩΣ ΜΕΤΑΒΛΗΤΗ */ #define Pi – Ορίζεται στην αρχή κάθε π ρογράμματος και μ π ορεί να χρησιμο π οιηθεί σε όλο το π ρόγραμμα. – To Pi θα αντικατασταθεί α π ό τον στο π ρώτο βήμα του compilation (preprocessing) int const a = 1; – ορίζει μια σταθερά – δεν μ π ορεί να αλλάξει τιμή #include #include “file”

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 11 Γενική Δομή Προγράμματος Λίστα α π ό συναρτήσεις - main() Τύπος-επιστρεφόμενης-τιμής όνομα(λίστα-παραμέτρων) { δηλώσεις μεταβλητών λίστα εντολών } /*Επιστρέφει το μέγιστο μεταξύ των x, y*/ int max(int x,int y) { int z = x; /*δηλώσεις μεταβλητών - αρχικοποίηση*/ if (y > x) /*λίστα εντολών*/ { z = y; } return z; }

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 12 Παράδειγμα /* Author: C. Panagiotakis Function: Solves a second order polynomial equation. */ #include /*function prototypes*/ float diakrinousa(float,float, float ); int printSolution2ba8mou(float a, float b, float c); int main() { float a,b,c; printf(“Dwste 3 pragmatikous ari8mous \n”); scanf(“%f %f %f”,&a,&b,&c); printf("Dw8hke to poluwnumo: %f x^2 + (%f) x + (%f) \n",a,b,c); if (a == 0) { printf(“H e3iswsh einai prwtou ba8mou\n”); } else { printSolution2ba8mou(a, b, c); } /*Υπολογίζει τη διακρίνουσα */ float diakrinousa(float a,float b, float c) { float D = b*b – 4*a*c; return D; } /*Εκτυπώνει τις λύσεις */ int printSolution2ba8mou(float a, float b, float c) { float D = diakrinousa( a, b, c); float x1,x2; if (D < 0) { printf(“Den uparxoun pragmatikes luseis.\n”); return 0; } else if (D == 0) { x1 = -b/(2*a); printf(“Yparxei monadikh lush %f\n”,x1); return 1; } else { x1 = (-b+sqrt(D))/(2*a); x2 = (-b-sqrt(D))/(2*a); printf(“Yparxoun 2 luseis :%f, %f\n”,x1,x2); return 2; }