ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ"

Transcript

1 Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Συντακτικό της γλώσσας C Μεταβλητές Σταθερές Τύποι Δεδομένων Τελεστές Εκφράσεις Προτάσεις

2 Ένα Απλό Πρόγραμμα 1 /* Hello world program in C 2 */ 3 4 #include <stdio.h> 5 6 int main () 7 { 8 printf("hello world!\n"); 9 return 0; 10 } Σχόλια Κυρίως πρόγραμμα Συμπεριέλαβε τη βιβλιοθήκη συναρτήσεων εισόδου/εξόδου Τύπωσε τη φράση Hello world

3 Ένα Απλό Πρόγραμμα (ανάλυση) Επίσης σχόλιο είναι κάθε γραμμή που αρχίζει με //

4 Ένα Απλό Πρόγραμμα (ανάλυση)

5 Ένα Απλό Πρόγραμμα (ανάλυση)

6 Ένα Απλό Πρόγραμμα (ανάλυση)

7 Ένα Απλό Πρόγραμμα (ανάλυση)

8 Συμβουλές

9 Παράδειγμα προς αποφυγή!

10 Στοιχεία της Γλώσσας Αλφάβητο Οι χαρακτήρες με τους οποίους σχηματίζονται οι λέξεις της γλώσσας Λεξιλόγιο Οι λέξεις που χρησιμοποιεί η γλώσσα Συντακτικό Οι κανόνες σύνταξης των προτάσεων της γλώσσας Σημασιολογία Οι κανόνες ερμηνείας των προτάσεων της γλώσσας 1 /* Hello world program 2 */ 3 4 #include <stdio.h> 5 6 int main () 7 { 8 printf("hello world!\n"); 9 return 0; 10 }

11 Λεξιλόγιο της Γλώσσας Δεσμευμένες λέξεις (reserved words) Λέξεις-κλειδιά (π.χ. int, if, for) Ονόματα συναρτήσεων βιβλιοθήκης (π.χ. printf, isdigit) Ονόματα εντολών προεπεξεργαστή (π.χ. include, define) Τελεστές (operators) Ειδικά σύμβολα ή λέξεις που αναπαριστούν συγκεκριμένες διεργασίες (π.χ. +, &&) Αναγνωριστές (identifiers) Αυθαίρετα ονόματα μεταβλητών, σταθερών, συναρτήσεων που καθορίζονται από τον προγραμματιστή mkd = 0; while (mkd == 0) { z = x % y; if (z == 0) { mkd = y; return mkd; } x = y; y = z; }

12 Λέξεις-Κλειδιά int: αναπαριστά τον ακέραιο τύπο δεδομένων (integer) if else: έλεγχος ροής προγράμματος Συνήθως οι πιο βασικές λέξεις-κλειδιά είναι κοινές σε πολλές γλώσσες προγραμματισμού Αν και είναι περιορισμός της γλώσσας, αυξάνουν την αναγνωσιμότητα και αξιοπιστία των προγραμμάτων

13 Ονόματα Αναγνωριστών Δεν πρέπει να είναι ίδια με τις δεσμευμένες λέξεις Μπορούν να περιλαμβάνουν γράμματα, αριθμούς και το χαρακτήρα _ Πρέπει να αρχίζουν από γράμμα ή το χαρακτήρα _ Διάκριση μεταξύ μικρών και κεφαλαίων Όριο μήκους (π.χ. 31 για ANSI C) Παραδείγματα name1 1name get-word get_word int maxvel

14 Αναγνωσιμότητα Προγραμμάτων i = 120; if (i > j) function1(); else function2(); Πρόγραμμα 1 velocity = 120; if (velocity > max_velocity) decrease_velocity(); else increase_velocity(); Πρόγραμμα 2

15 Γενικοί Κανόνες για Ευανάγνωστα Προγράμματα Αποφύγετε ονόματα ενός χαρακτήρα (i, j) εκτός από συγκεκριμένες περιπτώσεις Χρησιμοποιείτε εκφραστικά ονόματα Αναπαράσταση μέγιστης ταχύτητας: max_velocity ή maxvelocity Συνάρτηση εμφάνισης λάθους στην οθόνη: display_error ή displayerror Χρησιμοποιείστε μικρά γράμματα για τις μεταβλητές και κεφαλαία για τις μακροεντολές

16 Συντακτικά-Σημασιολογικά Λάθη Συντακτικά λάθη Οφείλονται σε παραβίαση των συντακτικών κανόνων της γλώσσας Ανιχνεύονται στη διάρκεια της μεταγλώττισης Σημασιολογικά λάθη Οφείλονται στην κακή απόδοση της λύσης του προβλήματος Ανιχνεύονται στο χρόνο εκτέλεσης (λάθος αποτελέσματα)

17 Δεδομένα Ένα υπολογιστικό πρόγραμμα διαχειρίζεται πληροφορία που αποθηκεύεται στη μνήμη Η πληροφορία μπορεί να έχει τη μορφή αριθμητικών δεδομένων, γραμμάτων ή συμβόλων που αποτελούν τα δεδομένα εισόδου Κατά τη διάρκεια διαχείρισης των δεδομένων προκύπτουν Τα τελικά αποτελέσματα που περιμένει ο χρήστης Ενδιάμεσα αποτελέσματα που χρησιμοποιούνται για την παραγωγή των τελικών διευθύνσεις Η μνήμη είναι σαν πίνακας όπου κάθε στοιχείο αντιστοιχεί σε έναν αριθμό

18 Μεταβλητές Οι γλώσσες προγραμματισμού υποστηρίζουν την πρόσβαση στα δεδομένα μέσω συμβολικών ονομάτων που καλούνται μεταβλητές Έτσι μπορούμε να προσπελάσουμε την μνήμη του Η/Υ χωρίς να θυμόμαστε αριθμούς και διευθύνσεις Χαρακτηριστικά μεταβλητής Το όνομά της Ο τύπος της Η τιμή της Το περιεχόμενο (τιμή) μιας μεταβλητής μπορεί να αλλάζει στη διάρκεια εκτέλεσης ενός προγράμματος

19 Μεταβλητές Ουσιαστικά τα ονόματα είναι συντομεύσεις για τις διευθύνσεις

20 Μεταβλητές Οι μεταβλητές αποτελούν αναφορά Σε μια θέση μνήμης Στο περιεχόμενο της θέσης μνήμης count = count + 1; Οι μεταβλητές παριστάνουν οντότητες του προβλήματος Πρόβλημα: υπολογισμός επιφάνειας ορθογωνίου Οντότητες: πλάτος, μήκος, εμβαδόν Μεταβλητές: platos, mikos, embadon

21 Μεταβλητές

22 Μεταβλητές τύπος όνομα τιμή Τα ονόματα είναι συντομεύσεις για τις διευθύνσεις

23 Ονόματα Μεταβλητών

