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

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

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

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

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

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

Προγραμματισμός Ι. Θεματική ενότητα 4: Έλεγχος ροής Προτάσεις υπό συνθήκη διακλάδωσης

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

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

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

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

8. Συνθήκες ελέγχου, λογικοί τελεστές

Στόχοι και αντικείμενο ενότητας. Προτάσεις επανάληψης. Έλεγχος ροής προγράμματος. #5.. Εντολές Επανάληψης

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

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

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

Υπολογισμός - Εντολές Επανάληψης

Κεφάλαιο 4: Συνθήκες Έλεγχου (if-else, switch) και Λογικοί τελεστές / παραστάσεις. (Διάλεξη 8)

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

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

Προσέξτε πως η παράσταση μπορεί να περιλαμβάνει όχι μόνο μία τιμή ή μια άλλη μεταβλητή αλλά μια ολόκληρη μαθηματική παράσταση, όπως η εξής:

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

Δομές ελέγχου ροής προγράμματος

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

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου

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

Προγραμματισμός Η/Υ. Ενότητα 5: Εντολές Επανάληψης

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

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

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

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής

Γλώσσα Προγραμματισμού C. Προγραμματισμός HY: Γλώσσα Προγραμματισμού C. Γρήγορος Πίνακας Αναφοράς Σύνταξης. Εισήγηση #4. Επαναληπτικές δομές:

Προγραμματισμός Η/Υ. Ενότητα 4: Εντολές Επιλογής

9. Εντολές επανάληψηςκαι η εντολή

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

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα

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

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

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

Γλώσσα Προγραμματισμού C

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

Εργαστήριο 5. Εντολή if και παραλλαγές: if-else, πολλαπλές if, πολλαπλές if-else. Απλές και σύνθετες εντολές. Εντολή switch.

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

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Στόχοι και αντικείμενο ενότητας. Βασικές κατασκευές ΓΠ. Έλεγχος ροής προγράμματος. #4.. Εντολές Επιλογής

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

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

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος

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

ΗΥ-150. Προγραμματισμός

Είδη εντολών. Απλές εντολές. Εντολές ελέγχου. Εκτελούν κάποια ενέργεια. Ορίζουν τον τρόπο με τον οποίο εκτελούνται άλλες εντολές

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο

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

Κεφάλαιο : Επαναλήψεις (oι βρόγχοιfor, do-while) (Διάλεξη 10) Εντολές Επανάληψης που θα καλυφθούν σήμερα

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

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

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

Εντολές ελέγχου ροής if, for, while, do-while

Η Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 5 Εντολές Επανάληψης for while do while. Λαμπρινίδης Γεώργιος

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

Παίρνοντας Αποφάσεις 1

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

Δομές Ελέγχου και Επανάληψης

Κεφάλαιο : Επαναλήψεις (o βρόγχος While) (Διάλεξη 9) Δομές Έλεγχου Προγράμματος

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

ΗΥ-150. Προγραμματισμός

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

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

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

Κεφάλαιο : Επαναλήψεις (for, do-while)

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

for for for for( . */

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

Διάλεξη 5η: Εντολές Επανάληψης

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

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

Εισαγωγή στον Προγραμματισμό (με. τη C)

Εισαγωγή στη Matlab 2 Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής

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

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

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

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

Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. Ασκήσεις Επανάληψης

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

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

Δομές ελέγχου & επανάληψης

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι

Λογικό "και" (AND) μας επιστρέφει 1 αν και οι δύο operands είναι όχι μηδέν, διαφορετικά 0)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΑΣΚΗΣΗ #5 Προτεινόμενη Λύση

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

Θέματα Προγραμματισμού Η/Υ

ΗΥ-150. Προγραμματισμός

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C

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

5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while)

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

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

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

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

Η Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 6 Εντολές Επανάληψης Ασκήσεις. Γιώργος Λαμπρινίδης

