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

Σχετικά έγγραφα
Προγραμματισμός Η/Υ (ΤΛ2007 )

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Πληροφορική 2. Αλγόριθμοι

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

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

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

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

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

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

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

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

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

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

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

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

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

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

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

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

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

Υπολογισμός - Εντολές Ελέγχου

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

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

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

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

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

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

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

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

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

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 3 η : Επίλυση Προβληµάτων Χειµερινό Εξάµηνο 2011

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

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

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

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

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

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

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

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

ΑΕΠΠ Ερωτήσεις θεωρίας

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

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

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

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

ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ

Αλγόριθμοι. Χρυσόστομος Στύλιος. Εργαστήριο Γνώσης και Ευφυούς Πληροφορικής. Δομές Δεδομένων & Αλγόριθμοι 1

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

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

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ ΚΕΦΑΛΑΙΟ 2 ο ΚΕΦΑΛΑΙΟ 7 ο ΕΡΩΤΗΣΕΙΣ ΓΕΝΙΚΑ ΠΕΡΙ ΑΛΓΟΡΙΘΜΩΝ

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

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

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

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

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

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

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

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

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

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

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

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

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο. Επικοινωνία:

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ - ΕΙΣ

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ - ΓΛΩΣΣΑ

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

Επανάληψη για τις Τελικές εξετάσεις. (Διάλεξη 24) ΕΠΛ 032: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 2 : Αλγόριθμοι. Δρ. Γκόγκος Χρήστος

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 5 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

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

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

Πληροφορική. Ενότητα 4 η : Κωδικοποίηση & Παράσταση Δεδομένων. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

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

Transcript:

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής Εφαρμογών (npet@chania.teicrete.gr) Δεύτερη (2 η ) τρίωρη διάλεξη. Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/courses/el106 Εξάμηνο: Χειμερινό 2018-19

Μετατροπή πραγματικού αριθμού από το δεκαδικό σύστημα σε οποιοδήποτε άλλο (1) Α τρόπος: Πολλαπλασιάζουμε ολόκληρο τον αρχικό αριθμό (μαζί με το τμήμα δεξιά της υποδιαστολής) με τη βάση του δευτέρου συστήματος αρίθμησης τόσες φορές, όσα ψηφία επιθυμούμε να έχουμε μετά την υποδιαστολή. Κατόπιν, εκτελούμε τη μετατροπή κανονικά μόνο του ακέραιου τμήματος του γινομένου που βρήκαμε σαν αποτέλεσμα. Μετά την μετατροπή δεν πρέπει να ξεχάσουμε να βάλουμε την υποδιαστολή στη σωστή θέση, μετρώντας τα ψηφία ακρίβειας του τμήματος δεξιά της υποδιαστολής. 9/10/2018 "Δομημένος Προγραμματισμός", Ν.Πετράκης, Τ.Ε.Ι. Κρήτης 2

Μετατροπή πραγματικού αριθμού από το δεκαδικό σύστημα σε οποιοδήποτε άλλο (2) Β τρόπος: Μετατρέπουμε χωριστά το ακέραιο τμήμα όπως ήδη γνωρίζουμε και χωριστά το δεκαδικό τμήμα (το τμήμα δεξιά της υποδιαστολής) του αριθμού. Για τη μετατροπή του δεκαδικού τμήματος το πολλαπλασιάζομε με τη βάση του νέου συστήματος διαδοχικά, παίρνοντας κάθε φορά το ακέραιο τμήμα του κάθε γινομένου σχηματίζοντας έτσι τα ψηφία του αριθμού μετά την υποδιαστολή. Π.χ. Να μετατραπεί ο αριθμός 330,525 (10) του δεκαδικού συστήματος αρίθμησης στο δυαδικό σύστημα αρίθμησης με τρία ψηφία ακρίβεια μετά την υποδιαστολή. Κάντε αρκετά παραδείγματα, όπως αυτά που δείξαμε στον πίνακα. Ασφαλώς μπορείτε να τα συμπεριλάβετε και στο τετράδιο ασκήσεων. 9/10/2018 "Δομημένος Προγραμματισμός", Ν.Πετράκης, Τ.Ε.Ι. Κρήτης 3