24 Τύποι Δεδομένων Όταν ορίζουμε μια μεταβλητή πρέπει να πούμε στον μεταγλωττιστή τι είδους (τι τύπο) πληροφορίας θα αποθηκευτεί στη θέση μνήμης που θα κρατηθεί Ένας τύπος δεδομένων προσδιορίζει το πεδίο τιμών μιας μεταβλητής και τις πράξεις που μπορούν να γίνουν σε αυτή Η C απαιτεί την δήλωση του τύπου των μεταβλητών από τον προγραμματιστή Ενσωματωμένοι τύποι (ακέραιοι, πραγματικοί) Παραγόμενοι τύποι (δομές) Βαθμωτοί τύποι (ακέραιοι, πραγματικοί) Συναθροιστικοί τύποι (δομές)

25 Τύποι Δεδομένων Δηλώνοντας το σωστό τύπο για τις μεταβλητές Επιτυγχάνουμε καλύτερη εκμετάλλευση της μνήμης Επιτυγχάνουμε καλύτερο έλεγχο κατά τη μεταγλώττιση του προγράμματος Πρωτογενείς τύποι: Ακέραιος (int) Πραγματικός απλής ακρίβειας (float) Πραγματικός διπλής ακρίβειας (double) Χαρακτήρας (char)

26 Δήλωση Μεταβλητών στη C <τύπος δεδομένων> <λίστα μεταβλητών>; int count; int count, num; <τύπος δεδομένων> <μεταβλητή>=<τιμή>; int count = 20; float num = 0.2; Δήλωση σταθερών (δεν αλλάζουν τιμή) const <τύπος δεδομένων> <μεταβλητή>=<τιμή>; const float pi = 3.14;

27 Δήλωση Μεταβλητών στη C Στη C μεταβλητές και οι τύποι τους πρέπει να ορίζονται στην αρχή του κομματιού κώδικα όπου θα χρησιμοποιηθούν 1. int main () 2. { 3. int x,y,z; 4. x = 2; 5. y = 3; 6. z = y-x; 7. return 0; 8. } ΣΩΣΤΟ 1. int main () 2. { 3. int x,y; 4. x = 2; 5. y = 3; 6. int z; 7. z = y-x; 8. return 0; 9. } ΛΑΘΟΣ!

28 Αρχικοποίηση Μεταβλητών Με τη δήλωση μιας μεταβλητής γίνεται δέσμευση θέσης μνήμης από τον compiler H αρχικοποίηση (ανάθεση αρχικής τιμής) στην μεταβλητή πρέπει να γίνει από τον προγραμματιστή Αυτό μπορεί να γίνει μαζί με την δήλωση ή αργότερα στο πρόγραμμα Προσοχή: Αν προσπαθήσετε να χρησιμοποιήσετε μεταβλητή που δεν έχει πάρει τιμή θα λάβετε αναπάντεχα αποτελέσματα 1. int main () 2. { 3. int x,y,z; 4. x = 2; 5. y = 3; 6. z = y-x; 7. return 0; 8. } ΣΩΣΤΟ 1. int main () 2. { 3. int x=2,y=3,z; 4. z = y-x; 5. return 0; 6. } ΣΩΣΤΟ 1. int main () 2. { 3. int x,y,z; 4. y = 3; 5. z = y-x; 6. return 0; 7. } ΛΑΘΟΣ

29 Τύπος Χαρακτήρα (char) Αναπαριστά απλούς χαρακτήρες Η τιμή του δηλώνεται σε απλά εισαγωγικά C, 2, *,, Λέξη-κλειδί: char char choice= A ; char x, y; 1. int main () 2. { 3. char c1,c2; 4. c1 = A ; 5. c2 = B ; 6. return 1; 7. } Απαιτεί 1 byte μνήμης Στη C κάθε χαρακτήρας χειρίζεται ως ακέραιος με τιμή τον αντίστοιχο κωδικό ASCII

30 Τύπος Ακεραίου (integer) Αναπαριστά ακεραίους (προσημασμένους ή μη) Λέξη-κλειδί: int Πεδίο τιμών ανάλογα με το μήκος λέξης του υπολογιστή Λέξη 16 bit: έως ή 0 έως για απρόσημους Σε πολλά σύγχρονα συστήματα μπορεί να πάρει όλες τις τιμές στο διάστημα [ , ] Προσδιοριστές Μικρότερης/Μεγαλύτερης ακρίβειας: short/long Απρόσημοι: unsigned unsigned int count;

31 Τύπος Πραγματικού (real) Αναπαριστά (προσεγγιστικά) πραγματικούς αριθμούς Σταθερής υποδιαστολής (0.012) Κινητής υποδιαστολής (6.3e-05) Λέξεις-κλειδιά float: Απλής ακρίβειας (6-7 δεκαδικά ψηφία) double: Διπλής ακρίβειας (14-15 δεκαδικά ψηφία) Προσδιοριστές: long double Αποθήκευση (δεν ορίζεται σαφώς στη C) float: 32 bits double: 64 bits 1. int main () 2. { 3. float pi; 4. pi = return 0; 6. }

32 Τύποι και όρια Οι σύγχρονοι compilers έχουν μεγαλύτερα όρια από αυτά (πρότυπο ANSI C)

33 Σταθερές (constants) Οι σταθερές είναι ποσότητες που δεν αλλάζουν κατά τη διάρκεια εκτέλεσης του προγράμματος Υπάρχουν διάφορα είδη σταθερών Κυριολεκτικές σταθερές 12, Α, Συμβολικές σταθερές Ορίζονται με την εντολή #define και τις επεξεργάζεται ο προεπεξεργαστής Δηλωμένες σταθερές Ορίζονται στο κυρίως πρόγραμμα με χρήση του const

34 Σταθερές (constants) Ο τύπος μιας κυριολεκτικής ή μιας συμβολικής σταθεράς αναγνωρίζεται άμεσα από την εμφάνισή της (δεν χρειάζεται δήλωση) Πραγματικές σταθερές: θεωρούνται double εκτός και αν δηλώνεται κάτι άλλο Παραδείγματα 123 int 4536L long int A char 123.5f float double 9e-05 double

35 Σταθερές (constants) Με την εντολή #define του προεπεξεργαστή ορίζουμε συμβολοσειρές οι οποίες αντικαθίστανται με τις αντίστοιχες τιμές κατά την εκτέλεση Το const λέει στον μεταγλωττιστή ότι η συγκεκριμένη μεταβλητή δεν θα αλλάξει ποτέ τιμή Αν προσπαθήσουμε να αλλάξουμε τιμή σε μεταβλητή δηλωμένη ως const, θα προκύψει λάθος μεταγλώττισης 1. #include <stdio.h> 2. #define MAX int main () 4. { 5. float x; 6. const int y = const float z = x = ((MAX/10)*z)+y; 9. return 1; 10. }

