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

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

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

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

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

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

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

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

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

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

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

Ηλεκτρονικοί Υπολογιστές

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Δεδομένα, Τύποι και Τιμές

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

Προγραμματισμός H/Y Ενότητα 1: Εισαγωγή. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

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

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

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

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

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

Κεφάλαιο : Εισαγωγή στην C: (Διαλέξεις 3-4)

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

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

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

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

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

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

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

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

Γλώσσα Προγραμματισμού C

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

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

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

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

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

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

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

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

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

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

C Programming EPL032 Maria Stavrinou Ioannou Εισαγωγή στη Γλώσσα C

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

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

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

ΕΠΛ 032.3: Προγραµµατισµός ΜεθόδωνΕπίλυσηςΠροβληµάτων

Μεταγλωττιστές. Ενότητα 6: Λεκτική ανάλυση (Μέρος 2 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

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

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

3 &4. Εισαγωγήστη C Ιωάννης Κατάκης

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

Οντοκεντρικός Προγραμματισμός

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

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

Κεφάλαιο : Εισαγωγή στην C. ( ιαλέξεις 3-4) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

Διδάσκων: Δημήτριος Βαρσάμης

Προγραμματισμός H/Y Ενότητα 4: Δείκτες. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

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

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

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

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

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

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

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

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

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

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

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

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

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

Προγραμματισμός I (Θ)

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

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

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

Ενδεικτική περιγραφή μαθήματος

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

Απλά Προγράμματα. Βήματα: 1. Καθορισμός παράστασης δεδομένων στη μνήμη 2. Αλγόριθμος βήματα που περιγράφουν την επεξεργασία των δεδομένων

Ηλεκτρονικοί Υπολογιστές

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

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

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο

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

Λογικό "και" (AND) μας επιστρέφει 1 αν και οι δύο operands είναι όχι μηδέν, διαφορετικά 0)

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

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

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

Transcript:

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

Σκοποί Ενότητας Να αποσαφηνίσετε εισαγωγικές έννοιες που καλύπτουν τις γλώσσες C και C++ Να κατανοήσετε τη μεθοδολογία συγγραφής και εκτέλεσης ενός προγράμματος σε γλώσσα προγραμματισμού C. 4

Περιεχόμενα ενότητας Η γλώσσα C: εισαγωγικά To Πρόγραμμα: Ανάλυση και Καλές Πρακτικές Μνήμη του Η/Υ Στοιχεία της Γλώσσας C++: Λεξιλόγιο και Αναγνωριστικά 5

Σχόλια Σχόλια (comments) μπαίνουν και μέσα στο πρόγραμμα ώστε ο κώδικας να γίνεται ευανάγνωστος Τα σχόλια αγνοούνται από τον μεταγλωττιστή όμως η χρησιμότητά τους είναι μεγάλη Υπάρχουν δύο τρόποι γραφής σχολίων 1) Το σχόλιο ξεκινά αμέσως μετά τους χαρακτήρες /* και τελειώνει πριν τους χαρακτήρες */. Ένα τέτοιο σχόλιο μπορεί να επεκτείνεται σε περισσότερες από μία γραμμές στο πρόγραμμα 2) Το σχόλιο καταλαμβάνει μία γραμμή και μόνο και ξεκινά αμέσως μετά τους χαρακτήρες // και τελειώνει εκεί που τελειώνει και η γραμμή

Σχόλια (Παράδειγμα) #include <stdio.h> /*********************************************** ** PROJECT: No2 ** AUTHOR: Kostas Kostopoulos ** DATE: 19/2/2013 ***********************************************/ #include <stdio.h> //xrisi include int main ( ) { printf ("Tei Peirea "); /*emfanisi stin othoni*/ getch(); return 0; }

Καλές πρακτικές παρουσίασης προγράμματος (1/2) Το πρώτο πρόγραμμα που είδαμε είχε την παρακάτω εμφάνιση

Καλές πρακτικές παρουσίασης προγράμματος (2/2) Θα μπορούσε να είχε γραφτεί με τον παρακάτω τρόπο και το πρόγραμμα να εκτελείται κανονικά και να εμφανίζει το σωστό αποτέλεσμα Ακόμη και ένα τόσο μικρό πρόγραμμα είναι δύσκολο στο διάβασμα και στην κατανόηση

Παράδειγμα προς Αποφυγή Το πρόγραμμα μεταγλωττίζεται και τρέχει χωρίς λάθος.