Τύποι Δεδομένων Τύπος δεδομένου είναι ο συνδυασμός από: (α) ένα σύνολο τιμών που παίρνει το δεδομένο, και (β) το σύνολο των ιδιοτήτων αυτών των τιμών. Απλοί ή στοιχειώδεις τύποι δεδομένων: α) ακέραιος τύπος (integer) β) πραγματικός τύπος (real) γ) λογικός τύπος (boolean) δ) χαρακτήρες (characters) Σύνθετοι τύποι είναι αυτοί που ορίζονται από άλλους τύπους, απλούς ή σύνθετους. 4

Τι είναι αλγόριθμος; Αλγόριθμος είναι μια ακολουθία από αυστηρά καθορισμένα βήματα που έχει σκοπό την καθοδήγηση προκειμένου να διεκπεραιωθεί μια εργασία. Αποτελεί δηλαδή τις οδηγίες που πρέπει να εκτελεστούν και υποδεικνύει την ακριβή σειρά. Στην διατύπωση ενός αλγορίθμου θα πρέπει να ορίζεται με σαφήνεια η αρχή και το τέλος της ακολουθίας των βημάτων που αφορούν την διεκπεραίωση της συγκεκριμένης εργασίας, που η ίδια μπορεί να αποτελεί μέρος μιας ευρύτερης διαδικασίας. 5

Κανόνες στη σύνταξη αλγορίθμων Κάθε βήμα να είναι σαφώς διαχωρισμένο από τα υπόλοιπα, Κάθε ένα βήμα να αποτελείται από μία ή από περισσότερες στοιχειώδεις ενέργειες, οι οποίες αναφέρονται με τη σειρά που πρόκειται να πραγματοποιηθούν, Μια στοιχειώδης ενέργεια εκφράζεται με ένα ρήμα και ένα αντικείμενο, Τα βήματα πρέπει να προβλέπουν κάθε ενδεχόμενο, Το σύνολο των βημάτων να ολοκληρώνει την εργασία. 6

Αλγοριθμικές δομές Ακολουθιακή δομή Δομή ελέγχου Δομή επανάληψης Συνήθως οι αλγόριθμοι στην πληροφορική περιγράφονται είτε με ψευδοκώδικα είτε με διαγράμματα ροής (flowcharts). 7

Ακολουθιακή δομή Απλή διαδοχή βημάτων στην οποία τα βήματα εκτελούνται με τη σειρά που περιγράφονται. Η ροή εκτέλεσης μιας ακολουθιακής δομής αποδίδεται παραστατικά με ένα διάγραμμα ροής σαν το διπλανό. Βήμα 1 Βήμα 2 Βήμα 3 8

Δομή ελέγχου ΑΝ ΤΟΤΕ όπου ελέγχεται η κατάσταση κάποιας συνθήκης (αληθής ή ψευδής) και ανάλογα εκτελείται ή όχι μια ομάδα εντολών. Βήμα 1 Έλεγχος συνθήκης Α Ψ Ομάδα 1 Βήμα 2 Βήμα 3 9

Δομή ελέγχου (2) ΑΝ ΤΟΤΕ ΔΙΑΦΟΡΕΤΙΚΑ όπου ελέγχεται η κατάσταση κάποιας συνθήκης και ανάλογα εκτελείται μια ομάδα εντολών ή μια εναλλακτική ομάδα εντολών. Βήμα 1 Α Έλεγχος συνθήκης Ψ Βήμα 2 Ομάδα 1 Ομάδα 2 Βήμα 3 10

Δομή επανάληψης Τα επαναλαμβανόμενα βήματα εκτελούνται ξανά αν η συνθήκη είναι αληθής. Προηγούμενο βήμα Ο έλεγχος της συνθήκης μιας δομής επανάληψης μπορεί να έπεται των εντολών του βρόχου ή Α Επαναλαμβανόμενα βήματα Έλεγχος συνθήκης Ψ Επόμενο βήμα 11

