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

Σχετικά έγγραφα
Διαδικαστικός Προγραμματισμός

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

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

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

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

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

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

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

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

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

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

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

Δομές Δεδομένων. Ενότητα 1: Εισαγωγή-Υλοποίηση του ΑΤΔ Σύνολο με Πίνακα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής.

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

Τίτλος Μαθήματος: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

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

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

Επεξεργασία κειμένου και συμβολοσειρών σε C

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

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

Λογιστικές Εφαρμογές Εργαστήριο

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

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

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

ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΜΕ ΧΡΗΣΗ Η/Υ

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

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Θεωρία Πιθανοτήτων & Στατιστική

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

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

Υπολογιστικά Συστήματα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ(Visual Basic)

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

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

Γενικά Μαθηματικά Ι. Ενότητα 12: Κριτήρια Σύγκλισης Σειρών. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

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

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

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

ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΜΕ ΧΡΗΣΗ Η/Υ

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

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

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

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

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

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

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

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

Εφαρμογές Συστημάτων Γεωγραφικών Πληροφοριών

Λογική Δημήτρης Πλεξουσάκης Ασκήσεις στον Κατηγορηματικό Λογισμό Τμήμα Επιστήμης Υπολογιστών

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

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

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

Ιστορία της μετάφρασης

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

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

Γενικά Μαθηματικά Ι. Ενότητα 15: Ολοκληρώματα Με Ρητές Και Τριγωνομετρικές Συναρτήσεις Λουκάς Βλάχος Τμήμα Φυσικής

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

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

Διδακτική της Πληροφορικής

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

Δομές Δεδομένων. Ενότητα 6: Εφαρμογή Συνδεδεμένων Λιστών: Αλφαβητικό ευρετήριο κειμένου- Υλοποίηση ΑΤΔ Στοίβα και Ουρά με δείκτες

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Δομές Δεδομένων. Ενότητα 3: Ουρές Εισαγωγή-Υλοποίηση ΑΤΔ Ουρά με πίνακα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής.

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

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

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

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Πληροφορική. Εργαστηριακή Ενότητα 1 η : Εισαγωγή στα Λογιστικά Φύλλα με το MS Excel. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

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

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

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Εισαγωγή στον Προγραμματισμό Η/Υ (Fortran 90/95/2003)

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

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

Οικονομικά Μαθηματικά

Γενικά Μαθηματικά Ι. Ενότητα 14: Ολοκλήρωση Κατά Παράγοντες, Ολοκλήρωση Ρητών Συναρτήσεων Λουκάς Βλάχος Τμήμα Φυσικής

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

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

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Πληροφορική ΙΙ Θεματική Ενότητα 5

Ειδικά Θέματα Προγραμματισμού

3 η ΕΝΟΤΗΤΑ Συναρτήσεις στο MATLAB

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Εισαγωγή στους Αλγορίθμους

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

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

Εισαγωγή στους Η/Υ και τις Εφαρμογές Ενότητα 5: Επεξεργασία δεδομένων με τη γλώσσα προγραμματισμού python Υπο-ενότητα 5.2: Συμβολοσειρές-Έλεγχος Ροής

Εισαγωγή στην Διοίκηση Επιχειρήσεων

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Προέλευση της Pazcal ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Πληροφορική ΙΙ Θεματική Ενότητα 6

Μάρκετινγκ Αγροτικών Προϊόντων

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

Προχωρημένες έννοιες προγραμματισμού σε C

7 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

Transcript:

Διαδικαστικός Προγραμματισμός Ενότητα 12: Παραδείγματα Καθηγήτρια Μαρία Σατρατζέμη

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

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

Απαντήστε στις παρακάτω ερωτήσεις γράφοντας κάθε φορά όλη τη συνάρτηση main 4

Παράδειγμα 1 Δηλώστε μια μεταβλητή με όνομα infile, τύπου FILE * 5

