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

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

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

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

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

7. Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου

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

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

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

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

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

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

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

Μεθόδων Επίλυσης Προβλημάτων

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

Κεφάλαιο 3.1, : Συναρτήσεις I. (Διάλεξη 11)

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

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

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

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

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

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

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

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

Κεφάλαιο Πίνακες Ι. (Διάλεξη 16)

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

Μεθόδων Επίλυσης Προβλημάτων

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

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

11. Συναρτήσεις (Μέρος Ι)

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

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

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

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

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C

Κεφάλαιο 3.1, : Συναρτήσεις I. ( ιάλεξη 11) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

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

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

Μεθόδων Επίλυσης Προβλημάτων

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

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

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

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

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

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

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

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

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

2 η Διάλεξη C++ Δρ. Χρήστος Δρόσος ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ

Μεθόδων Επίλυσης Προβλημάτων

printf Οι κωδικοί (format codes) του printf για διάφορους τύπους δεδοµένων είναι:

Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων. 14. Πίνακες Ι. Ιωάννης Κατάκης. ΕΠΛ 032: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων

Κεφάλαιο 6: Συναρτήσεις IΙΙ Αρθρωτός Προγραμματισμός. (Διάλεξη 14) Παράδειγμα: Αλλαγή τιμής μεταβλητής μόνο τοπικά

Κεφάλαιο Πίνακες Ι. ( ιάλεξη 15) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

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

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

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

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

Κεφάλαιο 6: Συναρτήσεις IΙΙ Αρθρωτός Προγραμματισμός. Δείκτες (Διάλεξη 14)

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

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

Προγραμματισμός Η/Υ. Ενότητα 3: Top Down Σχεδιασμός

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

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

Κεφάλαιο , 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

Κεφάλαιο Αλφαριθµητικές Σειρές Χαρακτήρων (Strings)

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

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

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

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

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

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

6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ

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

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

Πίνακες. 1 Πίνακες. 30 Μαρτίου 2014

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

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

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

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

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

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

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

ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ

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

Μεθόδων Επίλυσης Προβλημάτων

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 2 Ο. Εισαγωγή στην C Εντολές εξόδου Εντολές εισόδου Μορφοποιητές ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

Προγραμματισμός Η/Υ. Ενότητα 7: Συναρτήσεις

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

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

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

1. ΕΙΣΑΓΩΓΗ ΣΤΗ ΓΛΩΣΣΑ C

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

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

12. Συναρτήσεις (Μέρος ΙI)

Transcript:

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

Είσοδος/Έξοδος Σε σχεδόν όλα τα προγράμματα πρέπει να πάρουμε κάποια δεδομένα και να δώσουμε αποτέλεσμα Συνάρτηση εισόδου αντιγράφει δεδομένα από μονάδα εισόδου σε χώρο στην μνήμη, πχ scanf, Συνάρτηση εξόδου εκτυπώνει σε μονάδα εξόδου πληροφορίες αποθηκευμένες στην μνήμη, πχ printf, Η βιβλιοθήκη stdio περιέχει βασικές συναρτήσεις εισόδου/εξόδου 2

Σύνταξη: Δεδομένα Εξόδου - Εντολή printf printf(μορφή εξόδου); printf(μορφή εξόδου, λίστα εκφράσεων); παράμετροι (arguments) int count = 37; printf( The total count is %d\n, count); a) Δεδομένα εξόδου b) όρισμα c) ειδικός χαρακτήρας d) έκφραση (μεταβλητή) 3

a) Δεδομένα εξόδου Σύνταξη: Ξεκινά με και τελειώνει με Περιλαμβάνει: strings (σειρές από χαρακτήρες), ορίσματα, ειδικούς χαρακτήρες Σημασία: τυπώνει ως έχουν τα strings ορίσματα και ειδικοί χαρακτήρες... 4

b) Ορίσματα printf Σύνταξη: %d %c %f %e %s Σημασία: αντικατάστησε όρισμα με τιμή έκφρασης από τη λίστα εκφράσεων %d %f %e %c %s ακέραια τιμή (int) (int => 4 byte => [-2G..2G]) κινητή υποδιαστολή διπλής ακρίβειας (double) κινητή υποδιαστολή διπλής ακρίβειας (double) ένας χαρακτήρας (char) σειρά από χαρακτήρες (string) Αριθμός ορισμάτων ίδιος με το μέγεθος λίστας εκφράσεων και σειρά και τύποι να ταιριάζουν 5

a) Παραδείγματα Ορισμάτων 1 printf( to EPL033 exei %d foitites\n, 74); int n_students = 100; printf( to EPL033 exei %d foitites\n, n_students); float average; printf( o mesos oros einai %f\n, average); printf( simeio = (%f, %f, %f), x, y, z); 6

b) a) Παραδείγματα Ορισμάτων 2 #include <stdio.h> int main() { printf ("Characters: %c %c \n", 'a', 65); printf ("Decimals: %d %d\n", 1977, 2000000000); printf ("Some different radixes: %d %x %o \n", 100, 100, 100); printf ("floats: %f %.2f \n", 3.1416, 3.1416); printf ("%s \n", "A string"); return 0; } Στην οθόνη θα εκτυπωθούν τα εξής δεδομένα Characters: a A Decimals: 1977 2000000000 Some different radixes: 100 64 144 floats: 3.141600 3.14 A string βάση %o = octal (οκταδικό) %x = hexadecimal (δεκαεξαδικό) 7

