CE 120. Φροντιστήριο 14/10/2011

Σχετικά έγγραφα
Προγραμματισμός Ι (ΗΥ120)

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

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

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

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

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

lab2grades - Στη scanf υπολογίζετε τουλάχιστον 5 χαρακτήρες %5.2f προδιαγραφές που ζητούνται στην εκφώνηση. -

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 2 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Sheet3_2. Τα literals (3.0, 1.5, κτλ) πρέπει να ορίζονται ως σταθερές.

lab2 -Στην printf να βάζεις \n έτσι ώστε να αλλάζει γραµµή όποτε σου εµφανίζει κάποιο µήνυµα.

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

lab3grades - Δεν παραδόθηκε. - Προσπαθήστε να κάνετε την άσκηση στο σπίτι.

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

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

Βαθμός Σχόλια. lab5 PASS PASS PASS PASS PASS. Οριακά PASS - Καλή δουλειά

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

- Σωστή χρήση του προσδιοριστή const για την σταθερά pi. Καλό θα ήταν επιλέξετε κεφαλαία γράµµατα για το όνοµα της σταθεράς.

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

ΑΕΜ ή username. Sheet2

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

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

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/09, 23:59

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

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

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

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

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

Προγραµµατισµός Ι Εργαστήριο 3ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

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

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: Τετάρτη 7/12/2016, 21:00

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

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

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

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

Η δήλωση πού δηµιουργεί αποθήκευση τών δεδοµένων ονοµαζεται ορισµός τής µεταβλητής.

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

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

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

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

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 5/12/10, 23:59

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

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

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

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

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

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

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

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

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

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

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 8/1/12, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: 6/11/11, 22:00

lab4grades Παρακαλούµε µη γράφετε σχόλια στα ελληνικά!

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

ΕΡΓΑΣΤΗΡΙΟ 11 - Απαντήσεις

lab6grades - Δεν έχετε δηλώσει το βαθµό βάσης ως σταθερά. - Το µήνυµα εισόδου θέλει χαρακτήρα κενού ' ' στο τέλος και όχι TAB '\t'.

lab2grades printf("calculus: %.4lf\n", calculus);

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

Χωρική Βάση δεδοµένων Autocad

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

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

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

Λύσεις για τις ασκήσεις του lab5

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

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 18/12/12, 22:00

lab5 -Ο κώδικάς σου είναι σωστός αλλά από εδώ και στο εξής προσπάθησε να βάζεις σχόλια στην µορφή που ζητάει το φυλλάδιο

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 27/11/11, 22:00

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.

lab7 PASS -Δεν έχεις καθόλου σχόλια! Διάβασε το φυλλάδιο. PASS -Πολύ καλή εργασία µε σωστά και επεξηγηµατικά σχόλια. -Πρόσεξε την στοίχισή σου!

Επανάληψη για τις Τελικές εξετάσεις

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: 3/12/2018, 23:59

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

3 ο Εργαστήριο Μεταβλητές, Τελεστές

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: Πέµπτη 17/12/2015, 22:00

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

Μαθηµατικά Τεύχος Α. Φύλλα εργασίας. Για παιδιά ΣΤ ΗΜΟΤΙΚΟΥ. Συµπληρωµατικές ασκήσεις & Προβλήµατα Ανάλυση θεωρίας µε ασκήσεις και παραδείγµατα

Κεφάλαιο Πέµπτο: Η Εξάσκηση

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

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

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

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

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

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

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

lab5grades ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ ΑΣΚΗΣΗΣ ΑΛΛΑ ΣΧΟΛΙΑ

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/10, 23:59

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

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

Transcript:

CE 120 Φροντιστήριο 14/10/2011 1

Απολογισµός εργαστηρίου Βρείτε το τµήµα σας στη σελίδα του µαθήµατος. Να ξέρετε τον Α.Μ. σας πριν το επόµενο εργαστήριο. Φτιάξτε ένα καλογραµµένο αρχείο σαν το errors.txt στο οποίο θα σηµειώνετε µηνύµατα λάθους και τι σηµαίνουν. 2

Την επόµενη εβδοµάδα Topics: θα γράψετε προγράµµατα από την αρχή. Κάντε εξάσκηση το σαββατοκύριακο! formatted input & output µεταβλητές vs. σταθερές vs. literals τελεστές επίλυση προβληµάτων 3

Formatted input & output Γράψτε ένα πρόγραµµα το οποίο εκτυπώνει το µήνυµα "Enter date D/M/Y " διαβάζει από το πληκτρολόγιο τη σηµερινή ηµεροµηνία µε τη µορφή ηµέρα/µήνας/έτος, όπου ηµέρα, µήνας και έτος είναι ακέραιοι εκτυπώνει το µήνυµα: Day: D Month: M Year: Y όπου D, M, Y η ηµέρα, ο µήνας και το έτος αντίστοιχα. 4

printf format specifiers %c : char %d : int %x : hex %f : float %lf : double %s : συµβολοσειρά %p : διεύθυνση Πηγή: http://en.cppreference.com/w/cpp/io/c/printf 5

Επιπλέον λειτουργίες printf Εκτύπωση αριθµού κινητής υποδιαστολής µε 2 δεκαδικά ψηφία: double x = 1.2345; printf("%.2lf", x); Εκτυπώνει: 1.23 Εκτύπωση αριθµού κινητής υποδιαστολής µε 2 δεκαδικά ψηφία και συνολικό πλάτος 6 θέσεις: double x = 12.345; printf("%6.2lf", x); Εκτυπώνει: 12.34 1 κενό + 2 ακέραια ψηφία + τελεία + 2 δεκαδικά 6 θέσεις 6