Transcript:

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

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Ένθετες διακλαδώσεις Οι διακλαδώσεις οι οποίες εμπεριέχουν προτάσεις ελέγχου εντός προτάσεων ελέγχου δηλ. διακλάδωση μέσα σε διακλάδωση If Ε1 Π1 else if E2 Π2 else Π3 Π1 Αληθές Ε1 Ψευδές Αληθές Ε2 Ψευδές Π2 Π3

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 3 Υπό συνθήκη διακλάδωση και C Εντολή if If (συνθήκη) Προτάσεις; else Προτάσεις; Ένθετη Εντολή if If (συνθήκη1) Προτάσεις; else if (συνθήκη2) Προτάσεις; else Προτάσεις;

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 4 Νέο Πρόγραμμα Δημιουργήστε ένα νέο project με τίτλο if-if

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 5 Διαχείριση Υπολοίπου Ο χρήστης εισάγει ένα ποσό (poso) για ανάληψη και θα πρέπει ανάλογα με το διαθέσιμο υπόλοιπο (ypoloipo)να γίνουν τα παρακάτω: το υπόλοιπο (ypoloipo) είναι 1000.0 Ευρώ το ποσό (poso) εισάγεται από το πληκτρολόγιο Αν το πόσο είναι μεγαλύτερο από το υπόλοιπο εμφάνιση μηνύματος : Den mporei na ginei h synallagh διαφορετικά αν το ποσό είναι αρνητική τιμή εμφάνιση μηνύματος : Eisagete 8etikes times posou διαφορετικά ενημέρωση του υπολοίπου (αφαίρεση του ποσού)

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 6 Νέο Πρόγραμμα Δημιουργήστε ένα νέο project με τίτλο if-if2

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 7 Άσκηση Γράψτε ένα πρόγραμμα που διαβάζει τρεις αριθμούς. Αν είναι και οι 3 ίσοι τυπώνει «kerdises», αν είναι οι 2 ίσοι τυπώνει «paraligo» αν είναι και οι 3 διαφορετικοί τυπώνει «exases».

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 8 Ιδιαιτερότητες στην if Παράλειψη ψευδούς τμήματος (Δομή Επιλογής if) If (x<y) z=x; Έλλειψη ομάδας εντολών If (x<y) z=x; else z=y; If (x<y) z=x; else z=y; If (x<y) z=x; x=x+1; else z=y; If (x<y) z=x; x=x+1; else z=y;

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 9 Ιδιαιτερότητες στην if Υποθετικός τελεστής (?:) Δύο σύμβολα? Και το : ανάμεσα σε εκφράσεις Ερμηνεία: Εκφρ1? Εκφρ2 : Εκφρ3 Εκτελεί μια υποθετική πρόταση Η έκφραση 2 εάν η έκφραση 1 είναι αληθής αλλιώς είναι η τιμή της έκφρασης 3 int x, y, z; x=10; y=20; z = x<y? x : y; If (x<y) z=x; else z=y; If (x<y) z=x; else z=y;

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 10 Νέο Πρόγραμμα Δημιουργήστε ένα νέο project με τίτλο if_

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 11 Υποθετικός Τελεστής Γράψτε ένα πρόγραμμα με τον υποθετικό τελεστή?: ώστε: αν η τιμή του x είναι μεγαλύτερη από 10 το y θα πάρει τη τιμή 10 διαφορετικά το y θα πάρει τη τιμή 0

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 12 Οδηγία προεπεξεργαστή define Με την define ορίζεται μία συμβολική σταθερά και η τιμή της Πρόκειται για σταθερά και όχι μεταβλητή Γίνεται αντικατάσταση από τον προεπεξεργαστή της σταθεράς με την τιμή της, όπου αυτή εμφανίζεται στον κώδικα Δεν τερματίζει με ; γιατί δεν είναι πρόταση C #define SIZE 10

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 13 Οδηγία προεπεξεργαστή define #include <stdio.h> #include <stdlib.h> #define TRUE 1 #define FALSE 0 int main() int x; x = 30<20; if ( x == TRUE ) printf("x is true"); if ( x == FALSE) printf("x is false"); return 0;

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 14 Νέο Πρόγραμμα Δημιουργήστε ένα νέο project με τίτλο define

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 15 Άσκηση Χρησιμοποιώντας την define γράψτε ένα πρόγραμμα όπου δέχεται μία βαθμολογία (Grade) και τυπώνει Pass αν 5 Grade 10 Fail αν 0 Grade <5 Χρησιμοποιήστε την define για να ορίσετε σαν σταθερά στο πρόγραμμα σας την βάση (5)

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 16 #include <stdlib.h> #define BASH 5 int main() int Grade; scanf("%d",&grade); if ( ( Grade >= 0 ) && ( Grade < BASH ) ) printf("fail\n"); else if ( ( Grade >= BASH ) && ( Grade <= 10 ) ) printf("pass\n"); else printf("grade should be between 0 and 10\n"); return 0;

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 17 Η εντολή switch Στις περιπτώσεις που χρειάζεται να γίνει έλεγχος ροής του προγράμματος με δυνατότητα πολλαπλής διακλάδωσης χρησιμοποιείται η εντολή switch. Με απλά λόγια, η switch χρησιμοποιείται στη θέση της if - then - else όταν θέλουμε να εκτελέσουμε διαφορετικό κώδικα ανάλογα με την τιμή μιας μεταβλητής. πχ Με βάση τη μεταβλητή x, επέλεξε την ομάδα εντολών στην οποία αντιστοιχεί το x και αν δεν υπάρχει καμία τέτοια ομάδα εκτέλεσε την εξ ορισμού ομάδα εντολών.

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 18 Διακλάδωση πολλαπλής επιλογής Εναλλακτικά αντικατάσταση των σύνθετων εντολών if else if με την εντολή πολλαπλής επιλογής switch Περίπτωση 1 Αληθές Π1 break Ψευδές Περίπτωση 2 Αληθές Π2 break Ψευδές Περίπτωση N Αληθές ΠN break Ψευδές Πρόταση Default

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 19 Διακλάδωση πολλαπλής επιλογής Η εντολή πολλαπλής επιλογής switch στη C switch(έκφραση) case (σταθ. Έκφρ. 1) : προτάσεις; break; case (σταθ. Έκφρ. 2) : προτάσεις; break;. case (σταθ. Έκφρ. N) : προτάσεις; break; default προτάσεις; break;

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 20 Ιδιαιτερότητες της εντολής switch στην C Σταθερά έκφραση μόνο τιμές τύπου int και char Δύο case δεν μπορούν να έχουν την ίδια τιμή Ελέγχει μόνο την ισότητα Οι προτάσεις κάτω από την ετικέτα default εκτελούνται όταν δεν ικανοποιείται καμία από τιςcase ετικέτες

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 21 Ιδιαιτερότητες της εντολής switch στην C Η default δεν είναι απαραίτητα η τελευταία ετικέτα Η εντολή break δηλώνει άμεση έξοδο από την switch Όταν παραλείπεται ακολουθεί η εκτέλεση της αμέσως επόμενης case ετικέτας και όχι της default τιμής

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 22 Παράδειγμα της εντολής switch στην C char grade; grade = A ; switch (grade) case A : printf( Grade is A \n ); break; case B : printf( Grade is B \n ); break; case C : printf( Grade is B \n ); break; default: printf( Incorrect grade letter \n ); break; if (grade == A ) printf( Grade is A \n ); else if (grade == B ) printf( Grade is B \n ); else if (grade == C ) printf( Grade is C \n ); else printf( Incorrect grade letter \n );

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 23 Νέο Πρόγραμμα Δημιουργήστε ένα νέο project με τίτλο switch Αποθήκευση στον φάκελο Domimenos_ΑΜXXX\22_04_2010 όπου XXX το Α.Μ. Σας π.χ. Domimenos_ΑΜ150\22_04_2010

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 24 Άσκηση Γράψτε ένα πρόγραμμα με switch που ανάλογα με την τιμή της μεταβλητής Χ τυπώνει το μήνυμα TRUE αν Χ=1 το μήνυμα FALSE αν Χ=0 το μήνυμα UNDEFINED σε κάθε άλλη περίπτωση

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 25 Νέο Πρόγραμμα Δημιουργήστε ένα νέο project με τίτλο switch2