c) Ειδικοί Χαρακτήρες (escape sequences) Σημασία: \n μετάφερε τον δρομέα στην επόμενη γραμμή \t μετάφερε τον δρομέα στην επόμενη δεξιά στήλη \ εκτύπωσε \\ εκτύπωσε \ Παραδείγματα printf ( hello world ); printf ( hello world\n ); printf ( hello world\nhello world\n ); printf ( hello world\ti m alive\n ); 8

d)μεταβλητές (Παραδείγματα) Παραδείγματα Πράξεις κατευθείαν στην έκφραση int a = 1, b = 2, c=4; printf("%d, %d, %d, %d, %d", a, b, a+b, a/b, a*b+c-a); 1, 2, 3, 0, 5 Αυτόματο casting int a = 1, b = 2; printf( %d, %d, %f, a, b, (float)a/b); => 1, 2, 0.5 Garbage in => Garbage out Κατά λάθος int a = 1 αντί int a = 1; printf( %d, a); => εκτυπώνει ascii: 1 δηλαδή 49 9

Μορφοποίησης δεδομένων εξόδου τύπου Integer (integer formatting) Σύνταξη: %nd Σημασία: χρησιμοποίηση n θέσεων για την εκτύπωση του ακέραιου αριθμού. Εάν ο αριθμός έχει λιγότερα από n ψηφία, τοποθετούνται κενά στα αριστερά (δεξιά ευθυγράμμιση). Εάνοαριθμόςέχει περισσότερα ψηφία, εκτυπώνονται όλα π.χ printf( \n%3d%3d\n\n%2d %3d, 1, 22, 33, -444); 1 2 2 3 3-4 4 4 10

Μορφοποίησης δεδομένων εξόδου τύπου float (float formatting) Σύνταξη: %n.mf Σημασία: χρησιμοποίηση τουλάχιστο n θέσεων για την εκτύπωση του αριθμού (συμπεριλαμβάνει την. και το,αν χεριάζετε) Τα m ψηφία είναι: δεκαδικά σε τύπο double, μίνιμουμ αριθμός χαρακτήρων σε τύπο int και ο μέγιστος αριθμός των χαρακτήρων που τυπώνονται σε string. Εάν ο αριθμός έχει περισσότερα ψηφία, εκτυπώνονται όλα Σύνταξη: %.mf (m δεκαδικά ψηφία) printf( %4.2f %9.6f %3.2f, 4.4, 22.1, 466.00); 4. 40 22. 100000 466. 00 Προσοχή: H στρογγυλοποίηση γίνεται κατευθείαν (π.χ. %.2f και 8.154 => 8.15, ενώ 8.155 => 8.16 11

Είσοδος -- scanf Σύνταξη: scanf(μορφή εισόδου, λίστα διευθύνσεων μεταβλητών); int numbera, numberb; scanf( %d%d,&numbera, &numberb); ορίσματα διευθύνσεις μεταβλητών 12

Σύνταξη: ξεκινά και τελειώνει με Περιλαμβάνει: ορίσματα Σημασία: Μορφή Eισόδου τύπος ορισμάτων και σειρά τιμών που θα εισαχθούν τύποι ανάλογοι με printf (πχ %d %f %e %c κτλ) %d, %f και %e διαπερνούν white space (δηλαδή αν ο χρηστής δώσει 023 τότε η μεταβλητή θα πετάξει τα κενά (whitespaces) => τιμή = 23. 13

Τελεστής διεύθυνσης και scanf Σύνταξη: &<όνομα μεταβλητής> Σημασία: δίνει την διεύθυνση της μεταβλητής πχ &numbera scanf αποθηκεύει τιμές στις μεταβλητές χρησιμοποιώντας τις διευθύνσεις τους Όπως κάθε συνάρτηση στην C Θατοδούμεσελεπτομέρειαπιομετά 14

Παράδειγμα scanf int numbera, numberb; printf( Enter two integer numbers: ); scanf( %d%d,&numbera, &numberb); printf( The two numbers entered are %d %d\n\n, numbera, numberb); 15

Τύποι δεδομένων - Σύνοψη Τύπος δεδομένων printf scanf float %f %f double %f ή %e %lf int %d %d char %c %c Περισσότερες Πληροφορίες http://www.cplusplus.com/ref/cstdio/printf.html http://www.cplusplus.com/ref/cstdio/scanf.html 16

Παράδειγμα Γράψετε πρόγραμμα που υπολογίζει και τυπώνει την περίμετρο (2.π.R) και εμβαδό (π.r 2 ) ενός κύκλου. Το μόνο δεδομένο είναι η ακτίνα (R) του κύκλου σε μέτρα. 17

Παράδειγμα /* program that computes the perimeter and area of a circle*/ #include <stdio.h> #define PI 3.14259 /*program constant*/ int main() { float radius; /* variable for input data*/ float perimeter, area; /*variable for output data*/ /*GET INPUT DATA*/ printf("this program computes the area and perimeter of a circle\n"); printf("enter radius of a circle in meters: "); scanf("%f",&radius); /*COMPUTE PERIMETER AND AREA*/ perimeter = 2 * PI * radius; area = PI * radius * radius; } /*PRINT RESULTS*/ printf("a circle with radius %.2f m has perimeter %.2f m and area %.2f sq. m\n", radius, perimeter, area); return 0; 18