Δομή επανάληψης (2) Αν η συνθήκη είναι αληθής εκτελούνται ξανά τα επαναλαμβανόμενα βήματα. Προηγούμενο βήμα να προηγείται των εντολών του βρόχου. Έλεγχος συνθήκης Ψ Α Επαναλαμβανόμενα βήματα Επόμενο βήμα 12

Η εξέλιξη των υπολογιστών 1950 1960 1970 1980 1990 2000 2010 1 η γενιά 2 η γενιά 3 η γενιά 4 η γενιά 5 η γενιά 1η γενιά 1950 1959: ηλεκτρονικές λυχνίες, τεράστιος όγκος, αναξιοπιστία, μεγάλη κατανάλωση (50.000 200.000 πράξεις/s) 2 η γενιά 1959 1963: χρήση ημιαγωγών στην κατασκευή λογικών κυκλωμάτων, transistors, σιδηρομαγνητικές μνήμες, πρωτόγονα λειτουργικά συστήματα, (50.000 200.000 πράξεις/sec) 13

Η εξέλιξη των υπολογιστών (2) 3 η γενιά 1963 1970: λειτουργικά συστήματα, αύξηση υπολογιστικής ισχύος, ολοκληρωμένα κυκλώματα (SSI, MSI, LSI), μείωση όγκου, μείωση κόστους 4 η γενιά 1971 1985: εμφάνιση Basic, Pascal, πολλοί επεξεργαστές (multiprocessor), IC 200.000 transistors σε 10 mm 2 5 η γενιά μετά το 1985: ολοκληρωμένα κυκλώματα (VLSI, WSI), ταχύτητα μεγαλύτερη 10 20 εκατομμύρια εντολές / sec, προσανατολισμένα στη τεχνητή νοημοσύνη και στα έμπειρα συστήματα 14

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

Η γλώσσα προγραμματισμού C Η C είναι μια γλώσσα προγραμματισμού γενικής χρήσης που χαρακτηρίζεται από οικονομία στην έκφραση, σύγχρονη ροή ελέγχου και δομές δεδομένων, καθώς και από ένα πλούσιο σύνολο τελεστών. Δημιουργήθηκε από τον Dennis Ritchie στα Bell Labs USA to 1972. Δημιουργήθηκε για τη σχεδίαση του λειτουργικού συστήματος UNIX και εφαρμόστηκε σ ένα PDP-11. Έτυχε καλής αποδοχής και είχε γρήγορη εξάπλωση. Το Αμερικανικό Εθνικό Ινστιτούτο Προτύπων (American National Standards Institute - ANSI) δημιούργησε ένα πρότυπο της C γνωστό ως ANSI - C το 1988. 16

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

Η γλώσσα προγραμματισμού C (3) Ο κώδικας της C μπορεί (και πρέπει) να γραφεί σε ρουτίνες που λέγονται συναρτήσεις. Η C++ (αντικειμενοστρεφής ή object oriented) είναι υπερσύνολο της C. Όσα ισχύουν στη C, ισχύουν και στη C++. Συναρτήσεις σε C μπορούν να χρησιμοποιηθούν ξανά σε άλλες εφαρμογές. Με εφόδιο τη C αποκτάτε ισχυρά θεμέλια για εκμάθηση άλλων γλωσσών προγραμματισμού όπως Java, C#, C++, κτλ. 18

Ένα πρόγραμμα της C αποτελείται από: -Συναρτήσεις (functions) - main() και άλλες -Μεταβλητές (variables) - ή/και σταθερές (constants) -Εντολές (instructions) - ή/και κλήσεις συναρτήσεων -Οδηγίες (directives) - όπως π.χ.: #include <stdio.h> 19

Τύποι δεδομένων και προσδιοριστές που υποστηρίζει η γλώσσα C Ακέραιοι short int ή short μικρός ακέραιος 16 bits int μεσαίος ακέραιος 16 ή 32 long int ή long μεγάλος ακέραιος 32 bits Πραγματικοί (Κινητής Υποδιαστολής) float Κ.Υ. απλής ακρίβειας 32 bits double Κ.Υ. διπλής ακρίβειας 64 bits long double Κ.Υ. εκτεταμένης ακρίβειας 80 bits Χαρακτήρες (characters) unsigned char ή char 8 bits signed char 8 bits 20