36 Εκτύπωση Μεταβλητών Γίνεται με τη συνάρτηση printf της βασικής βιβλιοθήκης <stdio.h> χρησιμοποιώντας κατάλληλο προσδιοριστή ανάλογα με τον τύπο της μεταβλητής printf( περιγραφή, <μεταβλητές>); %c: χαρακτήρας %d: ακέραιος %f: πραγματικός κινητής υποδιαστολής (συμβολισμός με σταθερή υποδιαστολή) %e: πραγματικός κινητής υποδιαστολής (επιστημονικός συμβολισμός) Παραδείγματα printf( ο χαρακτήρας είναι %c, choice); printf( η ASCII τιμή είναι %d, choice); printf( dec=%d, octal=%o, hex=%x, num, num, num); printf( μπορεί να γραφεί ως %f και ως %e, val, val);

37 Προσδιοριστές της printf Οι περισσότεροι προσδιοριστές (specifiers) δίνονται στον πίνακα παρακάτω

38 Ειδικοί χαρακτήρες της C Σταθερές τύπου χαρακτήρα που δεν τυπώνονται Νέα γραμμή: \n Στηλοθέτης: \t Άλλοι χαρακτήρες backslash \\ single quotation mark \ double quotation mark \ Write a \ is a backslash _ Χρήση του χαρακτήρα διαφυγής printf( Write \ a \\ is a backslash\ \n );

39 Είσοδος Δεδομένων Παράδειγμα: πρόσθεση δύο ακέραιων αριθμών 1. #include <stdio.h> 2. int main () 3. { 4. int num1,num2,sum; 5. printf( Enter first number\n ); 6. scanf( %d,&num1); 7. printf( Enter second number\n ); 8. scanf( %d,&num2); 9. sum = num1 + num2; 10. printf( The sum of the numbers is %d\n,sum); 11. return 1; 12. }

40 Είσοδος Δεδομένων Γίνεται με τη scanf συνάρτηση της <stdio.h> βιβλιοθήκης χρησιμοποιώντας κατάλληλο προσδιοριστή όπως και στην printf Η εκτέλεση της εντολής scanf( %d,&num1); σταματάει την εκτέλεση του προγράμματος μέχρι ο χρήστης να πληκτρολογήσει έναν ακέραιο και να πατήσει ENTER scanf( <προσδιοριστής>, &<μεταβλητή>); scanf( %c, &var); scanf( %d, &var); scanf( %f, &var); scanf( %e, &var); Τελεστής διεύθυνσης

41 Παράδειγμα #include <stdio.h> void main () { char ch; printf( Δώσε ένα χαρακτήρα:\t ); scanf( %c, &ch); printf( \nο ASCII κωδικός του χαρακτήρα %c είναι %d\n, ch, ch); } Δώσε ένα χαρακτήρα: Α Ο ASCII κωδικός του χαρακτήρα Α είναι 65 _

42 Είσοδος Δεδομένων Προσδιοριστές (specifiers) της συνάρτησης scanf()

43 Τελεστές (operators) Σύμβολα ή λέξεις που αναπαριστούν μία συγκεκριμένη διεργασία που εκτελείται σε ένα ή περισσότερα δεδομένα Τα δεδομένα καλούνται τελεστέοι Μεταβλητές Σταθερές Κλήσεις συναρτήσεων Οι τελεστές χρησιμοποιούνται για το σχηματισμό εκφράσεων (π.χ. μαθηματικών εκφράσεων) num + 12 num1 > num2

44 Κατηγορίες Τελεστών Αριθμητικοί (+, -, *, /, %) Ανάθεσης (=, +=) Λογικοί (&&,,!) Συσχετιστικοί (>, >=, ==,!=) Διαχείρισης bits (>>, &,, ^, ~) Διαχείρισης μνήμης (&, *,., ->) Ειδικοί

45 Αριθμητικοί Τελεστές Τα περισσότερα προγράμματα στη C εκτελούν μαθηματικούς υπολογισμούς Δυαδικοί αριθμητικοί τελεστές 1. #include <stdio.h> 2. int main () 3. { 4. int x,y,z; 5. z = 10; 6. x = z - 5; 7. y = x + z; 8. return 1; 9. } Στην C οι παρενθέσεις χρησιμοποιούνται περίπου όπως στις αλγεβρικές εκφράσεις x = (y+z)*(w+f);

46 Τελεστής Ανάθεσης Στο αριστερό μέρος καταχωρείται η τιμή του δεξιού μέρους <μεταβλητή> = <έκφραση>; mikos = 5; embadon = mikos * platos; x = x + 1; Ο τύπος της μεταβλητής πρέπει να είναι συμβατός με το αποτέλεσμα της έκφρασης int x = 0.1*14.45 ΛΑΘΟΣ! Ο τελεστής == ελέγχει την ισότητα

47 Προτεραιότητα τελεστών Στην C υπάρχει συγκεκριμένη προτεραιότητα των τελεστών που καθορίζει τον τρόπο υπολογισμού εκφράσεων 1. παρενθέσεις: () Υπολογίζονται πρώτα, από τα αριστερά προς τα δεξιά. Αν υπάρχουν ένθετες υπολογίζονται πρώτα αυτές 2. πολλαπλασιασμός, διαίρεση, υπόλοιπο: *,/,% Υπολογίζονται μετά, από αριστερά προς δεξιά 3. πρόσθεση, αφαίρεση: +,- Υπολογίζονται μετά, από αριστερά προς δεξιά 4. ανάθεση: = Από δεξιά προς αριστερά x = ((y+z)/5)*((w+f)%4)-20;

48 Εκφράσεις και προτεραιότητα τελεστών x = y+z+w+f k Σε C x = (y+z+w+f)/k; Τι θα γίνει αν παραλείψουμε τις παρενθέσεις; Σε C x = a*y/z+b%w-f; Ποια είναι η προτεραιότητα των τελεστών; x = ay 2 + bz + c Σε C x = a * y / z + b % w - f; x = a*y*y+b*z+c; Εδώ γιατί δεν χρειάζονται παρενθέσεις;

49 Ειδικοί Μοναδιαίοι Αριθμητικοί Τελεστές Μοναδιαίας αύξησης/μείωσης (++, --) ++x; ή x++; x = x + 1; --x; ή x--; x = x 1; Οι μοναδιαίοι αριθμητικοί τελεστές έχουν μεγαλύτερη προτεραιότητα από τους άλλους αριθμητικούς (εκτός από τις παρενθέσεις) και υπολογίζονται από τα δεξιά προς τα αριστερά int x = 1; x ++x; 2 x++; 3 x--; 2 --x; 1

50 Ειδικοί Μοναδιαίοι Αριθμητικοί Τελεστές Χρειάζεται προσοχή στην χρήση του μαζί με ανάθεση y = x++; Αυξάνει το x μετά την ανάθεση y = ++x; Αυξάνει το x πριν την ανάθεση int x,y; x=1; y = x++; y = ++x; y = x--; y = --x; y = y + x--; y = y + ++x; x y

