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

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

Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή

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

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

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

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

Εξοικ Εξ ε οικ ίωση ε με το το πρόγ ραμμα πρόγ DEV C++ Επικοι Επικ νωνία οι Χρήσ Χρήστη τη Υπολ Υπο ογισ λ τή

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

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

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

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

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

Η βασική συνάρτηση προγράμματος main()

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

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

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

Ηβασικήσυνάρτηση προγράμματος main()

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

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

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

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

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

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

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

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

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

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

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

scanf() scanf() stdin scanf() printf() int float double %lf float

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

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

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

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

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

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

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

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

ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ. for (παράσταση_1; παράσταση_2; παράσταση_3) εντολή επόμενη εντολή

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

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

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

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

int abs( int x ), επιστρέφει την απόλυτη τιμή του ακεραίου x Πχ abs( 11) ισούται με 11, abs(34) ισούται με 34 double fb( fabs( double x ), επιστρέφει

Πίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα "Αλφαριθμητικά"

ΑΡ Χ Ε Ι Α Κ Ε Ι Μ Ε Ν Ο Υ (text files)

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

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

ΑΣΚΗΣΗ 1: TO ΠΕΡΙΒΑΛΛΟΝ ΕΡΓΑΣΙΑΣ DEV-C++

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

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

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

Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου

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

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

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

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

Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf("%u\n", x); Β. unsigned char

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

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

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

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

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

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

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

1η+2η εβδομάδα. 1 Ιστορία της C. 5 Μαρτίου 2012

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

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών

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

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

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

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

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

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

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Τύποι δεδομένων, μεταβλητές, πράξεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

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

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

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

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

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

Η Γλώσσα C Μία Σφαιρική Ανασκόπηση

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

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

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

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

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

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

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

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

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

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

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

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

Προγραμματισμός Ι (HY120)

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

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

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

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

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

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

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

Transcript:

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

Φάσεις Υλοποίησης (1/2) Συγγραφή πηγαίου κώδικα, δημιουργία.c αρχείου Προεπεξεργαστής (preprocessor) προσθέτει τα αρχεία επικεφαλίδων (header files) στο αρχείο πηγαίου κώδικα Μεταγλώττιση (compilation) αυτοματοποιημένη διαδικασία μετατροπής γλώσσας υψηλού επιπέδου σε γλώσσα μηχανής, καλείται συντακτικός έλεγχος και δημιουργείται αντικείμενο πρόγραμμα.obj αρχείο

Φάσεις Υλοποίησης (2/2) Σύνδεση τμημάτων που αποτελούν το μοντέλο υλοποίησης (linking) αυτοματοποιημένη διαδικασία σύνδεσης του αντικείμενου προγράμματος με άλλα αντικείμενα προγράμματα (βιβλιοθήκες), για να δημιουργηθεί ένα πλήρες αντικείμενο πρόγραμμα έτοιμο για εκτέλεση (.exe) Φορτωτής (loader) φορτώνει το εκτελέσιμο στην κύρια μνήμη Έλεγχος καλής λειτουργίας (διόρθωση run time errors)

Φάσεις Υλοποίησης με χρήση του εργαλείου DEV C++ v4.9.9.2 (1/2) Download page http://sourceforge.net/projects/dev-cpp/files/binaries /Dev-C%2B%2B%204.9.9.2/devcpp-4.9.9.2_setup.exe Συγγραφή πηγαίου κώδικα Επιλέγω File-> New-> Source File (συντόμευση πληκτρολογίου Ctrl+N) Γράφω τον κώδικα Αποθηκεύω το αρχείο επιλέγοντας File-> SaveAs (διαλέγω το path και πληκτρολογώ το όνομα του αρχείου). Το αρχείο θα έχει επέκταση.cpp

Φάσεις Υλοποίησης με χρήση του εργαλείου DEV C++ v4.9.9.2 (2/2) Compilation, linking και loading Γίνεται αυτόματα από τον compiler Επιλέγω Execute->Compile (συντόμευση πληκτρολογίου Ctrl+F9). Δημιουργείται αυτόματα εκτελέσιμο αρχείο, με όνομα ίδιο με αυτό του πηγαίου κώδικα, εφόσον δεν υπάρχουν συντακτικά λάθη. Για να το τρέξω επιλέγω Execute->Run (συντόμευση πληκτρολογίου Ctrl+F10) Τα δύο προηγούμενα βήματα μπορούν να εκτελεστούν με μία εντολή, επιλέγοντας Execute->Compile & Run (συντόμευση πληκτρολογίου F9)

Αλληλεπίδραση Χρήστη - Προγράμματος Τροφοδοσία με αρχικά Δεδομένα Μονάδα Εισόδου Πχ: Πληκτρολόγιο Υπολογιστικά Βήματα Δεδομένα Υπολογισμού Μονάδα Εξόδου Πχ: Οθόνη

Μνήμη Οργανωμένη σε κελιά με συγκεκριμένη διεύθυνση και τιμή. Τα δεδομένα αποθηκεύονται στη μνήμη 1000 1001 1002 1003 1004 10 23 6 75 92 1005 1006 1007 1008 1009 11 56 12 18 123

Δομή Προγράμματος (1/4) Οι εντολές εκτελούνται με τη σειρά 1. Οδηγίες Προεπεξεργαστή 2. Δηλώσεις Συναρτήσεων 3. Η βασική συνάρτηση main()

Δομή προγράμματος (2/4) Οδηγίες προεπεξεργαστή Βασικά αρχεία επικεφαλίδων (header files) πχ #include <stdio.h> #include <stdlib.h> Αρχεία επικεφαλίδων που ορίζονται από τον προγραμματιστή (επέκταση.h) Ορισμοί σταθερών (definitions) πχ #define pi 3.1415927 Δηλώσεις συναρτήσεων Δηλώσεις μεταβλητών (public καλύτερα να αποφεύγεται)

Δομή προγράμματος (3/4) Ησυνάρτησηint main(int argc, char *argv[]) Μπορεί να γραφτεί και main() main() { declarations /* Δηλώσεις μεταβλητών και σταθερών που θα χρησιμοποιηθούν μόνο από τη main. */ statements /* Εντολές, εκτελούνται με τη σειρά */ system( PAUSE ); /* Την χρησιμοποιούμε για «πάγωμα» του παραθύρου */ return 0; /* συνάρτηση επιστροφής */ }

Δομή προγράμματος (4/4) Ορισμοί συναρτήσεων συγγραφή του σώματος της συνάρτησης (εναλλακτικά οι ορισμοί μπορεί να γίνουν ταυτόχρονα με τις δηλώσεις) Σχόλια: ό,τι πλαισιώνεται από /*. */, αγνοείται // σχόλια γραμμής Τα σχόλια υπάρχουν σε οποιοδήποτε σημείο του προγράμματος

Παράδειγμα #include <stdio.h> #include <stdlib.h> //Write your name here int main(void){ } system( Pause ); return 0;

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

Επιτρεπτά ονόματα μεταβλητών και σταθερών Τα ονόματα μεταβλητών ή σταθερών μπορούν να αποτελούνται από οποιοδήποτε συνδυασμό γραμμάτων a-z A-Z, του χαρακτήρα υπογράμμισης (_), και να μη συμπίπτουν με δεσμευμένες λέξεις

Βασικοί τύποι δεδομένων στη C και προσδιοριστές (1/3) Τύπος Ακεραίου int Δήλωση της μεταβλητής με όνομα a ως ακέραιο τύπο δεδομένων: int a; Προσδιοριστές για εκτύπωση και ανάγνωση είναι: %d, %x, %o για εμφάνιση σε δεκαδική, δεκαεξαδική και οκταδική μορφή αντίστοιχα. Για πολύ μικρούς ακεραίους ή πολύ μεγάλους ή χωρίς πρόσημο υπάρχουν αντίστοιχα οι τύποι short, long και unsigned. Οι προσδιοριστές l, h και u τοποθετούνται μετά το % για τους long, short και unsigned αντίστοιχα. Πχ %ld

Βασικοί τύποι δεδομένων στη C και προσδιοριστές (2/3) Πραγματικοί αριθμοί (float και double) Τύπος δεδομένων float (ακρίβεια 6 σημαντικών ψηφίων) Δήλωση της μεταβλητής a ως τύπου float: float a; προσδιοριστής %f για εμφάνιση σε fixed point μορφή (6 δεκαδικά) καθορισμός πλάτους πραγματικού (στήλες εκτύπωσης Α1) και πλάτους δεκαδικού μέρους Α2 - %<Α1>.<Α2>f. Προσδιοριστές %e, %g για εμφάνιση σε εκθετική μορφή, ή ανάθεση της εμφάνισης στο σύστημα αντίστοιχα.

Βασικοί τύποι δεδομένων στη C και προσδιοριστές (3/3) Τύπος δεδομένων double, (ακρίβεια 14 σημαντικών ψηφίων) Δήλωση της μεταβλητής a ως double: double a; Προσδιοριστές %lf, %le για διάβασμα, %lf, %le,%f για εκτύπωση Τύπος δεδομένων long double, ( μεγαλύτερος double) Προσδιοριστές %Lf, %Le για διάβασμα, %Lf, %Le, %f για εκτύπωση Τύπος δεδομένων χαρακτήρα char Δήλωση της μεταβλητής a ως χαρακτήρα: char a; προσδιοριστής %c

Δηλώσεις μεταβλητών Δηλώνονται ως εξής: <Τύπος Δεδομένων> <Όνομα Μεταβλητής> ; πχ int metrhths; char xarakthras; Περισσότερες από μία μεταβλητές του ίδιου τύπου διαχωρίζονται με κόμμα πχ int metrhths1, metrhths 2, metrhths3 ; char xarakthras1, xarakthras2; Απόδοση αρχικής τιμής κατά τη δήλωση πχ int a = 234;

Δηλώσεις σταθερών Η εντολή δήλωσης σταθερών έχει τη μορφή const <τύπος δεδομένων> <όνομα σταθεράς> = <αρχική τιμή> πχ const double pi = 3.1415927 Εναλλακτικά για τις σταθερές χρησιμοποιείται η εντολή προεπεξεργαστή define (στην αρχή του προγράμματος, μετά τα header files). Πχ #define pi 3.1415927

Συγγραφή κώδικα ώστε να είναι ευανάγνωστος Τα ονόματα μεταβλητών και συναρτήσεων να αντιπροσωπεύουν ποσότητες του φυσικού προβλήματος πχ. Athroisma, minvelocity Οι αγκύλες που πλαισιώνουν ένα σώμα εντολών να είναι στην ίδια κατακόρυφο και το σώμα εντολών κατά μία στήλη (ένα tab) δεξιότερα. Πχ { Εντολή 1; Εντολή 2; } Σύντομα σχόλια που να περιγράφουν τις λειτουργίες

Αριθμητικές Παραστάσεις Μοναδιαίοι τελεστές ++, -- Δυαδικοί αριθμητικοί τελεστές : +, -, *, /, % Οι παραστάσεις περιέχουν σταθερές, μεταβλητές και αριθμητικούς τελεστές όπως στην άλγεβρα Πχ (arithmos1 + aritmos2)*arithmos3 Προτεραιότητα δίνεται στα τμήματα εντός παρενθέσεων

Εντολή καταχώρησης (1/2) Μορφή: <μεταβλητή> = <παράσταση>; Πχ double mesos_oros, oros1, oros2; oros1 = 6.0; oros2 = 7.0; mesos_oros = (oros1 + oros2)/2;

Εντολή καταχώρησης (2/2) Επίσης για τους τελεστές +,-, /, *, % μπορείηεντολήκαταχώρησηςναείναιτης μορφής <μεταβλητή> <τελεστής>= <παράσταση> που αντιστοιχεί σε <μεταβλητή> = <μεταβλητή> <τελεστής> <παράσταση> πχ int arithmos = 4; arithmos +=5; /*η εντολή αντιστοιχεί σε arithmos = arithmos + 5; */

Παραδείγματα Αν int x=8; int y=15; y+=x, y-=x, y*=x, y/=x, y%=x, τελική τιμή της y είναι 23 τελική τιμή της y είναι 7 τελική τιμή της y είναι 120 τελική τιμή της y είναι 1 τελική τιμή της y είναι 7

Τελεστές αύξησης και μείωσης (1/2) Οι μοναδιαίοι τελεστές ++, -- ισοδυναμούνμεαύξησηήμείωσητης μεταβλητής κατά μία μονάδα Πχ η εντολή a++; αντιστοιχεί στην εντολή καταχώρησης a = a + 1; Και η εντολή a-- αντιστοιχεί στην a = a - 1;

Τελεστές αύξησης και μείωσης (2/2) Προθεματικοί ++a, αντιστοιχούν σε αύξηση της μεταβλητής πριν τον υπολογισμό της τιμής της παράστασης. Μεταθεματικοί a++, αντιστοιχούν σε αύξηση της μεταβλητής μετά τον υπολογισμό της παράστασης Πχ ++a = 3 ; a++ = 3; /* η τελικήτιμήτουa είναι 3 */ /* η τελικήτιμήτουa είναι 4*/

Ιεραρχία και κανόνας προσεταιριστικότητας Παρενθέσεις ++, -- προθεματικοί (από δεξιά προς τα αριστερά) *, /, % (από αριστερά προς τα δεξιά) +, - (από αριστερά προς τα δεξιά) η αύξηση και μείωση των μεταθεματικών τελεστών αύξησης και μείωσης γίνεται μετά τον υπολογισμό της παράστασης

Παραδείγματα (1/3) πχ η παράσταση --y*y/2*z-1/++x υπολογίζεται: Αύξηση του x, μείωση του y, πολ/σμός y*y, διαίρεση με 2, πολ/σμός με z, διαίρεση 1/χ καιηαφαίρεσηστοτέλος

Παραδείγματα (2/3) Η εντολή ++x = ++x*5; με ποια από τις παρακάτω είναι ισοδύναμη 1) ++x*=5; 2) x = (++(++x))*5;