Λύση Παραδείγματος 1 main() { FILE *infile; 6

Παράδειγμα 2 Συνέχεια της 1. Αν σας δίνετε το αρχείο δεδομένων με όνομα «stoixeia.txt», γράψτε την εντολή για να ανοίξετε το αρχείο αυτό. Γράψτε την εντολή για να συσχετίσετε τη μεταβλητή FILE * που δηλώσατε στο ερώτημα 1 με το αρχείο «stoixeia.txt». 7

Λύση Παραδείγματος 2 main() { FILE *infile; infile = fopen("stoixeia.txt", "r"); 8

Παράδειγμα 3 Συνέχεια της 1. Αν σας δίνετε το αρχείο δεδομένων με όνομα «stoixeia.txt», γράψτε την εντολή για να ανοίξετε το αρχείο αυτό. Γράψτε την εντολή για να συσχετίσετε τη μεταβλητή FILE * που δηλώσατε στο ερώτημα 1 με το αρχείο «stoixeia.txt». Ελέγξτε αν το αρχείο υπάρχει στο δίσκο εμφανίζοντας το μήνυμα «Can't open <το όνομα του αρχείου>». 9

Λύση Παραδείγματος 3 main() { FILE *infile; infile = fopen("stoixeia.txt", "r"); if (infile == NULL) printf("can't open %s\n", "stoixeia.txt"); system("pause"); 10

Παράδειγμα 4 Αν το αρχείο υπάρχει διαβάστε ένα χαρακτήρα (τον 1ο χαρακτήρα) από το αρχείο «stoixeia.txt». Εμφανίστε το χαρακτήρα στην οθόνη. 11

Λύση Παραδείγματος 4 main() { FILE *infile; char ch; infile = fopen("stoixeia.txt", "r"); if (infile == NULL) printf("can't open %s\n", "stoixeia.txt"); else { ch = getc(infile); printf("%c\n",ch); system("pause"); 12

Παράδειγμα 5 Συνέχεια της 3. Αν το αρχείο υπάρχει διαβάστε όλο το αρχείο «stoixeia.txt» χαρακτήρα-χαρακτήρα. Εμφανίστε το αρχείο στην οθόνη. 13

Λύση Παραδείγματος 5 main() { FILE *infile; char ch; infile = fopen("stoixeia.txt", "r"); if (infile == NULL) printf("can't open %s\n", "stoixeia.txt"); else { while ((ch = getc(infile))!= EOF) printf("%c",ch); printf("\n"); system("pause"); 14

Παράδειγμα 6 Συνέχεια της 3. Αν το αρχείο υπάρχει διαβάστε 1 γραμμή από το αρχείο «stoixeia.txt» και εμφανίστε την στην οθόνη. Γνωρίζουμε ότι το μήκος της γραμμής του αρχείου δεν είναι μεγαλύτερο από 100 χαρακτήρες. 15

Λύση Παραδείγματος 6 #define MaxLine 100 main() { FILE *infile; char ch, buffer[maxline];; infile = fopen("stoixeia.txt", "r"); if (infile == NULL) printf("can't open %s\n", "stoixeia.txt"); else { if (fgets(buffer, MaxLine, infile)!=null) printf("%s\n",buffer); system("pause"); 16

Παράδειγμα 7 Συνέχεια της 3. Διαβάστε όλο το αρχείο «stoixeia.txt» γραμμήγραμμή και εμφανίστε το στην οθόνη. Γνωρίζουμε ότι το μήκος της γραμμής του αρχείου δεν είναι μεγαλύτερο από 100 χαρακτήρες. 17

Λύση Παραδείγματος 7 #define MaxLine 100 main() { FILE *infile; char ch, buffer[maxline];; infile = fopen("stoixeia.txt", "r"); if (infile == NULL) printf("can't open %s\n", "stoixeia.txt"); else { while (fgets(buffer, MaxLine, infile)!= NULL) printf("%s",buffer); system("pause"); 18

Συνέχεια της 3. Αν το αρχείο «stoixeia.txt» έχει τη μορφή: Παράδειγμα 8 PAPANIKOLAOU KWSTAS,115,DIMOSTHENOUS 2, KHFISIA PETROU NIKOLAOS,83, ANTHEWN 45 ANALIPSI NIKOLAOU BABIS,127,EGNATIAS 128 CHRISTODOULOY GIANNIS,27,TSIMISKI 22 CHRISTOU GIORGOS,140,VAS. OLGAS 112 ANTWNIADIS CHARALAMBOS,133, VAS. OLGAS 144 ANDREADAKIS PETROS, 84, PAPANIKOLAOU 47 KWNSTANTINIDIS LOUKAS, 122, OLYMPOU 5 Δηλαδή για κάθε μαθητή περιλαμβάνει τα εξής στοιχεία: ονοματεπώνυμο μαθητή, το οποίο δεν μπορεί να περιλαμβάνει περισσότερους από 30 χαρακτήρες. αριθμός απουσιών (int). διάφορα στοιχεία μαθητή, τα οποία δεν μπορούν να ξεπερνάνε τους 68 χαρακτήρες. 1. Θέλετε να επεξεργαστείτε τα αριθμητικά στοιχεία μετά το 1 ο κόμμα (πχ να υπολογίσετε το άθροισμα όλων των απουσιών) 2. Δώστε την εντολή για να διαβάσετε μόνο τη 1 η γραμμή και να την εμφανίσετε στην οθόνη. 19

Λύση Παραδείγματος 8 main() { int nscan, absencies, studcount, abscount; char name[30], comments[68], termch; FILE *infile; infile = fopen("stoixeia.txt", "r"); if (infile == NULL) printf("can't open %s\n", "stoixea.txt"); else { nscan = fscanf(infile, "%30[^,], %d, %68[^\n]%c", name, &absencies, comments, &termch); if ( nscan!= 4 termch!= '\n' ) printf("improper file format\n"); else printf("%s, %d, %s\n",name, absencies, comments); fclose(infile); system("pause"); 20

Παράδειγμα 9 Συνέχεια της 3. Αν το αρχείο «stoixeia.txt» έχει τη μορφή: PAPANIKOLAOU KWSTAS,115,DIMOSTHENOUS 2, KHFISIA PETROU NIKOLAOS,83, ANTHEWN 45 ANALIPSI NIKOLAOU BABIS,127,EGNATIAS 128 CHRISTODOULOY GIANNIS,27,TSIMISKI 22 CHRISTOU GIORGOS,140,VAS. OLGAS 112 ANTWNIADIS CHARALAMBOS,133, VAS. OLGAS 144 ANDREADAKIS PETROS, 84, PAPANIKOLAOU 47 KWNSTANTINIDIS LOUKAS, 122, OLYMPOU 5 Δηλαδή για κάθε μαθητή περιλαμβάνει τα εξής στοιχεία: ονοματεπώνυμο μαθητή, το οποίο δεν μπορεί να περιλαμβάνει περισσότερους από 30 χαρακτήρες. αριθμός απουσιών (int). διάφορα στοιχεία μαθητή, τα οποία δεν μπορούν να ξεπερνάνε τους 68 χαρακτήρες. 1. Θέλετε να επεξεργαστείτε τα αριθμητικά στοιχεία μετά το 1 ο κόμμα (πχ να υπολογίσετε το άθροισμα όλων των απουσιών). 2. Δώστε τις εντολές για να διαβάσετε όλο το αρχείο, να εμφανίσετε όλο το αρχείο στην οθόνη και να υπολογίσετε το άθροισμα όλων των απουσιών και να το εμφανίσετε στην οθόνη. 21

Λύση Παραδείγματος 9 main() { int i, nscan, absencies, studcount, abscount; char name[30], comments[68], termch; FILE *infile; infile = fopen("stoixeia.txt", "r"); if (infile == NULL) printf("can't open %s\n", "stoixea.txt"); else { while (TRUE) { nscan = fscanf(infile, "%30[^,], %d, %68[^\n]%c", name, &absencies, comments, &termch); if ( nscan == EOF ) break; if ( nscan!= 4 termch!= '\n' ) { printf("improper file format\n"); break; else { printf("%s, %d, %s\n",name, absencies, comments); abscount=abscount+absencies; printf("%d\n",abscount); fclose(infile); system("pause"); 22

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