51 Προτεραιότητα τελεστών Στην C υπάρχει συγκεκριμένη προτεραιότητα των τελεστών που καθορίζει τον τρόπο υπολογισμού εκφράσεων 1. παρενθέσεις: () Υπολογίζονται πρώτα, από τα αριστερά προς τα δεξιά. Αν υπάρχουν ένθετες υπολογίζονται πρώτα αυτές 2. μοναδιαίοι αριθμητικοί τελεστές: --, ++ Υπολογίζονται από δεξιά προς τα αριστερά 3. πολλαπλασιασμός, διαίρεση, υπόλοιπο: *,/,% Υπολογίζονται μετά, από αριστερά προς δεξιά 4. πρόσθεση, αφαίρεση: +,- Υπολογίζονται μετά, από αριστερά προς δεξιά 5. ανάθεση: = Από δεξιά προς αριστερά

52 Τελεστής Ανάθεσης Ο τελεστής ανάθεσης εκτελείται από δεξιά προς τα αριστερά Χρησιμοποιείται συχνά και μέσα σε εκφράσεις μια έκφραση όπως x = 1 επιστρέφει την τιμή που ανατέθηκε στην μεταβλητή x 1. #include <stdio.h> 2. int main (void) 3. { 4. int x,y,z; 5. z = 10; 6. x = y = z; 7. printf( %d %d %d,x,y,,z); 8. return 1; 9. } H έκφραση αυτή υπολογίζεται μετά την ανάθεση της τιμής του z στην y

53 Τελεστές σύνθετης ανάθεσης Η C παρέχει διάφορους τελεστές ανάθεσης πέρα του βασικού, για συντόμευση των λειτουργιών ανάθεσης Τελεστές σύνθετης ανάθεσης (+=, -=, *=, /=, %/) x += 10; x = x + 10; x -= 10; x = x - 10; x *= 10; x = x * 10; x /= 10; x = x / 10; x %= 10; x = x % 10; int x = 10; int y = 20; x y ++x; y = --x; y += x--; 9 20 y -= x++ ; Οι τελεστές σύνθετης ανάθεσης έχουν ίδια προτεραιότητα με τον τελεστή ανάθεσης και υπολογίζονται από τα δεξιά προς τα αριστερά

54 Προτεραιότητα τελεστών Στην C υπάρχει συγκεκριμένη προτεραιότητα των τελεστών που καθορίζει τον τρόπο υπολογισμού εκφράσεων 1. παρενθέσεις: () Υπολογίζονται πρώτα, από τα αριστερά προς τα δεξιά. Αν υπάρχουν ένθετες υπολογίζονται πρώτα αυτές 2. μοναδιαίοι αριθμητικοί τελεστές: --, ++ Υπολογίζονται από δεξιά προς τα αριστερά 3. πολλαπλασιασμός, διαίρεση, υπόλοιπο: *,/,% Υπολογίζονται μετά, από αριστερά προς δεξιά 4. πρόσθεση, αφαίρεση: +,- Υπολογίζονται μετά, από αριστερά προς δεξιά 5. ανάθεση: =, +=, -=, *=, /=, %= Από δεξιά προς αριστερά

55 Εκφράσεις Συνδυασμός ενός ή περισσοτέρων τελεστέων και ενός ή περισσοτέρων τελεστών Αριθμητικές (αποτέλεσμα αριθμητικού τύπου) (5*x+y/4)*8 Σύγκρισης (αποτέλεσμα λογικού τύπου) x==3 a!=b (x+y) >= 4 Λογικές (αποτέλεσμα λογικού τύπου) (x<5) && (x>=1) (x==0) (y==0)

56 Υπολογισμός Εκφράσεων Προτεραιότητα Χωρισμός των τελεστών σε ομάδες διαφορετικού επιπέδου προτεραιότητας (+, -): χαμηλότερο επίπεδο (*, /): υψηλότερο επίπεδο x-y*z x-(y*z) Προσεταιριστικότητα Καθορισμός κατεύθυνσης εφαρμογής τελεστών ίδιας προτεραιότητας Αριστερή προσεταιριστικότητα: (10+8)-2 Δεξιά προσεταιριστικότητα: num1=num2=10 num1=(num2=10)

57 Δέντρο Αφηρημένης Σύνταξης y*y-x*2*z (y*y)-((x*2)*z) * * y y * z x 2

58 Μετατροπές Τύπων Εκφράσεις που περιέχουν μεταβλητές και σταθερές διαφορετικών τύπων δίνουν ως αποτέλεσμα τιμή του ευρύτερου τύπου (char < int < long < float < double) Μια αριθμητική πράξη μεταξύ int και double δίνει αποτέλεσμα double int main (void) { int x = 3; float y = 3.5, z; z = x + y; return 1; } 6.5 #include <stdio.h> int main (void) { int x = 3, y = 7; printf( %d %d\n,x/y,y/x); return 1; } Τι τυπώνεται;

59 Μετατροπές Τύπων Ανάθεση μιας τιμής ενός τύπου σε μεταβλητή άλλου τύπου έχει ως αποτέλεσμα την μετατροπή της τιμής στον τύπο της μεταβλητής, είτε χωρίς απώλεια πληροφορίας, αν η μεταβλητή έχει ευρύτερο τύπο από την τιμή με απώλεια πληροφορίας, αν η τιμή έχει ευρύτερο τύπο από την μεταβλητή Αυτό συχνά είναι επικίνδυνο! Υπονοούμενη μετατροπή τύπου O στενότερος τύπος μετατρέπεται στον ευρύτερο (char < int < long < float < double) 1/2 0 f = i = 3.3; το i παίρνει τιμή 3 και το f παίρνει τιμή 3.0 int x = 5; float y = x; Ρητή μετατροπή τύπου (cast) (<τύπος δεδομένων>)έκφραση (float)2 2.0 (float)3/2 1.5 (float)(3/2) 1.0 float x = 5.25; int y = (int) x; float x = 5.25; int y = x;

60 Προτάσεις Πρόταση είναι μία πλήρης εντολή που προσδιορίζει την εκτέλεση ενός συγκεκριμένου έργου Το τέλος κάθε πρότασης προσδιορίζεται με το ελληνικό ερωτηματικό πρόταση1; Σύνθετη πρόταση: ένα σύνολο προτάσεων που περικλείονται σε αγκύλες ({}) {πρόταση1; πρόταση2; πρόταση3;}

61 Κατηγορίες Προτάσεων Δήλωσης int num; Κλήσης συνάρτησης printf( Hello world ); Ελέγχου ροής if (a>b) then a else b; Ανάθεσης num=20; Σύνθετη {num=max(12,13); printf( num = %d\n, num);}

62 Προτάσεις Προεπεξεργαστή Ειδικές προτάσεις (δεν τελειώνουν σε ;) Εκτελούν κάποια επεξεργασία πριν τη μεταγλώττιση Πρόταση συμπερίληψης #include <stdio.h> #include string.h Πρόταση μακρο-αντικατάστασης #define PI