Καλές πρακτικές παρουσίασης προγράμματος Κάθε πρόγραμμα αρχίζει με κάποια σχόλια Σχόλια μπαίνουν και μέσα στο πρόγραμμα ώστε ο κώδικας να γίνεται ευανάγνωστος Χρησιμοποιούμε εσοχές για καλύτερη αναγνωσιμότητα του προγράμματος Οι εσοχές είναι σύμφωνα με ισχύοντες πρακτικές Απλότητα στον προγραμματισμό και να αποφεύγεται η χρήση δύσκολου κώδικα

Η Μνήμη του Υπολογιστή (1/2) Η μνήμη αποτελείται από bytes στα οποία αποθηκεύονται δεδομένα. Μία μεταβλητή καταλαμβάνει ένα χώρο στην μνήμη που εξαρτάται από το είδος της μεταβλητής. Το όνομα της μεταβλητής αποτελεί ένα εύκολο τρόπο χειρισμού των δεδομένων ενός προγράμματος Παράδειγμα» int a;» int b;» scanf( %b %b,a, b);

Η Μνήμη του Υπολογιστή (2/2) Μία μεταβλητή τύπου int καταλαμβάνει 4 bytes. Σχηματικά μπορούμε να αναπαραστήσουμε την εντολή με τον παρακάτω τρόπο Μία γλώσσα προγραμματισμού μας παρέχει ένα εύκολο τρόπο να προσπελάσουμε την μνήμη του υπολογιστή με τα ονόματα των μεταβλητών. Είναι ευθύνη του μεταγλωττιστή (compiler) να θυμάται τις διευθύνσεις με τα ονόματα των μεταβλητών. Ουσιαστικά τα ονόματα είναι συντομεύσεις για τις διευθύνσεις ώστε ο προγραμματιστής να δουλεύει πιο εύκολα.

Τελεστής & Ενώ ο προγραμματιστής δεν χρειάζεται να ασχολείται με τον αποθήκευση των δεδομένων και την διεύθυνση που θα αποθηκευτεί ο αριθμός η εισαγωγή δεδομένων, όπως θα δούμε αμέσως μετά, απαιτεί την χρήση αυτής της διεύθυνσης. Η διεύθυνση που αποθηκεύεται μία μεταβλητή, πιο συγκεκριμένα η διεύθυνση του πρώτου byte που καταλαμβάνει η μεταβλητή βρίσκεται με την χρήση του συμβόλου διεύθυνσής που είναι το & Στο περασμένο παράδειγμα οι διευθύνσεις των δύο μεταβλητών είναι οι &α και &b Αν στο πρόγραμμα εμφανίσουμε τις διευθύνσεις των &a &b θα εμφανιζόταν οι δεκαεξαδικοί αριθμοί 22ff28 και 22ff2c αντίστοιχα ενώ αν εμφανίσουμε τους αριθμούς α και b θα εμφανιζόταν οι αριθμοί 10 και 20

Παράδειγμα Στο παρακάτω πρόγραμμα λέμε στον υπολογιστή να δεσμεύσει 3 θέσεις μνήμης για να αποθηκευτούν ακέραιοι αριθμοί. Αυτές οι 3 θέσεις μνήμης ονομάζονται num1, nun2 και sinolo. Η εντολή scanf διαβάζει από το πληκτρολόγιο ένα ακέραιο αριθμό που ο προγραμματιστής ονομάζει num1 και τον αποθηκεύει στην διεύθυνση &num1. Το ίδιο γίνεται και για τον αριθμό με όνομα num2.

To πρόγραμμα (1/2) #include <stdio.h> main() { int num1, num2, sinolo; printf("programma Prostesis 2 arithmon\n\n"); printf("dose ton 1o arithmo = "); scanf("%d", &num1); printf("o arithmos pou edose einai %d\n", num1); printf("h dieftinsi einai = %x\n\n", &num1);

To πρόγραμμα (2/2) printf("dose ton 2o arithmo = "); scanf("%d", &num2); printf("o arithmos pou edose einai %d\n", num2); printf("h dieftinsi einai = %x\n\n", &num2); sinolo = num1 + num2; printf("to athroisma einai = %d\n\n", sinolo); } system("pause"); return 0;

To αλφάβητο της C++ H γλώσσα προγραμματισμού C++ χρησιμοποιεί τους παρακάτω χαρακτήρες: Μικρά a, b, c,, z και κεφαλαία A, B, C,, Z Ψηφία 0, 1, 2,, 9 Ειδικούς χαρακτήρες + = - /( ) * & % $ #! ~ \ ^ < >., ; :? { } [ ] _ Κενό διάστημα που είναι οι χαρακτήρες κενό, κενή γραμμή, ο χαρακτήρας tab (αγνοούνται από τον compiler)