Παραδείγματα (2/3) Στην εντολή ++x = ++x*5; Η σειρά των πράξεων είναι Αύξηση του x (από δεξιά προς τα αριστερά 2 φορές) Πολ/σμός με 5 Καταχώρηση αποτελέσματος στο x

Παράδειγμα #include <stdio.h> #include <stdlib.h> int main(void){ int oros1, oros2, athroisma; //Dhlwseis metavlhtwn } oros1 = 6; oros2 = 3; athroisma = oros1 + oros2; system( Pause ); return 0;

Κωδικοποίηση ASCII 128 διακεκριμένοι χαρακτήρες Κάθε χαρακτήρας αποθηκεύεται σε ένα byte και έχει σαν μορφή τον ακέραιο που του αντιστοιχεί σε ASCII. Ανάλογα με τον προσδιοριστή που θα επιλέξουμε στην εκτύπωση, έχουμε και διαφορετικό αποτέλεσμα. Πχ char c = 1 ; /* Αρχικοποίηση κατά τον ορισμό */ printf( Character: %c ASCII Code: %d, c,c); Θα εκτυπωθεί: Character: 1 ASCII Code:49

Μη εκτυπώσιμοι χαρακτήρες (1/2) Οι πρώτοι 32 και ο τελευταίος χαρακτήρας είναι μη εκτυπώσιμοι και χρησιμοποιούνται σε εντολές της C \0 μηδενικός, δηλώνει το τέλος συμβολοσειράς \b backspace \t κενό παραγράφου \n νέα γραμμή