Άσκηση Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 26 Γράψτε ένα πρόγραμμα που να διαβάζει 2 αριθμούς και μία επιλογή από μενού με επιτρεπτές πράξεις 1: πρόσθεση 2: αφαίρεση 3: πολλαπλασιασμός 4: διαίρεση Θα πρέπει το πρόγραμμα σας να εκτελεί την ανάλογη πράξη μεταξύ των 2 αριθμών που διάβασε και να τυπώνει το αποτέλεσμα.

Άσκηση Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 27 Επεκτείνετε το πρόγραμμα σας ώστε να χρησιμοποιήσετε την εντολή define #define ADD 1 #define SUB 2 #define MUL 3 #define DIV 4

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 28 #include <stdlib.h> #include <stdio.h> #define ADD 1 #define SUB 2 #define MUL 3 #define DIV 4 int main() float num1, num2, result; int choice; printf("\n Give first number : "); scanf("%f",&num1); printf("\n Give second number : "); scanf("%f",&num2); printf("\n Select one of the following: "); printf("\n\t\t 1. Add "); printf("\n\t\t 2. Substract "); printf("\n\t\t 3. Multiply "); printf("\n\t\t 4. Divide "); printf("\n Choice :"); scanf("%d",&choice); switch(choice) case ADD: result = num1 + num2; break; case SUB : result = num1 - num2; break; case MUL: result = num1 * num2; break; case DIV: result = num1 / num2; break; default : printf( Not defined"); break; printf("result = %f", result); return 0;

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 29 Break Στο προηγούμενο πρόγραμμα σβήστε την break από την περίπτωση πρόσθεσης και δοκιμάστε να κάνετε πρόσθεση Τι παρατηρείτε;;