Στοιχεία της Γλώσσας C Αλφάβητο Λεξιλόγιο Μεταβλητές Αναγνωριστικά Δεδομένα

Το λεξιλόγιο της C Σε ένα πρόγραμμα της C διακρίνονται τα παρακάτω στοιχεία: Σχόλια (comments) Λέξεις κλειδιά (reserved words) Αναγνωριστικά (identifiers) Μεταβλητές (variables) και Σταθερές (constants) Συμβολοσειρές (strings) Τελεστές (operators) Σημεία στίξης και διαχωριστές (punctuators & separators)

Λέξεις κλειδιά-δεσμευμένες λέξεις Είναι οι λέξεις που χρησιμοποιεί η γλώσσα C για ειδικό σκοπό Τέτοιες λέξεις δεν μπορούν να οριστούν ξανά από τον προγραμματιστή σαν ονόματα και χρησιμοποιούνται αποκλειστικά για τον σκοπό που καθορίζει η C Στην ANSI C σαν δεσμευμένες λέξεις θεωρούνται οι : auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while Σε άλλες εκδόσεις της C υπάρχουν και άλλες λέξεις που είναι δεσμευμένες

Αναγνωριστικά (identifiers) Ένα αναγνωριστικό (identifier) είναι ένα όνομα που ταυτοποιεί ένα αντικείμενο Στον προγραμματισμό τα αναγνωριστικά χρησιμοποιούνται για να ταχτοποιήσουν και για να δώσουν ένα όνομα σε μεταβλητές, σταθερές, συναρτήσεις, τύπους δεδομένων κλπ.

Κανόνες σχηματισμού αναγνωριστικών Ισχύουν οι παρακάτω κανόνες To αναγνωριστικό μπορεί να αποτελείται από γράμματα μικρά και κεφαλαία του Αγγλικού αλφαβήτου, ψηφία και τον χαρακτήρα υπογράμμισης _ (underscore) Το όνομα δεν περιέχει κενά Ο πρώτος χαρακτήρας πρέπει να είναι γράμμα ή ο χαρακτήρας υπογράμμισης _ και όχι ψηφίο Δεν επιτρέπεται η χρήση δεσμευμένων λέξεων (keywords) οι οποίες χρησιμοποιούνται από την C (πχ main, double, this κλπ) Τα αναγνωστικά είναι case sensitive δηλαδή υπάρχει διαφορά μεταξύ κεφαλαίων και μικρών γραμμάτων

Αναγνωριστικά ονόματα - Παραδείγματα Καλό είναι τα ονόματα να είναι τα ονόματα να έχουν σχέση με την μεταβλητή που αντιπροσωπεύουν. Με τον τρόπο αυτό το πρόγραμμα γίνεται πιο ευανάγνωστο πχ. plithos, poso, pososto, perimetros, fpa,anoorio, KatoOrio.. Ονόματα μη αποδεκτά 1num, poso-forou, φπα Υπάρχει διαφορά μεταξύ κεφαλαίων και μικρών Poso poso

Μεταβλητές στην C (1/2) Είναι στοιχείο για την επεξεργασία δεδομένων. Χρησιμοποιείται για να συμβολίσει μία θέση στην μνήμη του υπολογιστή στην οποία είναι καταχωρημένο το περιεχόμενο της μεταβλητής. Κάθε μεταβλητή έχει: 1. όνομα 2. τύπο 3. τιμή Παράδειγμα» int a;» int b=23; Προϋπόθεση για την χρήση μίας μεταβλητής είναι η δήλωση της μεταβλητής

Μεταβλητές στην C (2/2) Οι μεταβλητές αναπαριστάνουν οντότητες του συγκεκριμένου προβλήματος με το οποίο ασχολείται και προσπαθεί να επιλύσει ο προγραμματιστής πχ Υπολογισμός μέσου όρου 2 βαθμών θεωρία και εργαστηρίου Οντότητες: βαθμός θεωρίας, βαθμός εργαστηρίου μέσος όρος Δήλωση μεταβλητών:» float vtheo, verg;» float Mesos; Με την δήλωση μίας μεταβλητής παραχωρείται και ένας αριθμός θέσεων στην μνήμη του υπολογιστή Ο αριθμός θέσεων στην μνήμη του υπολογιστή εξαρτάται από τον τύπο της μεταβλητής