63 Παράδειγμα Να γραφεί πρόγραμμα που να διαβάζει δύο ακέραιους από το πληκτρολόγιο και στη συνέχεια τυπώνει το άθροισμα, τη διαφορά, το γινόμενο, πηλίκο και το υπόλοιπο της διαίρεσης #include <stdio.h> void main() { int a1, a2; } Dwse 2 akeraious (xwrismenous me keno): 5 3 To athroisma einai 8 H diafora einai 2 To ginomeno einai 15 To piliko einai 1 To ypoloipo einai 2_ printf( Dwse 2 akeraious (xwrismenous me keno): ); scanf( %d %d,&a1,&a2); printf( To athroisma einai %d\nh diafora einai %d\nto ginomeno einai %d\nto piliko einai %d\nto ypoloipo einai %d\n, a1+a2, a1-a2, a1*a2, a1/a2, a1%a2);

64 Παράδειγμα Να γραφεί πρόγραμμα που να διαβάζει από το πληκτρολόγιο ένα πραγματικό αριθμό που αντιστοιχεί στη θερμοκρασία σε βαθμούς Φαρενάιτ και να τη μετατρέπει σε βαθμούς Κελσίου με βάση τον τύπο C=(5/9)*(F-32) #include <stdio.h> void main() { float F; printf( Dwse thermokrasia se Farenheit: ); scanf( %f,&f); printf( H thermokrasia se bathmous Kelsiou einai %f, (5.0/9.0)*(F-32)); }

Εισαγωγή στον δομημένο προγραμματισμό

Εισαγωγή στον δομημένο προγραμματισμό Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στον δομημένο προγραμματισμό Ενότητα 2 η : Συντακτικό της γλώσσας C, Μεταβλητές Σταθερές Τύποι Δεδομένων Τελεστές Εκφράσεις Προτάσεις Αν. καθηγητής

Διαβάστε περισσότερα

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή Στόχοι και αντικείμενο ενότητας Η έννοια του Τελεστή #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Εκφράσεις Προτεραιότητα Προσεταιριστικότητα Χρήση παρενθέσεων Μετατροπές Τύπων Υπονοούμενες και ρητές μετατροπές

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Αριθμητική Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Δεύτερο Πρόγραμμα 1 / * Second Simple Program : add 2 numbers * / 2

Διαβάστε περισσότερα

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

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Τελεστές - Κατηγορίες Εκφράσεις - Κατηγορίες Υπολογισμός εκφράσεων Προτάσεις - Κατηγορίες

Διαβάστε περισσότερα

Οικονόμου Βαγγέλησ Διάλεξη Νο 2. Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2

Οικονόμου Βαγγέλησ Διάλεξη Νο 2. Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2 Οικονόμου Βαγγέλησ Διάλεξη Νο 2 Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2 1 Η έννοια τησ μεταβλητήσ έδωςε λύςη ςτο πρόβλημα τησ αναφοράσ ςτην κύρια μνήμη του υπολογιςτή. Οι γλώςςεσ προγραμματιςμού υποςτηρίζουν

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Δομημένος Προγραμματισμός Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Παρατηρήσεις

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ. Ενότητα 2β: Εισαγωγή στη C (Μέρος Δεύτερο)

Προγραμματισμός Η/Υ. Ενότητα 2β: Εισαγωγή στη C (Μέρος Δεύτερο) Προγραμματισμός Η/Υ Ενότητα 2β: Νίκος Καρακαπιλίδης, Καθηγητής Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Κατανόηση της έννοιας του Τελεστή

Διαβάστε περισσότερα

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

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Βασικά Στοιχεία Το αλφάβητο της C Οι βασικοί τύποι της C Δηλώσεις μεταβλητών Είσοδος/Έξοδος Βασικές εντολές της C Αλφάβητο

Διαβάστε περισσότερα

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Μεταβλητές,

Διαβάστε περισσότερα

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος http://www.teiser.gr/icd/staff/lantzos lantzos@teiser.gr 1 Πώς δημιουργούμε πρόγραμμα Η/Υ; 1. Ανάλυση του προβλήματος 2. Επινόηση & Σχεδιασμός

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

Διαβάστε περισσότερα

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Εισαγωγή στον Προγραµµατισµό Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Hello World /* Αρχείο hello.c * Εµφανίζει στην οθόνη το * µήνυµα hello world */ #include

Διαβάστε περισσότερα

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

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Δομημένος Προγραμματισμός Ενότητα 2: Τύποι μεταβλητών Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

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

Εισαγωγή στην γλώσσα προγραμματισμού C Εισαγωγή στην γλώσσα προγραμματισμού C Χαρακτηριστικά της C Ιδιαίτερα δημοφιλής Έχει χρησιμοποιηθεί για τον προγραμματισμό ευρέος φάσματος συστημάτων και εφαρμογών Γλώσσα μετρίου επιπέδου Φιλοσοφία: Ο

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 2ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΣΦΑΛΜΑΤΑ ΜΕΤΑΓΛΩΤΤΙΣΗΣ Η γλώσσα C κάνει αυστηρή διάκριση μεταξύ πεζών

Διαβάστε περισσότερα

ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1

ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1 Γλώσσα Προγραμματισμού C++ ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1 Τα δεδομένα Οι σταθερές Τα δεδομένα (πληροφορίες-data) είναι απαραίτητα στοιχεία ενός προγράμματος, καθώς οι βασικές λειτουργίες ενός προγράμματος είναι

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Δομημένος Προγραμματισμός Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Νέο Πρόγραμμα

Διαβάστε περισσότερα

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

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 6: Αλγόριθμοι / Προγραμματισμός Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται

Διαβάστε περισσότερα

Μεταφερσιμότητα Τα προγράμματα μεταφέρονται εύκολα σε διαφορετικά λειτουργικά συστήματα

Μεταφερσιμότητα Τα προγράμματα μεταφέρονται εύκολα σε διαφορετικά λειτουργικά συστήματα Η ΓΛΩΣΣΑ C Η C είναι μια γλώσσα προγραμματισμού υψηλού επιπέδου η οποία αναπτύχθηκε στις αρχές της δεκαετίας του 70 από τον Dennis Ritchie στα Bell Labs. Η σημερινή μορφή της γλώσσας ακολουθεί το πρότυπο

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Πίνακες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Πίνακες Πολλές φορές θέλουμε να κρατήσουμε στην μνήμη πολλά αντικείμενα

Διαβάστε περισσότερα

TMHMA TEXNΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛ/ΝΙΩΝ Προγραμματισμός Ι ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ , Α ΕΞΑΜΗΝΟ Βασίλης Μποζαντζής. Βασίλης Μποζαντζής

TMHMA TEXNΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛ/ΝΙΩΝ Προγραμματισμός Ι ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ , Α ΕΞΑΜΗΝΟ Βασίλης Μποζαντζής. Βασίλης Μποζαντζής TMHMA TEXNΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛ/ΝΙΩΝ Προγραμματισμός Ι ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2010 2011, Α ΕΞΑΜΗΝΟ Βασίλης Μποζαντζής Βασίλης Μποζαντζής Εισαγωγικά Οι 32 δεσμευμένες λέξεις σύμφωνα με το πρότυπο ANSI