Τα όρια των τιμών για τους διάφορους συνδυασμούς τύπων ακέραιων unsigned char ή σκέτο char με τιμές στο διάστημα [0, 255] signed char - >> - [-128, +127] signed short int ή signed short ή short [-32.768, +32.767] unsigned short int ή unsigned short [0, 65.535] signed long int ή long ή int [ 2.147.483.648, +2.147.483.647] unsigned long int ή unsigned long ή unsigned int [0, 4.294.967.295] 21

Αναπαράσταση των σταθερών στην C Ακέραια σταθερά 1234 ή 1234l ή 1234L long (int) (δεκαδικό) 1234u ή 1234U unsigned (απρόσημη) 1234ul ή 1234UL unsigned long σταθερά 01234 οκταδικό (αν αρχίζει με μηδέν 0 ) 0x1234 ή 0Χ1234 δεκαεξαδικό 0b01101 ή 0B01101 δυαδικό Π.χ. 31 = 037 = 0x1f ή 0X1F = 0b11111 ή 0B11111 22

Αναπαράσταση των σταθερών στην C Πραγματική σταθερά 123.45 ή 12345e-2 σταθερά κινητής υποδιαστολής μεσαίου μεγέθους (double) εκτός αν ακολουθείται από f ή F, οπότε θα είναι float, ή l ή L οπότε long double Σταθερά χαρακτήρα Α b x ισούται με την τιμή ASCII, δηλ. A 65, b 98, 0 48, 2 50 κλπ \οοo οκταδικά ψηφία που καθορίζουν διάταξη bit μεγέθους ενός byte ή \xhh για δεκαεξαδικά 23

Αναπαράσταση των σταθερών στην C Αλφαριθμητική σταθερά ή συμβολοσειρά (string) Οριοθετούνται από τους διπλούς αποστρόφους π.χ. Computer C o m p u t e r \0 0 1 2 3 4 5 6 7 8 Υλοποιούνται με πίνακες χαρακτήρων, όπου μετά τον τελευταίο χαρακτήρα πρέπει να υπάρχει ο μηδενικός χαρακτήρας `\0`. Μήκος μιας αλφαριθμητικής ακολουθίας λέγεται το πλήθος των χαρακτήρων που την αποτελούν, χωρίς τον μηδενικό χαρακτήρα. Πχ. το μήκος του Computer ισούται με 8, ενώ το μήκος του ισούται με 0 (empty string). Στην C δεν υπάρχει περιορισμός στο μήκος των συμβολοσειρών. 26

Εντολή ελέγχου if Συντάσσεται ως εξής: if (παράσταση ή συνθήκη) εντολή1; else εντολή2; 27

Παράδειγμα με if else Να γίνει πρόγραμμα το οποίο να διαβάζει ένα ακέραιο από το πληκτρολόγιο και να εμφανίζει το κατάλληλο μήνυμα ανάλογα με το αν είναι άρτιος ή περιττός. #include <stdio.h> #include <stdlib.h> main() { int a; printf ("Give an integer : "); scanf ("%d", &a); if (a%2==0) printf("the integer %d is even.\n", a); else printf("the integer %d is odd.\n", a); system("pause"); return 0; } Give an integer : 25 The integer 25 is odd. Press any key to continue... Give an integer : 36 The integer 36 is even. Press any key to continue... 28

Όταν αποκτήσετε άνεση θα μπορείτε να χρησιμοποιείτε και ελληνικούς χαρακτήρες στα μηνύματά σας, και στα σχόλια, όπως π.χ.: /* Πρόγραμμα που εμφανίζει αν ο ακέραιος που δόθηκε είναι άρτιος ή περιττός */ main() { int ak; printf("δώστε ακέραιο : "); scanf ("%d", &ak); if (ak%2==0) printf("δόθηκε ο άρτιος %d\n", ak); else printf("δόθηκε ο περιττός %d\n", ak); } Μην ξεχνάτε να στοιχίζετε σωστά τον κώδικά σας 29