ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ -150 Προγραμματισμός Τύ π οι Μεταβλητών Τελεστές Βασική Είσοδος / Έξοδος.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Το αλφαριθμητικό (string)
Advertisements

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

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ -150 Προγραμματισμός Τύ π οι Μεταβλητών Τελεστές Βασική Είσοδος / Έξοδος

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 2 Μεταβλητές « Ε π ώνυμες » θέσεις μνήμης Στη C όλες οι μεταβλητές π ρέ π ει να δηλώνονται Δηλώσεις : – τύ π ος όνομα ; – int myfirstvariable; Ονόματα ( καλύτερα μεγάλα α π ό μικρά : μέχρι 31 χαρακτήρες ) – να έχουν νόημα ( λ. χ. sum για άθροισμα ) – case sensitive ( λ. χ. var1, Var1) – Ξεκινούν α π ό γράμμα ή _ και μ π ορούν στη συνέχεια να π εριέχουν και αριθμούς ( λ. χ. myVar_1_int) – Προσοχή στις δεσμευμένες λέξεις της C (if, else, while, for, break, continue, int, float, double, char, …) και στα ονόματα συναρτήσεων Initialization: int myfirstvariable = 6; Δηλώσεις π ολλών μεταβλητών με κόμμα – int x,y = 0,z = -1;

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 3 Μεταβλητές Οι μεταβλητές μ π ορεί να είναι : – Το π ικές : έχει π ρόσβαση σε αυτές μόνο η συνάρτηση στην ο π οία έχουν δηλωθεί. Μόλις ολοκληρωθεί η εκτέλεση της συνάρτησης η μεταβλητή « χάνεται » – Καθολικές : έχουν π ρόσβαση σε αυτές όλες οι συναρτήσεις π ου βρίσκονται στο ίδιο αρχείο Διατηρούνται κατά την εκτέλεση του π ρογράμματος Προσοχή στη χρήση τους.

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 4 Μεταβλητές Καθολικές (global) έναντι το π ικών μεταβλητών (local) double sum;// καθολικές int nextOfX(int x) { x = x + 1; sum = sum+1; return x; } main() { int x = 0; // το π ική sum = 0; x = nextOfX(0); x = nextOfX(x); }

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 5 Στατικές Μεταβλητές Οι μεταβλητές μ π ορεί να είναι : – Το π ικές : μια μόνο συνάρτηση χρησιμο π οιεί την μεταβλητή π ου π ρέ π ει να την θυμάται μεταξύ διαφορετικών κλήσεων. Μοιάζουν με τις καθολικές μεταβλητές αλλά με τη διαφορά π ως δε « χάνονται » μετά το τέλος της συνάρτησης. – Καθολικές : ένα μικρό σύνολο α π ό συναρτήσεις χρησιμο π οιεί την μεταβλητή, ο π ότε η μεταβλητή δηλώνεται σαν στατική και όλες αυτές οι συναρτήσεις μ π αίνουν στο ίδιο αρχείο Αρχικο π οίηση στην αρχή της εκτέλεσης του π ρογράμματος – static int x=8;

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 6 Static variables void a() { static int staticVariable = 500; /* mono thn prwth fora*/ staticVariable++; printf( “%d\n”, staticVariable); } Output ….

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 7 Τύ π οι Μεταβλητών και Εκφράσεων Και οι μεταβλητές αλλά και οι εκφράσεις έχουν ένα τύ π ο δεδομένων Τύ π ος μεταβλητών σε τρία μέρη : – Μέρος π ρώτο : signed, unsigned, τί π οτα – Μέρος δεύτερο : long ή short ή τί π οτα – Μέρος τρίτο : char, int, float, double Το τελευταίο είναι το μόνο α π αραίτητο για να δηλώσει τύ π ο Δεν δίνουν όλοι οι συνδυασμοί συντακτικά σωστές δηλώσεις – int x; – long int x; – long float x; – unsigned char x;

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 8 Ανα π αράσταση και Εύρος Τιμών Χαρακτήρες char, 1 byte, 8 bits, ανα π αριστούν 2 8 = 256 τιμές Ακέραιοι int{-2 #bits-1, -2 #bits-1 + 1, …, 2 #bits-1 - 1} Πραγματικοί float ή double Οι double έχουν μεγαλύτερο εύρος τιμών και μεγαλύτερη ακρίβεια ανα π αράστασης α π ό τους float

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 9 Τύ π ος Μεταβλητών και Σταθερών Ο τύ π ος μιας μεταβλητής σε μια έκφραση είναι ο τύ π ος με την ο π οία την δηλώνουμε Ο τύ π ος μιας σταθεράς είναι – Σταθερά χαρακτήρα ’x’ -> μετατρο π ή στον αντίστοιχο ακέραιο ASCII – Ακέραια (π. χ., 1234) int, long int, unsigned long int, ό π οια τον χωράει 1234U -> unsigned int ή unsigned long int 1234L -> long int ή unsigned long int – Σταθερά κινητής υ π οδιαστολής > double f -> float

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 10 Τελεστές – Προτεραιότητα Πράξεων == ( ισότητα ), != ( ανισότητα ),, = ! ( όχι ), && για λογικό ΚΑΙ (AND), || για λογικό Η (OR) Πρόσθεση – Αφαίρεση : + - Πολλ / σμος – Διαίρεση :* / – double x = 5/2; //x = 2.0 – double y = 5.0/2; //x = 2.5 Υ π όλοι π ο διαίρεσης : % – int x = 5 % 2; //x = 1 Σειρά των π ράξεων : 1. ( ) 2. ! 3. * / %( α π ό αριστερά π ρος τα δεξιά ) ( α π ό αριστερά π ρος τα δεξιά ) 5. = > 6. == != Ε π ιστρέφουν 1 ( ΑΛΗΘΕΣ ) ή 0 ( ΨΕΥΔΕΣ ) int s = (x == 1) || (x == 2); 0 || Χ -> Χ int s = ! (x == 1) && (x == 2); !0 || Χ -> 1 int s = 1+((x == 1) || (x != 2))*2; 0 && Χ -> 0 !0 && Χ -> Χ

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 11 Μετατρο π ές Τύ π ων – Αριθμητικοί Τελεστές Οι εκφράσεις λοι π όν έχουν : μια τιμή και ένα τύ π ο Τι γίνεται αν στην εφαρμογή του κανόνα – έκφραση 1  έκφραση 2 τελεστής έκφραση 3 οι τύ π οι της έκφραση 2 και έκφρασης 3 είναι διαφορετικοί ; Π. χ,. x = y + z, ό π ου το y είναι int και το z είναι float Η « μικρότερη » έκφραση μετατρέ π εται στην « μεγαλύτερη » Η τελική εκφραση 1 έχει τον τύ π ο της « μεγαλύτερης » έκφρασης

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 12 Εκχωρήσεις τιμής σε μεταβλητή διαφορετικού τύ π ου – Το δεξί μέρος μετατρέ π εται στον τύ π ο του αριστερού μέρους ΠΡΟΒΛΗΜΑ : η μετατρο π ή μ π ορεί να χάνει δεδομένα / ακρίβεια – int x = 15.0/2.0; – char = unsigned char ή signed char, εξαρτάται α π ό τον μεταφραστή Μετατρο π ές Τύ π ων

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 13 Ρητή Μετατρο π ή Τύ π ων Type casting Ρητή μετατρο π ή α π ό ένα τύ π ο μεταβλητής σε κά π οιον άλλο. x = (int) y; γενική μορφή : – έκφραση 1 <- ( τύ π ος ) έκφραση 2 – η έκφραση 1 π αίρνει την τιμή της μετατρε π όμενης τιμής της έκφρασης 2

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 14 Τελεστές μοναδιαίας αύξησης / μείωσης i++; (i--;): μεταθεματικοί (postfix) ++i; (--i;): π ροθεματικοί (prefix) Η αύξηση / μείωση συμβαίνει π ριν ( για π ροθεματικούς )/ μετά ( για μεταθεματικούς ) την χρησιμο π οίηση της τιμής Αν μια έκφραση έχει π ολλα π λά ++ εξαρτάται α π ό τον μεταγλωττιστή x = i++; x = ++i; i = 1; x = 1; i = 2;

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 15 Τελεστές αντικατάστασης έκφραση 1 τελεστής = έκφραση 2 i += 2;: i = i + 2; x *= y + 2; x = x * (y + 2); δεξιά προς αριστερά!!

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 16 printf / scanf Εισαγωγή Μορφή εισόδου / εξόδου Εκτυ π ώσεις με διαφορετική μορφο π οίηση Παράμετροι – %c -- character – %d -- integer – %f -- float – %lf -- double Παράδειγμα int x; char c; scanf(“%d”,&x); c = ‘a’; printf(“x = %d c(char) = %c c(int) = %d\n”,x,c,c);

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 17 printf / scanf Μορφή εισόδου / εξόδου Παράμετροι – %c -- character – %d -- integer – %f -- float – %lf -- double Παράδειγμα float f; scanf(“%f”,&f); printf(“f = %f\nf ~= %.2f \n”,f,f);

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 18 Παράδειγμα #include int main() { int a = 1, b = 1, x = 0, y = 0; double w; x = 1 + a++; printf( "x = %d\n", x); printf( "a = %d\n", a); y = ++b; printf( "y = %d\n", y); printf( "b = %d\n", b); } /* results 2 */

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 19 Format identifiers %d %iDecimal signed integer. %oOctal integer. %x %XHex integer. %uUnsigned integer. %cCharacter. %sString.See below. %fdouble %e %Edouble. %g %Gdouble. %ppointer. %nNumber of characters written by this printf. No argument expected. %%. No argument expected.

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 20 Example I #include int main () { /* We will use a floating-point and an integer variable. */ double x; int n; /* Read in an integer. */ printf("Please enter an integer: "); scanf("%d", &n); printf("The integer was %d\n\n", n);

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 21 Example I cont /* Read in a double. */ printf("Please enter a double: "); scanf("%lf", &x); printf("The double was %g\n\n", x); /* Read in an integer and a double. */ printf("Please enter an integer and a floating-point number: "); scanf("%d%lf", &n, &x); printf("The numbers were %d %g\n", n, x); }

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 22 int day, year; scanf("%d %d", &day, &year); (1) char c, s[10]; int i; float f; (2) scanf("%c", &c); // reads next character and puts its value in c (3) scanf("%s", s); // reads next word and converts it to a string (4) scanf("%i", &i); // reads next word and converts it to an integer (5) scanf("%f", &f); // reads next word and converts it to a float (6) scanf("%c %s %i %f", &c, s, &i, &f); // multiple reads (7) printf("c=%c s=%s i=%i r=%3.1f¥n", c, s, i, f);

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 23 Παράδειγμα #include int a; void f(int a) { int b=0; static int c=0; b++; c++; printf("%d %d %d\n",a,b,c); } void g(int b) { b = a+b++; a = (b*b)/3; if (a > b) f(a); else f(b); } int main() { for(a=1; a<=20; a++) { g(a); } /* results*/

ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 24 Τυ π ικά Λάθη printf – λιγότερα ορίσματα α π ό όσα π εριμένει – διαφορετικά ορίσματα α π ό αυτά π ου π εριμένει scanf – τα π ροηγούμενα – Ξεχάσατε το & Αθελημένες μετατρο π ές τύ π ων if(x=5) αντί για if(x==5) Ξεχάσατε το ; ή το αντίστροφο