#include<stdio.h> #include<stlib.h> void main(void) int x; printf( Dwse ari8mo mina ); scanf( %,&x); switch(x) case 1: printf( Ianouarios \n ); break; case 2: printf( Febrouarios \n ); break;... case 12: printf( Dekembrios \n ); break; default: printf( O ari8mos tou mina einai ektos oriwn\n ); break; Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 30 Παράδειγμα

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 31 Δομή Επανάληψης (Βρόγχοι-Loop) Η επανάληψη ενός συνόλου εντολών για όσες φορές επιθυμούμε ή μέχρι να πληρωθεί μια συνθήκη τερματισμού. Η επανάληψη αποτελεί ένα δυναμικό εργαλείο για την σχεδίαση και επίλυση σύνθετων προβλημάτων που εμπεριέχουν επαναλαμβανόμενες διεργασίες Όταν ο βρόχος θα εκτελείται αενάως καλείται ατέρμων βρόχος (infinite loop) Επανάληψη και καθημερινά προβλήματα, π.χ. Ανσασέρ, Αυτόματες μηχανές πώλησης, ΑΤΜ

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 32 Κατηγοριοποίηση Επαναλήψεων Με τον τρόπο οδηγήσεως Βρόχους οδηγούμενους από μετρητή Βρόχους οδηγούμενους από γεγονός Ψευδής Συνθήκη Επανάληψης Αληθής Πρόταση 1 Πρόταση 1

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 33 Κατηγοριοποίηση Επαναλήψεων Με την θέση στην οποία γίνεται ο έλεγχος κριτηρίου Με συνθήκη εισόδου (pre-test loops) ( Το κριτήριο τερματισμού ελέγχεται στην αρχή του βρόχου) Με συνθήκη εξόδου (post-testloops) ( Το κριτήριο τερματισμού ελέγχεται στο τέλος του βρόχου) Ψευδής Συνθήκη Επανάληψης Πρόταση 1 Αληθής Πρόταση 1 Πρόταση 2 Πρόταση 2 Συνθήκη Επανάληψης Ψευδής Αληθής

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 34 Βρόχος while Βρόχος με συνθήκη εισόδου Μπορεί να οδηγείται τόσο από μετρητή όσο και από γεγονός Για όσο η συνθήκη είναι αληθής επανέλαβε Έλεγχος συνθήκης στην αρχή Ο βρόχος while για να έχει λογική υπόσταση θα πρέπει πριν την πρώτη επανάληψη η συνθήκη να είναι αληθής στο μπλόκ εντολών επανάληψης να υπάρχει η δυνατότητα αλλαγής της συνθήκης σε ψευδής Επιλέγεται σε περιπτώσεις που δεν είναι γνωστός εκ των προτέρων ο αριθμός των επαναλήψεων

while Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 35 Αρχικά θα πρέπει να είναι ΑΛΗΘΗΣ Ψευδής Συνθήκη Επανάληψης Αληθής Μπλοκ Εντολών

Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 36 Βρόχος while στην C - Δήλωση & λειτουργία int count = 30; int limit = 40; while( count < limit ) count++; printf( count is %d\n, count );