Διαβάστε περισσότερα

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

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη Εισαγωγικά

Διαβάστε περισσότερα

Στόχοι και αντικείμενο ενότητας. Συντακτικό Γλώσσας. Αλφάβητο. #2.. Εισαγωγή στη C (Μέρος Πρώτο)

Στόχοι και αντικείμενο ενότητας. Συντακτικό Γλώσσας. Αλφάβητο. #2.. Εισαγωγή στη C (Μέρος Πρώτο) Στόχοι και αντικείμενο ενότητας Στοιχεία της Γλώσσας Προγραμματισμού C Αλφάβητο Συντακτικό Γλώσσας Λεξιλόγιο #2.. Εισαγωγή στη C (Μέρος Πρώτο) Οι έννοιες της Μεταβλητής και της Σταθεράς Τύποι Δεδομένων

Διαβάστε περισσότερα

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

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 ❶ Προετοιµασία για το 1 ο Εργαστήριο

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα

Διαβάστε περισσότερα

Βασικές Αρχές Προγραμματισμού

Βασικές Αρχές Προγραμματισμού Βασικές Αρχές Προγραμματισμού Κεφάλαιο 2 ΗγλώσσαC Ιστορική Αναδρομή ΗανάπτυξητηςC ξεκίνησε το 1972 στα εργαστήρια Bell από τον Dennis Ritchie με σκοπό την ανάπτυξη ενός λειτουργικού συστήματος για τον

Διαβάστε περισσότερα

Διαδικασία Ανάπτυξης Λογισμικού

Διαδικασία Ανάπτυξης Λογισμικού Διαδικασία Ανάπτυξης Λογισμικού Ανάλυση Απαιτήσεων (προϋποθέτει κατανόηση του προβλήματος και τη συλλογή πληροφοριών και των απαιτήσεων από το σύστημα) Σχεδιασμός (ορισμός διεργασιών για να ικανοποιηθούν

Διαβάστε περισσότερα

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 2: Μεταβλητές και Σταθερές Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

Διαβάστε περισσότερα

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης Γλώσσες Προγραμματισμού Εργαστήριο 2ο Τύποι Δεδομένων - Είσοδος / Έξοδος Εργαστήριο 2ο Περίγραμμα Εργαστηριακής Άσκησης Εργαστήριο 2ο...1 Θεωρία εργαστηρίου...2 Τύποι δεδομένων...2 Η συνάρτηση printf()...3

Διαβάστε περισσότερα

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών Χαρακτήρες Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Προγραμματισμός Δ. Τσελίκας Ι Χαρακτήρες - Εισαγωγή Έως τώρα έχουμε κατά κύριο λόγο χρησιμοποιήσει τους αριθμητικούς τύπους

Διαβάστε περισσότερα

Δεδομένα, τελεστές, είσοδος/έξοδος

Δεδομένα, τελεστές, είσοδος/έξοδος 2 Δεδομένα, τελεστές, είσοδος/έξοδος Τι θα δούμε σε αυτό το μάθημα 1. βασικοί τύποι δεδομένων 2. ακέραιοι 3. κινητής υποδιαστολής 4. ο τύπος decimal 5. χαρακτήρες 6. bool 7. string 8. χρήση μεταβλητών

Διαβάστε περισσότερα

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 23 ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Μάθημα 2ο Τμήμα Διοίκησης Επιχειρήσεων α εξάμηνο Β. Φερεντίνος I/O 24 Βασική βιβλιοθήκη συναρτήσεων εισόδου/εξόδου #include Η συνάρτηση εξόδου printf printf("συμβολοσειρά

Διαβάστε περισσότερα

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές. Δρ. Γιώργος Λαμπρινίδης 23/10/2015 Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές. Δρ. Γιώργος Λαμπρινίδης 23/10/2015 Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1 Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές Δρ. Γιώργος Λαμπρινίδης amprinidis@pharm.uoa.gr 1 Αριθμητικοί Τελεστές + πρόσθεση - αφαίρεση * πολλαπλασιασμός / διαίρεση Προσοχή! Διαίρεση

Διαβάστε περισσότερα

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Δεύτερη Διάλεξη Βασικά στοιχεία της γλώσσας προγραμματισμού C Μία γλώσσα προγραμματισμού όπως και μια ανθρώπινη γλώσσα μπορεί να μελετηθεί ως προς το αλφάβητό της,

Διαβάστε περισσότερα

5 &6. Τύποι δεδομένων, τελεστές και

5 &6. Τύποι δεδομένων, τελεστές και Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων 5 &6. Τύποι δεδομένων, τελεστές και αριθμητικές εκφράσεις Ιωάννης Κατάκης Σήμερα o Τύποι δεδομένων int, char, float, double o Τελεστές = + - * / % o Αριθμητικές

Διαβάστε περισσότερα

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 2 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

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

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

Διαβάστε περισσότερα

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

Διαβάστε περισσότερα

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13)

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13) Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις Επανάληψη για την ενδιάμεση εξέταση (Διάλεξη 13) 13-1 Πρόβλημα 1 Γράψετε τον ορισμό μίας συνάρτησης η οποία υπολογίζει το μέγιστο 2 ακεραίων αριθμών και

Διαβάστε περισσότερα

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 3-2

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 3-2 Εισαγωγή στην C Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Σύνταξη και Σηµασιολογία της C Σχολιασµός Μεταβλητές / Σταθερές Τύποι εδοµένων και Τελεστές Βιβλίο µαθήµατος: Chapter 2,, Sec.

Διαβάστε περισσότερα

Εισαγωγή στον προγραμματισμό. Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2