Μη εκτυπώσιμοι χαρακτήρες (2/2) \ διπλή απόστροφος \ απλή απόστροφος \\ πλάγια γραμμή

Συναρτήσεις εξόδου της <stdio.h> (1/3) Εντολή εξόδου printf(συμβολοσειρά ελέγχου μορφής, λίστα εξόδου): Εκτύπωση συμβολοσειράς: printf( Εκτυπώνεται 1 συμβολοσειρά \n ); printf( Ο αριθμός που διαβάστηκε είναι %d\n,a); printf( Ο αριθμός που διαβάστηκε είναι %4d\n ), χρησιμοποιούνται 4 στήλες εκτύπωσης για τη μεταβλητή a

Συναρτήσεις εξόδου της <stdio.h> (2/3) Χρήση της printf με τον αντίστοιχο προσδιοριστή τύπου δεδομένων printf( Εκτύπωση του χαρακτήρα %c \n,c); printf( Εκτύπωση μεταβλητής τύπου float %f\n,f)

Συναρτήσεις εξόδου της <stdio.h> (3/3) Μπορούν να εκτυπωθούν περισσότερες από μία μεταβλητές με χρήση του κατάλληλου προσδιοριστή εξόδου Πχ int a = 45; char c = w ; printf( Ένα παράδειγμα εκτύπωσης του ακεραίου %d και του χαρακτήρα %c, a, c);