Επιπλέον λειτουργίες printf Εκτύπωση ακέραιου αριθµού µε συνολικό πλάτος 4 θέσεις: int x = 12; printf("%4d", x); Εκτυπώνει: 12 2 κενά + 2 ακέραια ψηφία 4 θέσεις Εκτύπωση ακέραιου αριθµού µε συνολικό πλάτος 4 θέσεις και "γέµισµα" µε µηδενικά: int x = 12; printf("%04d", x); Εκτυπώνει: 0012 7

scanf format specifiers %c : char %d : int %x : hex %g : float %lf : double %s : συµβολοσειρά %p : διεύθυνση Πηγή: http://en.cppreference.com/w/cpp/io/c/scanf 8

scanf παραδείγµατα Ανάγνωση χαρακτήρα: char letter; scanf(" %c", &letter); βάζετε πάντα ένα κενό ανάµεσα στο " και στο % Ανάγνωση τιµών όταν η είσοδος έχει τη µορφή 10/2011: int month, year; scanf("%d/%d", &month, &year); Ανάγνωση τιµών όταν η είσοδος έχει τη µορφή PRICE: 3.75 euro double price; scanf("price: %lf euro", &price); 9

Μεταβλητές vs σταθερές Πότε δηλώνουµε µια ποσότητα ως σταθερά? Όταν η τιµή της δεν πρόκειται και δεν πρέπει να αλλάξει εντός του προγράµµατος παραδείγµατα: η τιµή του π, µια ποσότητα που εκφράζει επιτόκιο Γιατί χρησιµοποιούµε σταθερές? Δικλίδα ασφαλείας: Δε µας αφήνει ο compiler να αλλάξουµε την τιµή κατά λάθος. Δικλίδα ασφαλείας & ευκολία: Συνήθως η σταθερά εµφανίζεται σε πολλά σηµεία του προγράµµατος. Επιβάλουµε τη χρήση της ίδιας τιµής σε όλα τα σηµεία και κάνουµε πιο εύκολα αλλαγές Καλύτερος κώδικας: Δίνουµε την ευκαιρία στον compiler να κάνει βελτιστοποιήσεις 10

Ονοµασία µεταβλητών/σταθερών Μεταβλητές Περιγραφικό όνοµα, συνήθως ουσιαστικό. Το πρώτο γράµµα είναι µικρό Αν το όνοµα αποτελείται από δύο λέξεις, ή γράφουµε τη δεύτερη µε αρχικό κεφαλαίο ή τις χωρίζουµε µε κάτω παύλα (underscore) numstudents ή num_students 11

Ονοµασία µεταβλητών/σταθερών Σταθερές Περιγραφικό όνοµα, συνήθως ουσιαστικό. Όλα τα γράµµατα κεφαλαία Γιατί? Για να φαίνεται αµέσως ότι πρόκειται για σταθερά Αν το όνοµα αποτελείται από δύο λέξεις, τις χωρίζουµε µε κάτω παύλα (underscore) TAX_RATE, GOLDEN_RATIO 12

Παράδειγµα Γράψτε ένα πρόγραµµα το οποίο υπολογίζει τον τόκο για ένα δάνειο µε επιτόκιο 9.5% Το πρόγραµµα Εκτυπώνει το µήνυµα: "Enter principal amount: " Διαβάζει το κεφάλαιο (δεκαδικός) Εκτυπώνει το µήνυµα: "Enter time in years: " Διαβάζει τη χρονική διάρκεια Υπολογίζει τον τόκο και εκτυπώνει το µήνυµα "Interest: X" όπου X ο τόκος 13

Τελεστές & επίλυση προβληµάτων Γράψτε ένα πρόγραµµα το οποίο υπολογίζει πόσες ώρες, λεπτά και δευτερόλεπτα έχουν περάσει από 1/1/1970 έως τώρα Γράψτε ένα πρόγραµµα το οποίο διαβάζει ένα τριψήφιο ακέραιο και αποσπά κι εκτυπώνει το πρώτο ψηφίο του. 14

bit operations Γιατί και πού? Data compression Encryption Access control lists Graphics Checksums και πολλά άλλα 15

Ένα πολύ απλό calendar εβδοµάδας 7 ηµέρες την εβδοµάδα 8 bits σε ένα byte Ιδέα: κάθε bit = η διαθεσιµότητα µιας ηµέρας 0 : η µέρα δεν είναι διαθέσιµη 1 : η µέρα είναι διαθέσιµη bit στη θέση 0: δε χρησιµοποιείται bit στη θέση 1: Δευτέρα, στη θέση 2: Τρίτη, κτλ 16

Ένα πολύ απλό calendar εβδοµάδας Κάνε την i-οστή µέρα διαθέσιµη Κάνε την i-οστή µέρα µη-διαθέσιµη Έλεγξε αν η i-οστή µέρα είναι διαθέσιµη Αντέστρεψε τη διαθεσιµότητα της i-οστής µέρας 17

Ένα ακόµη ενδιαφέρον πρόβληµα Πώς µπορούµε να ανιχνεύσουµε αν ένας αριθµός είναι δύναµη του 2? 18