Εισαγωγή στον προγραμματισμό. Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2 Εισαγωγή στον προγραμματισμό Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2 Δομή Προγράμματος Όλα τα προγράμματα που γράψαμε έχουν λίγο πολύ την ακόλουθη μορφή: Κάποιος κώδικας εδώ main( ) {

Διαβάστε περισσότερα

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

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 ΙΣΤΟΡΙΚΑ Παρουσιάστηκε το 1970 από το Niklaus Wirth Προγενέστερη γλώσσα ήταν η Algol 60 Είναι δομημένη γλώσσα προγραμματισμού υψηλού

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 4: Τύποι Δεδομένων και τελεστές Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Συναρτήσεις εισόδου/εξόδου, τελεστές Η συνάρτηση scanf() είσοδος δεδομένων Διαβάζει από το πληκτρολόγιο (stdin) μορφοποιημένες τιμές μεταβλητών. scanf (ΣΕΙΡΑ_ΕΛΕΓΧΟΥ, δείκτης_μεταβλητής-1,

Διαβάστε περισσότερα

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 4: Τελεστές Τελεστές: Τελεστής Ανάθεσης 2 Το σύμβολο της ανάθεσης είναι το = Προσοχή: το σύμβολο ελέγχου ισότητας είναι το ==. Η μορφή των προτάσεων ανάθεσης είναι:

Διαβάστε περισσότερα

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

ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C 1 Εισαγωγή Ο προγραμματισμός είναι μια διαδικασία επίλυσης προβλημάτων με χρήση Η/Υ. Ένα πρόγραμμα είναι ένα σύνολο εντολών κάποιας γλώσσας προγραμματισμού,

Διαβάστε περισσότερα

Κεφάλαιο 2.5: Τύποι εδοµένων, Τελεστές και Αριθµητικές Εκφράσεις. ( ιαλέξεις 5-6) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Κεφάλαιο 2.5: Τύποι εδοµένων, Τελεστές και Αριθµητικές Εκφράσεις. ( ιαλέξεις 5-6) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 2.5: Τύποι εδοµένων, Τελεστές και Αριθµητικές Εκφράσεις ( ιαλέξεις 5-6) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 1 Περιεχόµενα Τύποι εδοµένων int, char, float, double Τελεστές =,+,-,*,/,% Αριθµητικές εκφράσεις

Διαβάστε περισσότερα

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ. Ενότητα 2α: Εισαγωγή στη C (Μέρος Πρώτο)

Προγραμματισμός Η/Υ. Ενότητα 2α: Εισαγωγή στη C (Μέρος Πρώτο) Προγραμματισμός Η/Υ Ενότητα 2α: Νίκος Καρακαπιλίδης, Καθηγητής Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Αναφορά στις λέξεις κλειδιά που

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Δείκτες Τι είναι ένας δείκτης (pointer); Όταν δηλώνoυμε μια μεταβλητή σε ένα πρόγραμμα

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 2: Δομή ενός προγράμματος C Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 2: ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΣΤΗ C

ΑΣΚΗΣΗ 2: ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΣΤΗ C Σκοπός της Άσκησης ΑΣΚΗΣΗ 2: ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΣΤΗ C Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας Προγραµµατισµού C: τη δοµή των προγραµµάτων της,

Διαβάστε περισσότερα

Προγραμματισμό για ΗΜΥ

Προγραμματισμό για ΗΜΥ ΕΠΛ 034: Εισαγωγή στον Προγραμματισμό για ΗΜΥ Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 3 Εισαγωγή στην C Θέματα ιάλεξης Σύνταξη και Σημασιολογία

Διαβάστε περισσότερα

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

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 ΠΕΡΙΕΧΟΜΕΝΟ ΤΟΥ ΜΑΘΗΜΑΤΟΣ Αρχές

Διαβάστε περισσότερα

Προγραμματισμός Ι. Θεματική ενότητα 3: Tελεστές. εκφράσεις

Προγραμματισμός Ι. Θεματική ενότητα 3: Tελεστές. εκφράσεις Θεματική ενότητα 3: Tελεστές εκφράσεις Τελεστές (operators) Εκφράσεις (expressions) Σύμβολα ή λέξεις που αναπαριστούν συγκεκριμένες διεργασίες, οι οποίες εκτελούνται πάνω σε ένα ή περισσότερα δεδομένα.

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

8. Συνθήκες ελέγχου, λογικοί τελεστές

8. Συνθήκες ελέγχου, λογικοί τελεστές Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων 8. Συνθήκες ελέγχου, λογικοί τελεστές Ιωάννης Κατάκης Σήμερα o Λογικές παραστάσεις Σχεσιακοί τελεστές Λογικοί τελεστές o if -else o switch Λογικές παραστάσεις

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Εισαγωγή στη C θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 2 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Εργαστήριο 2. Τµήµα Πληροφορικής και Τηλεπικοινωνιών

ΕΡΓΑΣΤΗΡΙΟ 2 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Εργαστήριο 2. Τµήµα Πληροφορικής και Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ 2 ΕΙΣΑΓΩΓΗ ΣΤΗ C Εργαστήριο 2 Τµήµα Πληροφορικής και Τηλεπικοινωνιών οµή προγράµµατος Οδηγίες προεπεξεργαστή #include... # define... τµήµα δηλώσεων ηλωσεις και ορισµοί µεταβλητών. ηλωσεις συναρτήσεων

Διαβάστε περισσότερα

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Εργαστήριο 3: 3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Η C++, όπως όλες οι γλώσσες προγραμματισμού, χρησιμοποιεί τελεστές για να εκτελέσει τις αριθμητικές και λογικές λειτουργίες.

Διαβάστε περισσότερα

Στοιχειώδης προγραμματισμός σε C++

Στοιχειώδης προγραμματισμός σε C++ Στοιχειώδης προγραμματισμός σε C++ Σύντομο Ιστορικό. Το πρόγραμμα Hello World. Ο τελεστής εξόδου. Μεταβλητές και δηλώσεις τους. Αντικείμενα, μεταβλητές, σταθερές. Ο τελεστής εισόδου. Θεμελιώδεις τύποι.

Διαβάστε περισσότερα

Εντολές εισόδου - εξόδου. Εισαγωγή στη C++

Εντολές εισόδου - εξόδου. Εισαγωγή στη C++ Εντολές εισόδου - εξόδου Εισαγωγή στη C++ Το πρώτο πρόγραμμα //my first program #include using namespace std; int main(){ cout

Διαβάστε περισσότερα

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα. Ερωτήσεις προόδου C Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα. #include // δίνει οδηγία στον compiler να // συμπεριλάβει την βιβλιοθήκη stdio int

Διαβάστε περισσότερα

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δείκτες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Τι είναι ο δείκτης Ένας δείκτης είναι μια μεταβλητή που περιέχει μια διεύθυνση μνήμης. Θυμηθείτε πως

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 9 η Χαρακτήρες Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης

Διαβάστε περισσότερα

Τύποι Δεδομένων Είσοδος/Έξοδος

Τύποι Δεδομένων Είσοδος/Έξοδος Εργαστήριο 2 ο Τύποι Δεδομένων Είσοδος/Έξοδος Εισαγωγή Σκοπός του εργαστηρίου αυτού είναι η εισαγωγή μας στους τύπους δεδομένων της C και η εξοικείωση μας με συναρτήσεις του ρεπερτορίου της ANSI C σχετικές

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

Διαβάστε περισσότερα

Κεφάλαιο 2.6: Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων Εξόδου. ( ιάλεξη 7) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Κεφάλαιο 2.6: Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων Εξόδου. ( ιάλεξη 7) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 2.6: Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων Εξόδου ( ιάλεξη 7) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 1 Είσοδος/ Έξοδος Σε σχεδόν όλα τα προγράµµατα πρέπει να πάρουµε κάποια δεδοµένα και να δώσουµε

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διαμόρφωση Ελέγχου Ροής Προγράμματος Δομημένος Προγραμματισμός Ο πιο απλός και συνηθισμένος

Διαβάστε περισσότερα

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7) Είσοδος/ Έξοδος

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7) Είσοδος/ Έξοδος Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου (Διάλεξη 7) 1 Είσοδος/ Έξοδος Σε σχεδόν όλα τα προγράμματα πρέπει να πάρουμε κάποια δεδομένα και να δώσουμε αποτέλεσμα Συνάρτηση εισόδου

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα 1 : Εισαγωγή Κώστας Κουκουλέτσος, Καθηγητής Τμήμα Η.Υ.Σ Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7)

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7) Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου (Διάλεξη 7) 1 Είσοδος/Έξοδος Σε σχεδόν όλα τα προγράμματα πρέπει να πάρουμε κάποια δεδομένα και να δώσουμε αποτέλεσμα Συνάρτηση εισόδου

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β. ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Σύνολο χαρακτήρων της Pascal Για

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Οι δείκτες στη C Η έννοια του δείκτη Την έννοια του δείκτη τη συναντήσαμε σε προηγούμενα μαθήματα. Η συνάρτηση scanf(), καταχωρίζει τιμές σε μεταβλητές χρησιμοποιώντας τον τελεστή

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Συναρτήσεις εισόδου/εξόδου, τελεστές Η συνάρτηση scanf() είσοδος δεδομένων Διαβάζει από το πληκτρολόγιο (stdin) μορφοποιημένες τιμές μεταβλητών. scanf (ΣΕΙΡΑ_ΕΛΕΓΧΟΥ, δείκτης_μεταβλητής-1,

Διαβάστε περισσότερα

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

Εισαγωγή στη γλώσσα προγραμματισμού C++ Εισαγωγή στη γλώσσα προγραμματισμού C++ Περιβάλλον Εργασίας 2 Περιβάλλον Εργασίας 1. Χρήση απλού κειμενογράφου και Μεταγλωττιστή 2. Ολοκληρωμένα Περιβάλλοντα Εργασίας (Integrated Development Environments)

Διαβάστε περισσότερα

Κεφάλαιο 2.5: Τύποι Δεδομένων, Τελεστές και Αριθμητικές Εκφράσεις. (Διαλέξεις 5-6)

Κεφάλαιο 2.5: Τύποι Δεδομένων, Τελεστές και Αριθμητικές Εκφράσεις. (Διαλέξεις 5-6) Κεφάλαιο 2.5: Τύποι Δεδομένων, Τελεστές και Αριθμητικές Εκφράσεις (Διαλέξεις 5-6) 1 Περιεχόμενα Τύποι Δεδομένων int, char, float, double Τελεστές =,+,-,*,/,% Αριθμητικές εκφράσεις a+b. 2 Τύποι Δεδομένων

Διαβάστε περισσότερα

Pascal, απλοί τύποι, τελεστές και εκφράσεις

Pascal, απλοί τύποι, τελεστές και εκφράσεις Pascal, απλοί τύποι, τελεστές και εκφράσεις 15 Νοεμβρίου 2011 1 Γενικά Στην standard Pascal ορίζονται τέσσερις βασικοί τύποι μεταβλητών: integer: Παριστάνει ακέραιους αριθμούς από το -32768 μέχρι και το

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1

Διαβάστε περισσότερα

ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β

ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β 1. (10 μον.) Απαντήστε σωστό ή λάθος στις παρακάτω ερωτήσεις (αʹ) _2togo είναι έγκυρο όνομα μεταβλητής (βʹ) Αν p είναι δείκτης στο πρώτο στοιχείο

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Δομημένος Προγραμματισμός Ενότητα 4: Εντολές ελέγχου ροής Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης

Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης Γ7.1 Επανάληψη ύλης Β Λυκείου Γ Λυκείου Κατεύθυνσης Απλά προγράμματα Ένα πρόγραμμα στη C++ που υπολογίζει το άθροισμα 2 ακέραιων αριθμών. // simple program #include using namespace std; int main(){

Διαβάστε περισσότερα

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράµµατα «γράφονται» χρησιµοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαµβάνει

Διαβάστε περισσότερα

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 4-2

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 4-2 Είσοδος / Έξοδος Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Συνάρτηση εξόδου printf Συνάρτηση εισόδου scanf Βιβλίο µαθήµατος: Chapter 2,, Sec. 3 & 6 ΕΠΛ 131 Αρχές Προγραµµατισµού I 4-1 Είσοδος

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 3ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΕΚΤΥΠΩΣΗ ΚΕΙΜΕΝΟΥ Ένα κείμενο μπορεί να εκχωρηθεί ως τιμή μιας μεταβλητής

Διαβάστε περισσότερα

Visual Basic Βασικές Έννοιες

Visual Basic Βασικές Έννοιες Visual Basi Βασικές Έννοιες «Είδα στον ύπνο µου ότι η ζωή είναι χαρά. Ξύπνησα και είδα ότι είναι χρέος. Αγωνίστηκα και είδα ότι τo χρέος είναι χαρά.» Ραµπριτανάθ Ταγκόρ Κουλλάς Χρίστος www.oullas.om oullas

Διαβάστε περισσότερα

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

Περιεχόμενα. Κεφάλαιο 2.5: Τύποι Δεδομένων, Τελεστές και Αριθμητικές Εκφράσεις. (Διαλέξεις 5-6) Τύποι Δεδομένων. Τελεστές. Αριθμητικές εκφράσεις

Περιεχόμενα. Κεφάλαιο 2.5: Τύποι Δεδομένων, Τελεστές και Αριθμητικές Εκφράσεις. (Διαλέξεις 5-6) Τύποι Δεδομένων. Τελεστές. Αριθμητικές εκφράσεις Κεφάλαιο 2.5: Τύποι Δεδομένων, Τελεστές και Αριθμητικές Εκφράσεις (Διαλέξεις 5-6) 1 Περιεχόμενα Τύποι Δεδομένων int, char, float, double Τελεστές =,+,-,*,/,% Αριθμητικές εκφράσεις a+b. 2 1 Τύποι Δεδομένων

Διαβάστε περισσότερα

Περιεχόμενα. Πρόλογος... 21

Περιεχόμενα. Πρόλογος... 21 Περιεχόμενα Πρόλογος... 21 Κεφάλαιο 1: Εισαγωγή στον προγραμματισμό... 25 Εισαγωγή...27 Πώς να διαβάσετε αυτό το βιβλίο...27 Η δομή των κεφαλαίων...28 Γιατί να μάθω προγραμματισμό;...31 Γιατί να μάθω C;...31

Διαβάστε περισσότερα

Εισαγωγή στον δομημένο προγραμματισμό

Εισαγωγή στον δομημένο προγραμματισμό Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στον δομημένο προγραμματισμό Ενότητα 7 η : Δείκτες Αν. καθηγητής Στεργίου Κώστας e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 2010-11 1 Μεταβλητές-Σταθερές-Παράμετροι Τα στοιχεία

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16

Διαβάστε περισσότερα