Τύποι δεδομένων (1/2) Ένας τύπος δεδομένων είναι ένα πεδίο τιμών καθώς και το σύνολο των πράξεων που επιτρέπεται στις τιμές αυτές Οι τύποι δεδομένων χωρίζονται σε δύο μεγάλες κατηγορίες: Βασικούς (fundamental) τύπους δεδομένων Integer types Floating Type Character types

Τύποι δεδομένων (2/2) Παραγόμενους (derived) τύπους δεδομένων Arrays Pointers Structures Enumeration Με την χρήση διαφόρων τύπων δεδομένων επιτυγχάνεται καλύτερος έλεγχος του προγράμματος και οικονομία χώρου που καταλαμβάνουν οι μεταβλητές

Floating Πραγματικού τύπου (κινητής υποδιαστολής) float Tύπος Μέγεθος Τιμές double 4 byte 8 byte long double 10 byte 1.2E-38 έως 3.4E+38 2.3E-308 έως 1.7E+308 3.4E-4932 έως 1.1E+4932 Ακρίβεια σε δεκαδικά ψηφία 6 15 19 Ο πίνακας εμφανίζει τους τύπους δεδομένων που είναι πραγματικοί το μέγεθος που καταλαμβάνουν στην μνήμη του υπολογιστή και το πεδίο τιμών που μπορεί να πάρει ο τύπος.

Integer Ακεραίου τύπου Ο παρακάτω πίνακας εμφανίζει τους τύπους δεδομένων που είναι ακέραιοι το μέγεθος που καταλαμβάνουν στην μνήμη του υπολογιστή και το πεδίο τιμών που μπορεί να πάρει ο τύπος. Tύπος Μέγεθος Τιμές char 1 byte -128 έως 127 ή 0 έως 255 unsigned char 1 byte 0 έως 255 signed char 1 byte -128 έως 127 int unsigned int 2 ή 4 bytes 2 ή 4 bytes -32,768 έως 32,767 ή -2,147,483,648 έως 2,147,483,647 0 έως 65,535 or 0 έως 4,294,967,295 short 2 bytes -32,768 έως 32,767 unsigned short 2 bytes 0 έως 65,535 long 4 bytes -2,147,483,648 έως 2,147,483,647 unsigned long 4 bytes 0 έως 4,294,967,295

Δηλώσεις μεταβλητών Δηλώνονται σε οποιοδήποτε σημείο του προγράμματος αρκεί να γίνει η δήλωση πριν από την χρήση» float a,b,c;» int fpa= 18, kefalaio=100000;» int totalfpa;» foros=kefalaio*fpa/100.;» int ipoloipo;» ipoloipo=kefalaio-foros; Στο παραπάνω παράδειγμα υπάρχουν δηλώσεις ακεραίων και πραγματικών μεταβλητών με ταυτόχρονη εκχώρηση τιμών σε κάποιες περιπτώσεις Δηλώσεις για μεταβλητές του ιδίου τύπου μπορούν να γίνουν στην ίδια γραμμή.

Μεταβλητές που παραμένουν σταθερές (1/3) Εάν θέλουμε η τιμή μιας μεταβλητής να μην αλλάξει κατά την εκτέλεση τότε χρησιμοποιούμε το πρόθεμα const (από τη λέξη constant, σταθερά) πριν τον τύπο δεδομένων της μεταβλητής και ταυτόχρονα εκχωρείται και μία τιμή στην σταθερά παράδειγμα» int main ( )» {» const int fpa=23;» const int x = 3;» } Στο παραπάνω παράδειγμα Σε περίπτωση που ο προγραμματιστής προσπαθήσει με μία εντολή να αλλάξει την τιμή ο επεξεργαστής εμφανίζει μήνυμα λάθους.

Μεταβλητές που παραμένουν σταθερές (2/3) Το ίδιο επιτυγχάνεται και με την οδηγία #define προς τον pre-processor Ο προ-επεξεργαστής μας επιτρέπει να ορίσουμε συμβολοσειρές οι οποίες κατά την διάρκεια εκτέλεσης του, αντικαθίστανται με τις εκάστοτε τιμές.» #define FPA 18 //xoris ; sto telos kai xori ekxorisi» #define PI 3.1415926535897932384626433832795

Μεταβλητές που παραμένουν σταθερές (2/3) Παράδειγμα» int main ( )» {» float rad,emvado;» const float PI=3.1415 ;» printf("dose aktina tou kiklou" );» scanf("%f", &rad);»» emvado = PI * rad * rad ;» printf("%.3f\n",emvado);»» system ("PAUSE");» return 0;» } Συνηθίζεται αυτού του τύπου οι σταθερές να έχουν ονόματα με κεφαλαία.

Τέλος Ενότητας