Συναρτήσεις εισόδου της <stdio.h> (1/3) Εντολή Εισόδου scanf(συμβολοσειρά ελέγχου μορφής, λίστα εισόδου): int a; /* μεταβλητή τύπου int */ scanf( %d,&a); /* διάβασμα ακεραίου, απόδοση τιμής στη μεταβλητή a*/ scanf( %<A1>d,&a); /* διάβασμα των Α1 πρώτων ψηφίων του ακεραίου και απόδοση τιμής στη μεταβλητή a */ Χρήση της scanf με τον αντίστοιχο προσδιοριστή char a; /* μεταβλητή τύπου char*/ scanf( %c,&a) /*διάβασμα 1 χαρακτήρα*/

Συναρτήσεις εισόδου της <stdio.h> (2/3) float a; /* μεταβλητή τύπου float*/ scanf( %f,&a) /* διάβασμα 1 αριθμού τύπου float*/ double a; /* μεταβλητή τύπου double*/ scanf( %lf,&a) /* διάβασμα 1 αριθμού τύπου double*/ long double a; /* μεταβλητή τύπου long double*/ scanf( %Lf,&a) /* διάβασμα 1 αριθμού τύπου long double*/

Συναρτήσεις εισόδου της <stdio.h> (3/3) Ηλίσταεισόδουτηςscanf μπορεί να περιέχει περισσότερες από μία μεταβλητές διαχωρισμένες με κόμμα Πχ. int a; char c; float f; scanf( %d %c %f, &a, &c, &f);