2. Εντολές Εισόδου - Ο Επαναληπτικός Βρόγχος for - Χαρακτήρες διαφυγής

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "2. Εντολές Εισόδου - Ο Επαναληπτικός Βρόγχος for - Χαρακτήρες διαφυγής"

Transcript

1 2. Εντολές Εισόδου - Ο Επαναληπτικός Βρόγχος for - Χαρακτήρες διαφυγής Εισαγωγή Αφού είδαµε γραµµή - γραµµή πως θα εκτελεσθεί το πρόγραµµα 2, θα δούµε τώρατοπρόγραµµα στην ολότητά του, τί ακριβώς κάνει όταν εκτελείται και πως µπορούµε να το τροποποιήσουµε ώστε να γίνει ένα πιο χρήσιµο πρόγραµµα. Επαναδιατυπώνουµε το πρόβληµά µας το οποίο είναι: να γραφεί ένα πρόγραµµα το οποίο υπολογίζει το µέσο όρο ορισµένων δεδοµένων αριθµών. Προηγουµένως εξετάσαµε τοπρόγραµµα 2 το οποίο παραθέτουµε ξανά: #include <stdio.h> void main() { float sum,a1,a2,a3,a4,a5,av; sum=0; a1=1.65; a2=1.80; a3=1.76; a4=1.73; a5=1.63; sum=a1+a2+a3+a4+a5; av=sum/5.0; printf("average = %f",av); Ας δούµε τίθασυµβεί µόλις ενεργοποιήσουµε τη µεταγλώτιση του προγράµµατος. Καταρχήν, το πρόγραµµά µας πρέπει να είναι γραµµένο σε ένα αρχείο κειµένου που ονοµάζεται πηγαίο αρχείο. Συνήθως το πηγαίο αρχείο πρέπει να έχει ως όνοµα ένατυχαίοόνοµα ακολουθούµενο από την επέκταση.cpp. Π.χ. θα µπορούσαµε ναονοµάσουµε τοαρχείο µας average.cpp. Το όνοµα average.cpp είναι τυχαίο αλλά µας βοηθά µνηµονικάνααναγνωρίζουµε ότι πρόκειται για ένα πρόγραµµα υπολογισµού µέσου όρου. Αν όµως δεν µας ενδιαφέρει να υπάρχει µία µνηµονική διασύνδεση ονόµατος αρχείου και περιεχόµενου του προγράµµατος, θα µπορούσαµε εξίσουκαλά να του δώσουµε οποιοδήποτε άλλο όνοµα, όπως π.χ. george.cpp ή samos.cpp (πάντα όµως µετην επέκταση.cpp). Το πηγαίο αρχείο περιέχει το κείµενο του προγράµµατος. Παρ' όλα αυτά ο υπολογιστής δεν µπορεί να αντιληφθεί το αρχείο αυτό ως εκτελέσιµο πρόγραµµα. Η παραγωγή ενός αρχείου εκτελέσιµου από το λειτουργικό επιτυγχάνεται µε τη µεσολάβηση του µεταγλωτιστή (compiler) και του διασυνδετή (linker). Π.χ. το περιβάλλον της visual c++ θα µας ζητήσει, αφού πληκτρολογήσουµε και σώσουµε τοπηγαίοαρχείοµε ένα όνοµα που να τελειώνει ως.cpp, να µεταγλωτίσουµε (compile) το πηγαίο αρχείο και στη συνέχεια να παράγουµε ένα εκτελέσιµοαρχείο(build.exe). Κατά τη διάρκεια της µεταγλώτισης ελέγχονται τυχόν συντακτικά ή άλλου τύπου σφάλµατα στο πηγαίο αρχείο του προγράµµατος. Οταν αυτός ο έλεγχος αποβεί επιτυχής, είναι δυνατή η παραγωγή ενός εκτελέσιµου αρχείου µε τη χρήση της εντολής build. Το εκτελέσιµο αρχείο είναι ένα δυαδικό αρχείο που έχει το ίδιο όνοµα µε τοπηγαίοαρχείοαλλάεπέκταση.exe. Π.χ. µε αφετηρίατο πηγαίο αρχείο average.cpp θα παραχθεί το εκτελέσιµο αρχείοaverage.exe. Αυτό το τελευταίο είναι που αναγνωρίζεται από το λειτουργικό και "τρέχει" αν ενεργοποιήσουµε την κλήση του. 10

2 Εφόσον δηµιουργήθηκε, το εκτελέσιµο αρχείο average.exe είναι ένα αυτόνοµο πρόγραµµα που τρέχει χωρίς να έχει πια ανάγκη το πηγαίο αρχείο average.cpp ή ακόµη και τον ίδιο το µεταγλωτιστή. Το εκτελέσιµο αρχείο average.exe θα µπορούσαµε να το κάνουµε εικονίδιο στη γραµµή εργασίαςµας, να το αντιγράψουµε σεµια δισκέτα και να το διανείµουµεωςέναπρόγραµµα που τρέχει, ανεξάρτητα από τη γλώσσα προγραµµατισµού που χρησιµοποιήθηκε για να το δηµιουργήσει. Οταν κληθεί το εκτελέσιµο αρχείο average.exe, θα εκτελέσει τις διεργασίες που έχουµε ορίσει στο πρόγραµµα average.cpp. Οι εντολές εκχώρησης των τιµών των πέντε υψών στις µεταβλητές a1 ως a5, καθώς και οι εντολές που αφορούν την εκχώρηση τιµών στις µεταβλητές sum και av, θαεκτελεστούνστηνκεντρική µονάδα επεξεργασίας του υπολογιστή. Ο χρήστης δεν έχει κάποιο τρόπο να δει το αποτέλεσµατων διεργασιών αυτών, ούτε πρόκειται να τυπωθεί κάτι στην οθόνη που να τον ενηµερώνει για την πορεία εκτέλεσης των εντολών εκχώρησης, ή για τις συγκεκριµένες τιµές των υψών που εκχωρούνται σε κάθε µεταβλητή. Η πρώτη φορά που ο χρήστης θα µάθει κάτι για το πρόγραµµα είναι µόλις το πρόγραµµα φτάσει στη γραµµή printf("average = %f",av); οπότε το πρόγραµµα θα τυπώσει ένα κείµενο στην οθόνη. ηλαδή, οχρήστηςενηµερώνεται για τα αποτελέσµατα του προγράµµατος µόνο αν έχει προνοήσει να συµπεριλάβει στο πρόγραµµα µία εντολή εξόδου (εδώ συγκεκριµένα, την printf). Ταυτόχρονα όµως, το συγκεκριµένο πρόγραµµα έχει ένα σοβαρό µειονέκτηµα. Τα πέντε ύψη των οποίων υπολογίζεται ο µέσος όρος έχουν ήδη προκαθοριστεί µέσα στο πρόγραµµα, µιας και οι τιµές τους έχουν εκχωρηθεί εκ των προτέρων στις µεταβλητές a1 ως a5. Αυτό µας περιορίζει πολύ, διότι αν ο χρήστης ήθελε να υπολογίσει το µέσο όρο µιας διαφορετικής πεντάδας υψών, θα έπρεπε να ξαναµπεί στο πηγαίο πρόγραµµα average.cpp και να αλλάξει τις τιµές των υψών στις εντολές εκχώρησης. Αφού αλλάξουν οι τιµές των µεταβλητών, θα πρέπει το πηγαίο αρχείο να µεταγλωτιστεί εκ νέου και να προκύψει ένα καινούργιο εκτελέσιµο αρχείο το οποίο θα πραγµατοποιήσει το νέο υπολογισµό. Αυτή η διαδικασία είναι πολύπλοκη, αλλά είναι συχνά και ανέφικτη, διότι ο χρήστης του προγράµµατος είναι πιθανόν διαφορετικό πρόσωπο από τον προγραµµατιστή και εποµένως δεν έχει πρόσβαση στο πηγαίο αρχείο average.cpp. Χρειαζόµαστε ένα πιο "έξυπνο" πρόγραµµα, στο οποίο ο χρήστης να έχει τη δυνατότητα να εισάγει οίδιοςαπότοπληκτρολόγιοτις τιµές των πέντε υψών κατά τη διάρκεια της ροής του εκτελέσιµου αρχείου average.exe. Θέλουµε δηλαδήναδώσουµε στο χρήστη τη δυνατότητα να επικοινωνήσει µε τον υπολογιστή όχι µόνο διαβάζοντας µηνύµατα από την οθόνη (έξοδος) αλλά και εισάγοντας δεδοµένα απότοπληκτρολόγιο(είσοδος). Η εντολή εισόδου scanf Η εισαγωγή δεδοµένων γίνεται µε τη χρήση της εντολής scanf. Ο τρόπος που συντάσσεται η εντολή scanf φαίνεται στο εξής "βελτιωµένο" πρόγραµµα υπολογισµού του µέσου όρου 5 αριθµών. 3ο Πρόγραµµα Γραµµή #include <stdio.h> 1 int main() 2 { 3 float sum,a1,a2,a3,a4,a5,av; 4 sum=0.0; 5 scanf("%f",&a1); 6 sum=sum+a1; 7 scanf("%f",&a2); 8 sum=sum+a2; 9 11

3 scanf("%f",&a3); 10 sum=sum+a3; 11 scanf("%f",&a4); 12 sum=sum+a4; 13 scanf("%f",&a5); 14 sum=sum+a5; 15 av=sum/5.0; 16 printf("average = %f",av); 17 return 0; Μετά τις 4 πρώτες γραµµές, στην πέµπτη γραµµή ηµεταβλητή sum παίρνει αρχικά την τιµή µηδέν. Η sum θα χρησιµοποιηθεί ως µια µεταβλητή στην οποία προστίθενται συνεχώς κάποιες τιµές. Ας σηµειωθεί ότι το όνοµα sum είναι τυχαίο και δεν έχει καµµία σχέση µε το γεγονός ότι η sum θα χρησιµοποιηθεί ως µεταβλητή άθροισης (πέρα από ένα µνηµονικό ρόλο). Η διαφορά του προγράµµατος αυτού από το προηγούµενο είναι ότι, αντί να γράφουµε τις τιµές των 5 µεταβλητών a1 ως a5 µέσα στο πρόγραµµα, γράφουµε πέντε διαδοχικές εντολές εισόδου της τιµής των µεταβλητών a1 ως a5 απότοπληκτρολόγιο. Γραµµή 6 scanf("%f",&a1); Ησηµασία της εντολής scanf("%f",&a1)είναι η εξής: "σταµάτησε τη ροή του προγράµµατος και περίµενε µε τον κέρσορα να αναβοσβήνει στην οθόνη µέχρι ο χρήστης να πληκτρολογήσει κάποια τιµή µεταβλητής στη µορφή που ορίζεται µέσα στα διπλά εισαγωγικά (%f). Μόλις ο χρήστης πληκτρολογήσει την τιµή της µεταβλητής και πατήσει Enter, να µεταφερθεί η τιµή που πληκτρολόγησε στη θέση µνήµης που αντιστοιχεί στην µεταβλητή a1". Αυτό πρακτικά σηµαίνει ότι, αφού ο χρήστης πληκτρολογήσει µια τιµή και πατήσει Enter, η τιµή αυτή θα εκχωρηθεί στην µεταβλητή a1. Οι δήλωση µορφής που δίνεται ανάµεσα στα διπλά εισαγωγικά είναι πανοµοιότυπη µε τη δήλωση µορφήςόπωςτηνπεριγράψαµε στοπροηγούµενο κεφάλαιο σε σχέση µε την εντολή εξόδου printf. Γραµµή 7 sum=sum+a1; Στη γραµµή 7 βλέπουµε µία απροσδόκητη σύνταξη στην εντολή εκχώρησης µιας τιµής στη µεταβλητή sum. Παρατηρούµε ότιηsum εµφανίζεται και στο δεξί µέλος (όπως αναµενόταν) αλλά και στο αριστερό µέλος της εντολής εκχώρησης. Αυτήησύνταξη, που αλγεβρικά δηµιουργεί προβλήµατα, στις περισσότερες γλώσσες προγραµµατισµού γίνεται αποδεκτή. Η σηµασία της γραµµής sum=sum+a1; είναι: "Να εκχωρηθεί ως νέα τιµή της µεταβλητής sum η τρέχουσα τιµή της αυξηµένη κατά την τιµή της a1" Στη C, η ίδια εντολή είναι δυνατόν να συνταχθεί µε ένα πιο σύντοµο τρόπο που δεν απαντάται στις περισσότερες άλλες γλώσσες προγραµµατισµού. Ηεντολή sum+=a1; έχει ακριβώς την ίδια σηµασία µε τηνεντολήsum=sum+a1; 12

4 Στην περίπτωσή µας, δεδοµένου ότι η µεταβλητή sum είχε αρχικά την τιµή 0(γραµµή 5), στην οποία προστίθεται τώρα η τιµή της a1, η νέα τιµή της sum µετά την εκτέλεση της εντολής θα είναι 0+a1 δηλαδή ίση µε a1. Γραµµές 8 ως 15 Στις γραµµές 8 ως 15 επαναλαµβάνεται η ίδια ακριβώς διαδικασία όπως και στις γραµµές 6 και 7, για τις άλλες τέσσερεις µεταβλητές a2 ως a5. Η εντολή scanf("%f",&a2)στη γραµµή 8 σταµατάει τη ροή του προγράµµατος και περιµένει µε τον κέρσορα να αναβοσβήνει στην οθόνη µέχρι ο χρήστης να πληκτρολογήσει µια δεύτερη πραγµατική τιµή, η οποία, µετά το Enter, εκχωρείται στη µεταβλητή a2. Η εντολή sum=sum+a2; στη γραµµή 9 προκαλεί την εκχώρηση, ως νέα τιµή της µεταβλητής sum, την τιµή που είχε ως τότε αυξηµένη κατά a2. εδοµένου ότι η τρέχουσα τιµή της sum ήταν a1, η νέα τιµή της sum θα είναι a1+a2. Η διαδικασία αυτή επαναλαµβάνεται κατά πανοµοιότυπο τρόπο µέχρι να φορτωθούν διαδοχικά οι τιµές και των πέντε µεταβλητών και να αυξάνεται επίσης διαδοχικά η τιµή της sum κατά την εκχωρούµενη κάθε φορά τιµή τηςεπόµενης µεταβλητής a3, a4, a5. Στο τέλος της διαδικασίας αυτής (γραµµή 15) ητρέχουσα τιµή τηςsum είναι a1+a2+a3+a4+a5. Γραµµή 16 και 17 av=sum/5.0; printf("average = %f",av); Στη γραµµή 16 εκχωρείται στη µεταβλητή av τιµή ίση µε την τιµή της sum διαιρεµένη δια 5. Αυτή η εκχώρηση αντιστοιχεί στην τιµή τουµέσου όρου των πέντε τιµών a1 ως a2 µια και η sum έχει τιµή ίσηµε a1+a2+a3+a4+a5. Τέλος, η εντολή printf στη γραµµή 17 θα τυπώσει στην οθόνη το κείµενο Average = ακολουθούµενο από την τρέχουσα τιµή της µεταβλητής av τυπωµένη σε µορφή πραγµατικού αριθµού απλής ακρίβειας. Η εντολή αυτή είναι δηλαδή η απαραίτητη εντολή εξόδου του αποτελέσµατος στην οθόνη. Παρατηρούµε ότι το πρόγραµµα 3 έχει τώρα µια τυπική µορφή προγράµµατος που θα µπορούσε να αποδοθεί σχηµατικά: Είσοδος δεδοµένων -----> επεξεργασία δεδοµένων -----> έξοδος αποτελεσµάτων Παρατήρηση ως προς τη σκοπιµότητα της γραµµής 5 sum=0.0; Στη γραµµή 5 εκχωρείται στη µεταβλητή sum ηαρχικήτιµή µηδέν. Τι θα συνέβαινε αν δεν είχε εκχωρηθεί η τιµή αυτή στην αρχή του προγράµµατος; Στην περίπτωση αυτή, η πρώτη γραµµή στην οποία θα είχαµε εκχώρησητιµής στην sum θα ήταν η γραµµή 7 sum=sum+a1;αλλά, ηεντολή αυτή προϋποθέτει ήδη ότι η sum έχει κάποια αρχική τιµή η οποία θα χρησιµοποιηθεί στο δεξιό µέλος της εντολής εκχώρησης προκειµένου να γίνει η εκχώρηση µιας νέας τιµής της sum στο αριστερό µέλος. Αν έχουµε παραλήψει να δώσουµε κάποια αρχική τιµήστηsum τότε κατά την εκτέλεση του προγράµµατος η sum παίρνει ανεξέλεγκτα µια τυχαία τιµή από το πρόγραµµα. Αυτή είναι µία βασική διαφορά της C σε σχέση µε άλλες γλώσσες, όπου αν παραλείψουµε την εκχώρηση αρχικής τιµής σε µια µεταβλητή αυτή παίρνει αυτόµατα την τιµή µηδέν. Τονίζεται ότι στη C οι µεταβλητές δεν θεωρούνται ότι έχουν αρχικά τιµή µηδέν. Εποµένως, η εκχώρηση µιας τιµής σε µια µεταβλητή πρέπει υποχρεωτικά να γίνεται προτού να χρησιµοποιηθεί η µεταβλητή αυτή στο δεξιό µέλος κάποιας άλλης εντολής εκχώρησης του προγράµµατος. Επαναληπτική διαδικασία - Οβρόγχοςfor Το 3ο πρόγραµµα είναι σίγουρα καλύτερο από το 2ο πρόγραµµα στο ότι επιτρέπει την εισαγωγή των πέντε αριθµών από το πληκτρολόγιο και όχι ως µέρος του προγράµµατος. Παρ' όλα αυτά και το 13

5 πρόγραµµα αυτό έχει σοβαρούς περιορισµούς. Ο σηµαντικότερος περιορισµός είναι ότι το πλήθος των δεδοµένων είναι αναγκαστικά πέντε. Είναι όµως δυνατό να θέλουµε να βρούµε το µέσο όρο πολύ περισσότερων δεδοµένων από 5. Εστω π.χ. ότι θέλαµε το µέσο όρο 100 αριθµών. Είναι σαφές ότι δεν θα ήταν καθόλου πρακτικό να γράψουµε έναν κώδικα µε εκατό ζευγάρια εντολών του τύπου scanf("%f",a1), και sum+=a1 και οµοίως για το a2, a3,...,a100. εδοµένου ότι και τα εκατό ζεύγη εντολών θα εκτελούσαν την ίδια επαναληπτική διαδικασία (δηλαδή την εισαγωγή από το πληκτρολόγιο ενός αριθµού και την πρόσθεση του αριθµού αυτού στην τρέχουσα τιµή της sum), θα ήταν σκόπιµο να υπάρχει µία εντολή που να υλοποιεί αυτόµατα την επαναληπτική αυτή διαδικασία. Η εντολή που υλοποιεί µια επαναληπτική διαδικασία είναι η εντολή βρόγχου for. Η σύνταξη της εντολής for φαίνεται από το εξής "βελτιωµένο"4οπρόγραµµα: 4ο Πρόγραµµα Γραµµή #include <stdio.h> 1 int main() 2 { 3 float sum=0,a,av; 4 int i; 5 for (i=1; i<=100; i+=1) 6 { 7 scanf("%f",&a); 8 sum+=a; 9 10 av=sum/100.0; 11 printf("average value = %f",av); 12 return 0; Γραµµή 4 float sum=0,a,av; Στη γραµµή 4 βλέπουµε ήδη µια µικρή αλλαγή σε σχέση µε το προηγούµενο πρόγραµµα. Παρατηρούµε ότι υπάρχει όχι µόνο η δήλωση της µεταβλητής sum ως πραγµατική, αλλά ταυτόχρονα και η εκχώρηση της τιµής µηδέν στη sum. Αυτήησύνταξηείναιµια διευκόλυνση της C. Μας επιτρέπει δηλαδή να δηλώνουµε και να ορίζουµε ταυτόχρονα την αρχική εκχώρηση τιµής σε µια µεταβλητή. Γραµµή 5 και 6 int i; for (i=1; i<=100; i+=1) { εντολές στο εσωτερικό του βρόγχου Η καρδιά του προγράµµατος είναι ο επαναληπτικός βρόγχος που ορίζεται στη γραµµή 6. Η γραµµή 6 for(i=1; i<=100; i+=1) έχει την εξής σηµασία: "Η ακέραιη µεταβλητή i να ξεκινήσει από την τιµή 1. Να εκτελεστούν οι εντολές που βρίσκονται στο εσωτερικό του βρόγχου ανάµεσα στις δύο αγκύλες του βρόγχου. Μόλις εκτελεσθεί και η τελευταία εντολή στο εσωτερικό του βρόγχου να επιστρέψει η ροή του προγράµµατος στη γραµµή 6 που περιέχει τη εντολή for. Η ακέραιη µεταβλητή i να αυξηθεί κατά ένα. Να ελεγχθεί αν είναι αληθής η συνθήκη i µικρότερο ή ίσο του 100. Αν αυτό ισχύει να εκτελεστεί µία ακόµη επανάληψητουβρόγχου." 14

6 Αυτό σηµαίνει ότι η ακέραιη µεταβλητή i θα πάρει αρχικά την τιµή 1. Στη συνέχεια θα εκτελεσθούν οι εντολές στο εσωτερικό του βρόγχου. Στη συνέχεια η i θα αυξηθεί κατά ένα (δηλαδή θα γίνει ίση µε 2) και θα εκτελεσθούν ξανά οι εντολές στο εσωτερικό του βρόγχου. Στη συνέχεια η i θα αυξηθεί κατά ένα (δηλαδή θα γίνει ίση µε 3) και θα εκτελεσθούν ξανά οι εντολές στο εσωτερικό του βρόγχου, κ.ο.κ., µέχρι η i να γίνει ίση µε 101. Τότε η συνθήκη που έχουµε θέσει στο δεύτερο σκέλος της εντολής for (δηλ. το i να είναι µικρότερο ή ίσο του 100) δεν είναι πλέον αληθής. Αυτό σηµαίνει ότι το πρόγραµµα θα ξεφύγει τελείως από το βρόγχο και θα εκτελέσει την αµέσως επόµενη εντολή µετά την αγκύλη η οποία κλείνει το βρόγχο. Παρατηρήσεις σχετικά µε τη σύνταξη του for Σε αντίθεση µε άλλες γλώσσες, στη C υπάρχει πολύ µεγάλη ευελιξία ως προς την αποδεκτή σύνταξη των τριών σκελών στο εσωτερικό της παρένθεσης της εντολής for. Εδώ δώσαµε τη σύνταξη που είναι πλησιέστερα προς την αντίστοιχη σύνταξη των εντολών βρόγχου σε άλλες γλώσσες προγραµµατισµού. Εστω και µ' αυτή την οπτική γωνία, αξίζει να σηµειωθεί ότι 1) Η µεταβλητή i δεν είναι υποχρεωτικά ακέραιη ούτε οφείλει να ξεκινάει από την τιµή 1(πρέπει όµως να είναι δηλωµένη όπως εδώ στη γραµµή 5 του προγράµµατος) 2) Η περάτωση του βρόγχου γίνεται όταν πάψει να ισχύει η συνθήκη στο µεσαίο σκέλος της εντολής for. Μπορούµε να έχουµε πολύ γενικότερες συνθήκες απ 'οτι η απλή συνθήκη i<= ενός αριθµού. 3) Το βήµα της προόδου της i µπορεί να είναι διάφορο του 1. Π.χ. µπορούµε ναέχουµε i+=3 που σηµαίνει η µεταβλητή i να αυξάνεται µε βήµα 3. 4) Στην περίπτωση του βήµατος 1, υπάρχει και µία συντοµευµένη γραφή της εντολής i+=1. Η εντολή i++ αυξάνει την µεταβλητή i κατά 1, όπως και η εντολή i+=1. Αυτήησυντοµευµένη γραφή είναι γενικότερα επιτρεπτή και όχι µόνο ως τµήµα τηςεντολήςfor. 5) Αν στο εσωτερικό του βρόγχου εκτελείται µόνο µία εντολή, τότε επιτρέπεται να παραληφθούν οι αγκύλες και να γραφεί η µοναδική εντολή αµέσως µετά το κλείσιµο της παρένθεσης της for, ακολουθούµενη από ερωτηµατικό. Π.χ. οι γραµµές κώδικα for(i=1; i<=5; i++) { sum+=a; µπορούν να αποδοθούν τελείως ισοδύναµα ως for(i=1; i<=5; i++) sum+=a; παραλείποντας τις αγκύλες. Ως ακραίο παράδειγµα, ηεντολή for(i=1; i<=5; i++); σηµαίνει να εκτελεσθεί ο βρόγχος που προβλέπεται χωρίς να υπάρχει καµµία εντολή στο εσωτερικό του βρόγχου. Εδω δηλαδή απλά το i σε κάθε βήµα θα αυξάνει κατά ένα, µέχρι να γίνει ίσο µε 6 οπότε το πρόγραµµα θαεξέλθειαπότηνεκτέλεσητουβρόγχου. Τέτοιοι βρόγχοι δίνονται καµµιά φορά για να καθυστερεί"τεχνητά" η ροή ενός προγράµµατος, µια και χρειάζεται λίγος χρόνος για να εκτελεστεί έστω και ένας βρόγχος κενός εσωτερικών εντολών. 15

7 Γραµµή 6 ως 10 for (i=1; i<=100; i+=1) { scanf("%f",&a); sum+=a; Επιστρέφουµε στην επεξήγηση του προγράµµατος 4. Λόγω του επαναληπτικού βρόγχου που ορίζεται στη γραµµή 6, θα εκτελεσθεί 100 φορές το ζεύγος των εντολών στο εσωτερικό του βρόχου. Σε κάθε επανάληψη, λόγω της scanf("%f",&a); στη γραµµή 8 θα σταµατάει η ροή του προγράµµατος µέχρι ο χρήστης να δώσει ένα πραγµατικό αριθµό από το πληκτρολόγιο, ο οποίος θα εκχωρείται ως τρέχουσα τιµή τηςµεταβλητής a. Στη συνέχεια, στη γραµµή 9 sum+=a; η µεταβλητή sum θα προσαυξάνεται κατά την τρέχουσα τιµή της a, ακριβώς δηλαδή κατά την τιµή που εισήγαγε αµέσως προηγουµένως ο χρήστης από το πληκτρολόγιο. Στην επόµενη επανάληψη θα ανανεώνονται οι τιµές τόσο της a όσο και της sum. Στο τέλος του επαναληπτικού βρόγχου στην sum θα έχουν προστεθεί διαδοχικά εκατό τιµές που εισήχθησαν από το πληκτρολόγιο. Γραµµή 11 ως 13 av=sum/100.0; printf("average value = %f",av); Οι γραµµές 11 και 13 είναι οι ίδιες µε τοπροηγούµενο πρόγραµµα. Στην γραµµή 11 εκχωρείται στην av ητιµή που αντιστοιχεί στο µέσο όρο των 100 εισαχθέντων τιµών και στη γραµµή 12 τυπώνεται το αποτέλεσµα (τιµή της µεταβλητής av) στην οθόνη σε µορφή πραγµατικού δεξιά από το συνοδευτικό κείµενο Average value =. Κάνοντας το πρόγραµµα "Φιλικό προς το χρήστη" Το πρόγραµµα 4 είναι ήδη πολύ πιο αποτελεσµατικό από το πρόγραµµα 3, αλλά έχει και αυτό ανεπιθύµητους περιορισµούς. Ο κυριότερος περιορισµός είναι ότι η συνθήκη i<=100 στο µεσαίο σκέλος του βρόγχου επιβάλλει να γίνονται 100 επαναλήψεις του βρόγχου. Αυτό σηµαίνει ότι ο χρήστης θα πρέπει να εισαγάγει υποχρεωτικά 100 αριθµούς και το πρόγραµµα τουείναιάχρηστοαν επιθυµεί να βρεί το µέσο όρο άλλου πλήθους αριθµών π.χ. 10, 20 ή 99 αριθµών. Εποµένως µια πρώτη αλλαγή είναι να επιτρέψουµε στον χρήστη να καθορίζει εκείνος από το πληκτρολόγιο πόσους αριθµούς θέλει να εισάγει και να υπολογίζεται ο µέσος όρος αυτών. Το επόµενο πρόγραµµα 5 υλοποιεί την τροποποίηση αυτή. Πρόγραµµα 5 Γραµµή #include <stdio.h> 1 int main() 2 { 3 float sum=0,a,av; 4 int i,num; 5 scanf("%d",&num); 6 for (i=1; i<=num; i++) { 7 scanf("%f",&a); 8 sum+=a; 9 10 av=sum/num; 11 printf("average value = %f",av); 12 return 0;

8 Παρατηρούµε ότι οι αλλαγές είναι στις γραµµές 5 ως 7 και στη γραµµή 11. Στη γραµµή 5 έχει δηλωθεί µία επιπλέον ακέραιη µεταβλητή µε όνοµα num. Η µεταβλητή αυτή θα προσδιορίζει το πλήθος των επιθυµητών επαναλήψεων του βρόγχου for της γραµµής 7. Η τιµή της num επιθυµούµε να εισάγεται από τον ίδιο το χρήστη µέσω του πληκτρολογίου. Αυτό γίνεται µε την εντολή scanf στη γραµµή 6. H scanf στη γραµµή 6 θα ζητήσει την εισαγωγή µίας ακέραιης τιµής (λόγω της δήλωσης µορφής "%d") από το πληκτρολόγιο, και µετά το Enter του χρήστη θα εκχωρήσει την τιµή αυτή στη µεταβλητή num. Προσέξτε επίσης την αλλαγή στη γραµµή 11. Ο µέσος όρος είναι η τιµή που εκχωρείται στη µεταβλητή av και είναι ίσος µε το άθροισµα δια του πλήθους των δεδοµένων, δηλ. sum/num. Πράξεις ανάµεσα σε µεταβλητές διαφορετικού τύπου. Εδώ υπάρχει µία λεπτοµέρεια που δε γίνεται αµέσως αντιληπτή, αλλά πρέπει να της δώσουµε µεγάλη σηµασία. Η αιτούµενη πράξη sum/num είναι µια πράξη ανάµεσα στην τιµή της µεταβλητής sum, που έχει δηλωθεί ως πραγµατική απλής ακρίβειας, και στην τιµή της µεταβλητής num που έχει δηλωθεί ως ακέραιη. Εποµένως τίθεται το ερώτηµα αν είναι δυνατή µια τέτοια πράξη ανάµεσα σε δύο διαφορετικούς τύπους µεταβλητών, και αν ναι, τότε τί τύπου θα είναι το εξαγόµενο (δηλ. πραγµατικός ή ακέραιος). Εδώ η C έχει µεγαλύτερη ευελιξία απ' ότι άλλες γλώσσες, όπως π.χ. η fortran. Ισχύει ο κανόνας ότι "ο τύπος µεγαλύτερης ακρίβειας υπερισχύει του τύπου µικρότερηςακρίβειας". Εποµένως στην πράξη µεταξύ µεταβλητής int και µεταβλητής float, η τιµή της µεταβλητής int θα µετατραπεί προσωρινά σε τύπου float και η πράξη θα δώσει εξαγόµενο τύπου float. Οµοίως, αν είχαµε τη µία µεταβλητή float και την άλλη double, η τιµή της float θα µετατρεπόταν προσωρινά σε τύπου double και το εξαγόµενο θα ήταν τύπου double. Εκτύπωση µηνυµάτων στην οθόνη Το πρόγραµµα 5 είναι τώρα ουσιαστικά πλήρες µε την έννοια ότι επιλύει το πρόβληµα πουτέθηκε αρχικά, δηλ: να γραφεί ένα πρόγραµµα το οποίο υπολογίζει το µέσο όρο ορισµένων δεδοµένων αριθµών. Ωστόσο χρειάζεται ακόµη µία βελτίωση η οποία, αν και όχι ουσιώδης για τη ροή του προγράµµατος, είναι ουσιώδης για το χρήστη. Η απαιτούµενη βελτίωση αφορά την εκτύπωση ορισµένων ενηµερωτικών µηνυµάτων τα οποία θα καταστήσουν το πρόγραµµα φιλικό προς το χρήστη την ώρα που ο χρήστης αλληλεπιδρά µε τηροήτουπρογράµµατος. Για να γίνει αυτό αντιληπτό, ας δούµε τί θα συµβεί στην οθόνη του υπολογιστή µόλις κληθεί το εκτελέσιµοαρχείοπουθαπαραχθείαπότηµεταγλώτιση και διασύνδεση του προγράµµατος 5. Οι πρώτες πέντε γραµµές του προγράµµατος (έναρξη, δηλώσεις µεταβλητών) δεν προκαλούν κάποιο "ορατό" φαινόµενο στην οθόνη. Το πρώτο ορατό φαινόµενο στην οθόνη προκαλείται από την εντολή scanf στη γραµµή 6. Λόγω της scanf, θα εµφανιστεί στην οθόνη ένας κέρσορας ο οποίος θα αναβοσβήνει περιµένοντας από το χρήστη να εισαγάγει µία ακέραιη τιµή από το πληκτρολόγιο. Ο προγραµµατιστής γνωρίζει ότι στο σηµείο αυτό ο χρήστης θα πρέπει να εισαγάγει τον πληθικό αριθµό των δεδοµένων του. Οχρήστηςόµως, ειδικά αν δεν είναι ενήµερος για τη δοµή τουπηγαίου κώδικα, δεν έχει ιδέα τί πρέπει να κάνει! Θα κοιτάει εποµένως µε απορία τον κέρσορα που αναβοσβήνει και θα διερωτάται ως προς το τί πρέπει να κάνει. Μια ιδέα θα ήταν να έχουµε τυπώσει και ένα"εγχειρίδιο οδηγιών" του προγράµµατος, το οποίο να εξηγεί στο χρήστη τί πρέπει να κάνει αµέσως µόλις τρέξει το πρόγραµµα. Μια καλύτερη, ωστόσο, ιδέα είναι νατυπώνειτοίδιοτοπρόγραµµα έναενηµερωτικό µήνυµα ώστε να κατευθύνει το χρήστη. Με την εκτύπωση ενηµερωτικών µηνυµάτων και την παροχή άλλων διευκολύνσεων ένα πρόγραµµα γίνεται φιλικό προς το χρήστη. Οι διεργασίες αυτές δεν προσθέτουν τίποτα στην ουσία του αλγόριθµου που επιλύει ένα πρόβληµα, βοηθούν όµως πολύ στην αλληλεπίδραση του χρήστη µε το πρόγραµµα. 17

9 Το ακόλουθο πρόγραµµα 6 είναι το ίδιο µε τοπρόγραµµα 5, έχουν όµως προστεθεί και τρεις εντολές printf που προσφέρουν ενηµερωτικά µηνύµατα προς το χρήστη: 6ο Πρόγραµµα #include <stdio.h> int main() { float sum=0,a,av; int i,num; printf("program calculates the average value of N numbers\n"); printf("how many numbers do you want? \n"); scanf("%d",&num); for (i=1; i<=num; i++) { printf("give the value of number %d\n",i); scanf("%f",&a); sum+=a; av=sum/num; printf("average value = %f",av); return 0; Η πρώτη εντολή printf("this Program calculates the average value of N numbers\n"); στην αρχή του προγράµµατος τυπώνει ένα ενηµερωτικό µήνυµα στα αγγλικά που µεταφράζεται στα ελληνικά "Αυτό το πρόγραµµα υπολογίζειτη µέση τιµήναριθµών". Αυτό το µήνυµα είναιένα"καλωσόρισµα" στο πρόγραµµα που προηγείται οποιασδήποτε διαδικασίας. Η επόµενη εντολή printf("how many numbers do you want? \n"); βοηθάει το χρήστη σηµαντικά. Το αγγλικό µήνυµα που θα εκτυπωθεί µεταφράζεται "Πόσους αριθµούς θέλεις?". Αµέσως µετά την εκτέλεση της printf, ακολουθεί η εντολή scanf("%d",&num);η οποία κάνει τον κέρσορα να αναβοσβήνει στην οθόνη περιµένοντας την εισαγωγή κάποιου αριθµού. Ο χρήστης, έχοντας διαβάσει από την οθόνη το µήνυµα "Πόσους αριθµούς θέλεις?" αντιλαµβάνεται ότι εδώ θα πρέπει να εισαγάγει από το πληκτρολόγιο τον πληθικό αριθµό των δεδοµένων του. Στη συνέχεια το πρόγραµµα προκαλεί την εισαγωγή των δεδοµένων και την άθροισή τους. Πριν από την εντολή scanf("%f",&a);υπάρχει ακόµη έναµήνυµα που κατευθύνει το χρήστη. Η εντολή printf("give the value of number %d\n",i); θα τυπώσει ένα µήνυµα που µεταφράζεται στα ελληνικά "δώσε την τιµή του αριθµού...". Προσέξτε πώς έχει ενταχθεί η εντολή λειτουργικά µέσα στο βρόγχο. Η εντολή printf("give the value of number %d \n",i) θα εκτελεσθεί τόσες φορές όσες και οι επαναλήψεις του βρόγχου. Η ακριβής σηµασία της εντολής είναι :"τύπωσε στην οθόνη το κείµενο Give the value of number και δίπλα στο κείµενο αυτό τύπωσε την τρέχουσα τιµή της µεταβλητής i µε µορφή ακεραίου. Στη συνέχεια άλλαξε γραµµή εκτύπωσης στην οθόνη". Καθώς το i προχωράει µε βήµα 1 σε κάθε επανάληψη του βρόγχου, στη πρώτη επανάληψη του βρόγχου η εκτέλεση της εντολής θα τυπώσει στην οθόνη το µήνυµα Give the value of number 1 Στη συνέχεια θα εκτελεστούν κανονικά οι επόµενες δύο εντολές κάτω από την printf. Στη συνέχεια ο βρόγχος θα έχει µια δεύτερη επανάληψη όπου το i θα αυξηθεί κατά 1 και θα γίνει ίσο µε 2. 18

10 Εποµένως, η επανάληψη της εκτέλεσης της printf("give the value of number %d \n",i) θα δώσει τώρα: Give the value of number 2 Οµοίως, στην τρίτη επανάληψη θα έχουµε τηνεκτύπωσητουµηνύµατος Give the value of number 3 και ούτω καθεξής. Παρατηρούµε εδώ ότι έχουµε τη δυνατότητα να χρησιµοποιήσουµε την τιµή της µεταβλητής i(ή οποία µεταβάλλεται κατά τη διάρκεια εκτέλεσης του βρόγχου) σε εντολές που βρίσκονται στο εσωτερικό του βρόγχου. Αυτό είναι µία σηµαντική διευκόλυνση. Χαρακτήρες διαφυγής Αφήσαµε µία λεπτοµέρεια για το τέλος. Μέσα στο κείµενο ανάµεσα στα διπλά εισαγωγικά της printf υπάρχουν και δύο χαρακτήρες \n οι οποίοι δεν εκτυπώνονται στην οθόνη µε τη µορφή τους (δηλ. ανάποδη κάθετος ακολουθούµενη από το γράµµα n). Οι χαρακτήρες αυτοί αντιστοιχούν σε ουσιαστικά σε ένα χαρακτήρα, ο οποίος ονοµάζεται χαρακτήρας διαφυγής και προκαλεί ορισµένο αποτέλεσµα στη µονάδα εξόδου. Ο χαρακτήρας διαφυγής \n σηµαίνει "αλλαγή γραµµής στην οθόνη". Είναι απαραίτητο να βάζουµε το χαρακτήρα αυτό µέσα στα διπλά εισαγωγικά της printf αν θέλουµε τα µηνύµατα να τυπώνονται το ένα κάτω από το άλλο και όχι δίπλα στο άλλο. Αλλοι χαρακτήρες διαφυγής είναι: Χαρακτήρας διαφυγής Νέα Γραµµή \n Οριζόντιος στηλογνώµονας (tab) \t Κατακόρυφος στηλογνώµονας \v Οπισθοχώρηση \b Αλλαγή σελίδας \f Ακουστικό σήµα \a Ανάποδη κάθετος \\ Εισαγωγικό \ ιπλό εισαγωγικό \ 19

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

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

Διαβάστε περισσότερα

1. Τύποι Μεταβλητών - ηλώσεις Μορφής ΗΕντολήΕξόδουPrintf

1. Τύποι Μεταβλητών - ηλώσεις Μορφής ΗΕντολήΕξόδουPrintf 1. Τύποι Μεταβλητών - ηλώσεις Μορφής ΗΕντολήΕξόδουPrintf Εισαγωγή Ενα πρόγραµµα είναι µία ακολουθία εντολών που δίδονται στον υπολογιστή προκειµένου να εκτελέσει ορισµένες εργασίες. Οι εργασίες αυτές µπορούν

Διαβάστε περισσότερα

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

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας

Διαβάστε περισσότερα

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

scanf() scanf() stdin scanf() printf() int float double %lf float Εισαγωγή Στον Προγραµµατισµό «C» Είσοδος Δεδοµένων Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Η συνάρτηση scanf() Η συνάρτηση

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 3ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΕΚΤΥΠΩΣΗ ΚΕΙΜΕΝΟΥ Ένα κείμενο μπορεί να εκχωρηθεί ως τιμή μιας μεταβλητής

Διαβάστε περισσότερα

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

Κεφάλαιο 5ο: Εντολές Επανάληψης Χρήστος Τσαγγάρης ΕΕ ΙΠ Τµήµατος Μαθηµατικών, Πανεπιστηµίου Αιγαίου Κεφάλαιο 5ο: Εντολές Επανάληψης Η διαδικασία της επανάληψης είναι ιδιαίτερη συχνή, αφού πλήθος προβληµάτων µπορούν να επιλυθούν µε κατάλληλες

Διαβάστε περισσότερα

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

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται

Διαβάστε περισσότερα

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5.1 Εισαγωγή στους αλγορίθμους 5.1.1 Εισαγωγή και ορισμοί Αλγόριθμος (algorithm) είναι ένα πεπερασμένο σύνολο εντολών οι οποίες εκτελούν κάποιο ιδιαίτερο έργο. Κάθε αλγόριθμος

Διαβάστε περισσότερα

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι Εισαγωγή Στον Προγραµµατισµό «C» Πίνακες Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Πίνακες στη C Ένας πίνακας στη C είναι

Διαβάστε περισσότερα

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

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 2 ο Τύποι Δεδοµένων Δήλωση Μεταβλητών Έξοδος Δεδοµένων Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Μνήµη και Μεταβλητές Σχέση Μνήµης Υπολογιστή και Μεταβλητών Η µνήµη (RAM) ενός

Διαβάστε περισσότερα

for for for for( . */

for for for for( . */ Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται

Διαβάστε περισσότερα

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της; 1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες (μορφές) της; Η δομή επανάληψης χρησιμοποιείται όταν μια σειρά εντολών πρέπει να εκτελεστεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι

Διαβάστε περισσότερα

2.2.3 Η εντολή Εκτύπωσε

2.2.3 Η εντολή Εκτύπωσε 2.2.3 Η εντολή Εκτύπωσε Η εντολή Εκτύπωσε χρησιµοποιείται προκειµένου να εµφανίσουµε κάτι στην οθόνη του υπολογιστή. Για τον λόγο αυτό ονοµάζεται και εντολή εξόδου. Ισοδύναµα µπορεί να χρησιµοποιηθεί και

Διαβάστε περισσότερα

4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for)

4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for) 4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for) 4.1 Μετρητές Ένας μετρητής (counter) είναι μία μεταβλητή η οποία ξεκινά με μία αρχική τιμή και αυξάνεται κατά ένα κάθε φορά που εκτελείται. Ο αλγόριθμος για έναν μετρητή

Διαβάστε περισσότερα

a = 10; a = k; int a,b,c; a = b = c = 10;

a = 10; a = k; int a,b,c; a = b = c = 10; C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 4 ο Τελεστές Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Ο τελεστής εκχώρησης = Ο τελεστής = χρησιµοποιείται για την απόδοση τιµής (ή αλλιώς ανάθεση τιµής) σε µία µεταβλητή Π.χ.

Διαβάστε περισσότερα

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

ΑΣΚΗΣΗ 2: ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΣΤΗ C Σκοπός της Άσκησης ΑΣΚΗΣΗ 2: ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΣΤΗ C Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας Προγραµµατισµού C: τη δοµή των προγραµµάτων της,

Διαβάστε περισσότερα

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

Οι εντολές ελέγχου της ροής ενός προγράμματος. Κεφάλαιο ΙΙI: Οι εντολές ελέγχου της ροής ενός προγράμματος 31 Εντολές ελέγχου της ροής Στο παρόν κεφάλαιο ασχολούμαστε με την σύνταξη των εντολών της C οι οποίες εισάγουν λογική και ελέγχουν την ροή εκτέλεσης

Διαβάστε περισσότερα

H ΓΛΩΣΣΑ C. Μάθηµα 1: Το Πρώτο µας Πρόγραµµα σε C. ηµήτρης Ψούνης

H ΓΛΩΣΣΑ C. Μάθηµα 1: Το Πρώτο µας Πρόγραµµα σε C. ηµήτρης Ψούνης H ΓΛΩΣΣΑ C Μάθηµα 1: Το Πρώτο µας Πρόγραµµα σε C ηµήτρης Ψούνης 2 Περιεχόµενα Μαθήµατος Α. Θεωρία 1. Κύκλος Ανάπτυξης Προγράµµατος 1. Συγγραφή και Μεταγλώττιση ενός προγράµµατος 2. Εκτέλεση του προγράµµατος

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 3 η Είσοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα

Διαβάστε περισσότερα

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια: Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται

Διαβάστε περισσότερα

H ΓΛΩΣΣΑ C. Μάθηµα 7: Πίνακες. ηµήτρης Ψούνης

H ΓΛΩΣΣΑ C. Μάθηµα 7: Πίνακες. ηµήτρης Ψούνης H ΓΛΩΣΣΑ C Μάθηµα 7: Πίνακες ηµήτρης Ψούνης 2 Περιεχόµενα Μαθήµατος Α. Πίνακες 1. Μονοδιάστατοι Πίνακες 1. ήλωση Πίνακα 2. Παράδειγµα Χρήσης Πίνακα 3. Αρχικοποίηση πίνακα κατά τη δήλωση 4. Στατική έσµευση

Διαβάστε περισσότερα

είκτες. Προσπέλαση Μνήµης

είκτες. Προσπέλαση Μνήµης 6. είκτες. Προσπέλαση Μνήµης είκτες. Προσπέλαση Μνήµης Η παρούσα ενότητα αναφέρεται σε ένα σηµαντικό χαρακτηριστικό της C, και της C++, το οποίο απουσιάζει από αρκετές άλλες γλώσσες "υψηλού επιπέδου":

Διαβάστε περισσότερα

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

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δρ. Κόννης Γιώργος Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής Προγραμματισμός Στόχοι 1 Να περιγράψουμε τις έννοιες του Υπολογιστικού Προβλήματος και του Προγράμματος/Αλγορίθμου

Διαβάστε περισσότερα

Επαναληπτικές δοµές. µτ α.τ. Όχι. ! απαγορεύεται µέσα σε µία ΓΙΑ να µεταβάλλουµε τον µετρητή! διότι δεν θα ξέρουµε µετά πόσες επαναλήψεις θα γίνουν

Επαναληπτικές δοµές. µτ α.τ. Όχι. ! απαγορεύεται µέσα σε µία ΓΙΑ να µεταβάλλουµε τον µετρητή! διότι δεν θα ξέρουµε µετά πόσες επαναλήψεις θα γίνουν Επαναληπτικές δοµές Η λογική των επαναληπτικών διαδικασιών εφαρµόζεται όπου µία ακολουθία εντολών εφαρµόζεται σε ένα σύνολο περιπτώσεων που έχουν κάτι κοινό. Όταν ψάχνουµε θέση για να παρκάρουµε κοντά

Διαβάστε περισσότερα

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

Διαβάστε περισσότερα

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

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004) 1 ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004) ιάλεξη 1 1.1 ΕΙΣΑΓΩΓΗ ΣΤΗ FORTRAN 77 Ένα πρόγραµµα σε οποιαδήποτε γλώσσα προγραµµατισµού δεν τίποτα άλλο από µια σειρά εντολών που πρέπει

Διαβάστε περισσότερα

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

Γλώσσα Προγραμματισμού C Προγραμματισμός HY: Γλώσσα Προγραμματισμού C Δρ. Ηλίας Κ. Σάββας, Αναπληρωτής Καθηγητής, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I. Θεσσαλίας Email: savvas@teilar.gr URL: http://teilar.academia.edu/iliassavvas

Διαβάστε περισσότερα

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

Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Εργαστήριο 2: Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας Προγραμματισμού

Διαβάστε περισσότερα

Συναρτήσεις. Εισαγωγή

Συναρτήσεις. Εισαγωγή Συναρτήσεις Εισαγωγή Η χρήση συναρτήσεων στα προγράμματα της γλώσσας C είναι πολύ σημαντική καθώς μας επιτρέπει τη διάσπαση ενός προβλήματος σε μικρότερα υποπροβλήματα τα οποία μπορούμε να επιλύσουμε πιο

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 5: ΠΙΝΑΚΕΣ. Σχήµα 1: H έννοια των πινάκων

ΑΣΚΗΣΗ 5: ΠΙΝΑΚΕΣ. Σχήµα 1: H έννοια των πινάκων Σκοπός της Άσκησης ΑΣΚΗΣΗ 5: ΠΙΝΑΚΕΣ Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η εξοικείωση µε τη χρήση πινάκων σαν διατάξεις αποθήκευσης δεδοµένων της Γλώσσας Προγραµµατισµού C. H συγκεκριµένη άσκηση

Διαβάστε περισσότερα

Ψευδοκώδικας. November 7, 2011

Ψευδοκώδικας. November 7, 2011 Ψευδοκώδικας November 7, 2011 Οι γλώσσες τύπου ψευδοκώδικα είναι ένας τρόπος περιγραφής αλγορίθμων. Δεν υπάρχει κανένας τυπικός ορισμός της έννοιας του ψευδοκώδικα όμως είναι κοινός τόπος ότι οποιαδήποτε

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 2ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΣΦΑΛΜΑΤΑ ΜΕΤΑΓΛΩΤΤΙΣΗΣ Η γλώσσα C κάνει αυστηρή διάκριση μεταξύ πεζών

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων

Διαβάστε περισσότερα

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

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 3: Εισαγωγή και Εμφάνιση Δεδομένων Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες

Διαβάστε περισσότερα

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

Διαβάστε περισσότερα

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

Βαθμός Σχόλια. lab5 PASS PASS PASS PASS PASS. Οριακά PASS - Καλή δουλειά Α. Μ. Βαθμός Σχόλια 1183 1194 1238 1239 1240 1241 - Καλή δουλειά 1242 1243 1244 1245 - Κακή χρήση συναρτήσεων. Κάνεις τον ίδιο έλεγχο και εντός και εκτός της συνάρτησης. Θα έπρεπε να έχεις βρεί ένα τρόπο

Διαβάστε περισσότερα

ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ

ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΞΕΤΑΣΤΙΚΗ ΠΕΡΙΟ ΟΣ: ΣΕΠΤΕΜΒΡΙΟΥ 6 Ι ΑΣΚΩΝ: Ε. ΚΟΦΙ ΗΣ Όλα τα ερωτήµατα είναι ισοδύναµα. Καλή επιτυχία! ΘΕΜΑ ο a) Βρείτε την αναπαράσταση

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16

Διαβάστε περισσότερα

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΣΤΑΘΕΡΕΣ είναι τα μεγέθη που δεν μεταβάλλονται κατά την εκτέλεση ενός αλγόριθμου. Εκτός από τις αριθμητικές σταθερές (7, 4, 3.5, 100 κλπ), τις λογικές σταθερές (αληθής και ψευδής)

Διαβάστε περισσότερα

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

Κεφάλαιο 3.1, : Συναρτήσεις I. ( ιάλεξη 11) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 3.1,3.3-3.4: Συναρτήσεις I ( ιάλεξη 11) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 11-1 Μη- οµηµένος Προγραµµατισµός Το πρόγραµµα στα αριστερά δεν είναι Αρθρωτό (δεν έχει σωστή δοµή). Όλη η λειτουργικότητα

Διαβάστε περισσότερα

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

C Programming EPL032 Maria Stavrinou Ioannou Εισαγωγή στη Γλώσσα C Εισαγωγή στη Γλώσσα C Η C είναι µια δοµηµένη (structured ) γλώσσα ηλαδή ένα C πρόγραµµα αποτελείται από υποπρογράµµατα τα οποία ονοµάζονται συναρτήσεις ( functions ), όπου η κάθε συνάρτηση εκτελεί µια

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Σκοπός του μαθήματος Σκοπός του παρόντος μαθήματος είναι να μάθετε να κάνετε εισαγωγή δεδομένων σε πίνακες και περαιτέρω επεξεργασία

Διαβάστε περισσότερα

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ Δρ. Κουζαπάς Δημήτριος Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής Προγραμματισμός Στόχοι 1 Να περιγράψουμε τις έννοιες του Υπολογιστικού Προβλήματος

Διαβάστε περισσότερα

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Προγραμματισμός

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Προγραμματισμός ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Προγραμματισμός Στόχοι 1 Να περιγράψουμε τις έννοιες του υπολογιστικού προβλήματος και του αλγορίθμου. Να περιγράψουμε την πορεία από ένα υπολογιστικό πρόβλημα

Διαβάστε περισσότερα

Κεφάλαια Εντολές επανάληψης. Τρεις εντολές επανάληψης. Επιλογή εντολής επανάληψης ΟΣΟ...ΕΠΑΝΑΛΑΒΕ. Σύνταξη στη ΓΛΩΣΣΑ

Κεφάλαια Εντολές επανάληψης. Τρεις εντολές επανάληψης. Επιλογή εντολής επανάληψης ΟΣΟ...ΕΠΑΝΑΛΑΒΕ. Σύνταξη στη ΓΛΩΣΣΑ Εντολές επανάληψης Κεφάλαια 02-08 οµές Επανάληψης Επιτρέπουν την εκτέλεση εντολών περισσότερες από µία φορά Οι επαναλήψεις ελέγχονται πάντοτε από κάποια συνθήκη η οποία καθορίζει την έξοδο από το βρόχο

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 12-1 Ανασκόπηση οµής Προγράµµατος µε Συναρτήσεις #include 1 void PrintMessage (); Πρότυπο ( ήλωση) Συνάρτησης (

Διαβάστε περισσότερα

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

Κεφάλαιο 8.7. Πίνακες & Συναρτήσεις ( ιάλεξη 17) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 8.7 Πίνακες & Συναρτήσεις ( ιάλεξη 17) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 17-1 Εισαγωγή Στις προηγούµενες διαλέξεις µάθαµε πώς να δηλώνουµε, αρχικοποιούµε και να επεξεργαζόµαστε πίνακες. Σήµερα θα µελετήσουµε

Διαβάστε περισσότερα

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

Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf(%u\n, x); Β. unsigned char ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εξετάσεις Β Περιόδου 2015 (8/9/2015) ΟΝΟΜΑΤΕΠΩΝΥΜΟ:................................................................................ Α.Μ.:...............................................

Διαβάστε περισσότερα

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

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ Κεφαλαία και μικρά γράμματα ελληνικού αλφαβήτου: Α Ω και α ω Κεφαλαία και μικρά γράμματα λατινικού αλφαβήτου: A Z και a z Αριθμητικά ψηφία: 0 9 Ειδικοί χαρακτήρες: + - * / =. ( ),! & κενός

Διαβάστε περισσότερα

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

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

Διαβάστε περισσότερα

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη Επιλογή και επανάληψη Η ύλη που αναπτύσσεται σε αυτό το κεφάλαιο είναι συναφής µε την ύλη που αναπτύσσεται στο 2 ο κεφάλαιο. Όπου υπάρχουν διαφορές αναφέρονται ρητά. Προσέξτε ιδιαίτερα, πάντως, ότι στο

Διαβάστε περισσότερα

ΠΕΚ ΤΡΙΠΟΛΗΣ ΕΠΙΜΟΡΦΩΣΗ ΕΚΠ/ΚΩΝ ΠΕ19,20 ΗΜ/ΝΙΑ ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ

ΠΕΚ ΤΡΙΠΟΛΗΣ ΕΠΙΜΟΡΦΩΣΗ ΕΚΠ/ΚΩΝ ΠΕ19,20 ΗΜ/ΝΙΑ ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ ΠΕΚ ΤΡΙΠΟΛΗΣ ΕΠΙΜΟΡΦΩΣΗ ΕΚΠ/ΚΩΝ ΠΕ19,20 ΗΜ/ΝΙΑ 4-11-07 ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ Γ Γενικού Λυκείου (τεχνολογική κατεύθυνση) ΚΕΦ. 2 ο -7 ο : ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 4 η Τελεστές Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης

Διαβάστε περισσότερα

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

Διαβάστε περισσότερα

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

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη Εισαγωγικά

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Τρίτη Διάλεξη Εντολές Επιλογής και Επανάληψης Εντολές επιλογής Εντολή if Η πιο απλή μορφή της if συντάσσεται ως εξής: if ( συνθήκη ) Οι εντολές μέσα στα άγκιστρα αποτελούν

Διαβάστε περισσότερα

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

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα Τελεστές συντομογραφίας Τελεστές σύντομης ανάθεσης += παράδειγμα: sum+=10; αντί για: sum = sum

Διαβάστε περισσότερα

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

ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ. for (παράσταση_1; παράσταση_2; παράσταση_3) εντολή επόμενη εντολή ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ for (παράσταση_1; παράσταση_2; παράσταση_3) εντολή επόμενη εντολή παράσταση_1 = Παράσταση Αρχικοποίησης παράσταση_2 = Παράσταση Ελέγχου Επανάληψης παράσταση_3 = Παράσταση Ενημέρωσης

Διαβάστε περισσότερα

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

printf Οι κωδικοί (format codes) του printf για διάφορους τύπους δεδοµένων είναι: printf Οι κωδικοί (format codes) του printf για διάφορους τύπους δεδοµένων είναι: %d για ακεραίους (int) %lf για κινητής υποδιαστολής διπλής ακρίβειας (double) %f για κινητής υποδιαστολής απλής ακρίβειας

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Αριθμητική Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Δεύτερο Πρόγραμμα 1 / * Second Simple Program : add 2 numbers * / 2

Διαβάστε περισσότερα

3. Να γραφεί πρόγραμμα που θα διαβάζει 100 ακεραίους αριθμούς από το πληκτρολόγιο και θα υπολογίζει το άθροισμά τους.

3. Να γραφεί πρόγραμμα που θα διαβάζει 100 ακεραίους αριθμούς από το πληκτρολόγιο και θα υπολογίζει το άθροισμά τους. ΑΕσΠΠ-Δομή Επανάληψης 9 ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ 1. Να γραφεί πρόγραμμα που να υπολογίζει το άθροισμα των πρώτων 100 φυσικών αριθμών. 2. Να τροποποιηθεί ο παραπάνω πρόγραμμα ώστε να υπολογίζει το άθροισμα των πρώτων

Διαβάστε περισσότερα

Ο πιο κάτω πίνακας περιγράφει σε ποιες περιπτώσεις χρησιμοποιούμε τους τρεις πιο πάνω τρόπους:

Ο πιο κάτω πίνακας περιγράφει σε ποιες περιπτώσεις χρησιμοποιούμε τους τρεις πιο πάνω τρόπους: Επαναλήψεις - Loops Οι επαναλήψεις σε ένα πρόγραμμα μας επιτρέπουν μια ομάδα εντολών να εκτελείται για όσες φορές επιθυμούμε Υπάρχουν τρεις τρόποι επανάληψης εντολών με τη χρήση: While loops For loops

Διαβάστε περισσότερα

Διάγραμμα Ροής. Σελίδα 1 από 10

Διάγραμμα Ροής. Σελίδα 1 από 10 Θεωρία επισκόπηση 3 Επανάληψη Σημείωση: Οι εντολές που συγκροτούν μια εντολή επανάληψης αποκαλούνται βρόχος 1. Εντολή Όσο.επανάλαβε Σύνταξη Όσο συνθήκη επανάλαβε εντολές Πώς Λειτουργεί. Αρχικά ελέγχεται

Διαβάστε περισσότερα

Κεφάλαιο : Επαναλήψεις (oι βρόχος While) ( ιάλεξη 9) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Κεφάλαιο : Επαναλήψεις (oι βρόχος While) ( ιάλεξη 9) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 5.1-5.3: Επαναλήψεις (oι βρόχος While) ( ιάλεξη 9) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 9-1 οµές Έλεγχου Προγράµµατος Μέχρι τώρα είδαµε τις ακόλουθες δοµές έλεγχου (program control structure) ενός προγράµµατος

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Οι συναρτήσεις στη C Οι συναρτήσεις τι είναι Πρόκειται για ανεξάρτητα τμήματα ενός προγράμματος (υποπρογράμματα) που επιτελούν συγκεκριμένες εργασίες. Καλούνται από το κυρίως

Διαβάστε περισσότερα

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

5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while) 5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while) 5.1 Ο βρόχος while Η εντολή while παρέχει έναν μηχανισμό επανάληψης των δηλώσεων όσο μια συνθήκη είναι αληθινή. Χρησιμοποιείται όταν ο αριθμός των επαναλήψεων

Διαβάστε περισσότερα

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL ΓΕΝΙΚΗ ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ Program Ονομα_προγραμματος; «πρόγραμμα» Πρόγραμμα 1 Program Lesson1_Program1; Write('Hello World!!!'); {σχόλια} Επεξήγηση Προγράμματος Program Lesson1_Program1;

Διαβάστε περισσότερα

ΗΜΙΟΥΡΓΙΑ ΠΑΙΧΝΙ ΙΟΥ ΣΤΟ SCRATCH ΒΗΜΑ ΠΡΟΣ ΒΗΜΑ

ΗΜΙΟΥΡΓΙΑ ΠΑΙΧΝΙ ΙΟΥ ΣΤΟ SCRATCH ΒΗΜΑ ΠΡΟΣ ΒΗΜΑ ΗΜΙΟΥΡΓΙΑ ΠΑΙΧΝΙ ΙΟΥ ΣΤΟ SCRATCH ΒΗΜΑ ΠΡΟΣ ΒΗΜΑ ΣΕΝΑΡΙΟ ΠΑΙΧΝΙ ΙΟΥ Το παιχνίδι θα αποτελείται από δυο παίκτες, οι οποίοι θα βρίσκονται αντικριστά στις άκρες ενός γηπέδου δεξιά και αριστερά, και µια µπάλα.

Διαβάστε περισσότερα

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ;

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ; Εντολή επανάληψης Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή Πρόβλημα Πώς θα υπολογίσουμε το άθροισμα των ακέραιων 1 5000; Ισοδύναμοι υπολογισμοί του Ισοδύναμοι υπολογισμοί του Ισοδύναμοι υπολογισμοί

Διαβάστε περισσότερα

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

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 ❶ Προετοιµασία για το 1 ο Εργαστήριο

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Συναρτήσεις Ως τώρα γράφαμε όλα τα προγράμματα μας μέσα στην main..1

Διαβάστε περισσότερα

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός Δομές Ακολουθίας- Επιλογής - Επανάληψης Δομημένος Προγραμματισμός 1 Βασικές Έννοιες αλγορίθμων Σταθερές Μεταβλητές Εκφράσεις Πράξεις Εντολές 2 Βασικές Έννοιες Αλγορίθμων Σταθερά: Μια ποσότητα που έχει

Διαβάστε περισσότερα

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

lab2 -Στην printf να βάζεις \n έτσι ώστε να αλλάζει γραµµή όποτε σου εµφανίζει κάποιο µήνυµα. Α. Μ. Βαθμός Σχόλιο 1183 lab2 - Πολύ καλή δουλειά κατά τα άλλα 1194 1238 1239 FAIL 1240 1241 1242 1243 1244 1245 1246 - πολύ καλό (*υπάρχουν οι τελεστές = ). Ο κώδικας είναι καλά σχολιασµένος -

Διαβάστε περισσότερα

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

Διάλεξη 5η: Εντολές Επανάληψης Διάλεξη 5η: Εντολές Επανάληψης Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Εντολές Επανάληψης CS100, 2015-2016

Διαβάστε περισσότερα

char name[5]; /* define a string of characters */

char name[5]; /* define a string of characters */ Συµβολοσειρές (Strings) Συµβολοσειρά (string) είναι µια σειρά αλφαριθµητικών χαρακτήρων (γενικά εκτυπώσιµων συµβόλων ASCII). Όταν λέµε σειρά εννοούµε διαδοχικές θέσεις µνήµης που µπορούν να αντιµετωπισθούν

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 2: Δομή ενός προγράμματος C Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

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

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 2: Μεταβλητές και Σταθερές Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης

Διαβάστε περισσότερα

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Α2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών Α3. Ο αλγόριθμος

Διαβάστε περισσότερα

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

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

Διαβάστε περισσότερα

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

Ηλεκτρονικοί Υπολογιστές ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 8: Επαναληπτικές Εντολές στη C++ Ζαχαρούλα Ανδρεοπούλου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

Προγραµµατισµός Η/Υ. Μέρος2

Προγραµµατισµός Η/Υ. Μέρος2 Προγραµµατισµός Η/Υ Μέρος2 Περιεχόμενα Επανάληψη Βασικών Σύμβολων Διαγραμμάτων Ροής Αλγόριθμος Ψευδοκώδικας Παραδείγματα Αλγορίθμων Γλώσσες προγραμματισμού 2 Επανάληψη Βασικών Σύμβολων Διαγραμμάτων Ροής

Διαβάστε περισσότερα

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ. ΤΡΙΤΗ ΔΙΑΛΕΞΗ Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.): Σύνταξη τύπος όνομαα; τύπος όνομαβ{όνομαα}; όνομαβ

Διαβάστε περισσότερα

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C Master Mind εφαρμογή στη γλώσσα προγραμματισμού C Φεβρουάριος/Μάρτιος 2013 v. 0.1 Master-mind: κανόνες παιχνιδιού Στο master mind χρειάζεται να παράγονται κάθε φορά 4 τυχαία σύμβολα από ένα πλήθος 6 διαφορετικών

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 5ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 Η ΕΝΤΟΛΗ for Με την εντολή for δημιουργούμε βρόχους επανάληψης σε

Διαβάστε περισσότερα

Α. Ερωτήσεις Ανάπτυξης

Α. Ερωτήσεις Ανάπτυξης οµηµένος Προγραµµατισµός-Κεφάλαιο 7 Σελίδα 1 α ό 10 ΕΝΟΤΗΤΑ ΙΙΙ (ΠΡΟΓΡΑΜΜΑΤΑ) ΚΕΦΑΛΑΙΟ 7: Είδη, Τεχνικές και Περιβάλλοντα Προγραµµατισµού Α. Ερωτήσεις Ανάπτυξης 1. Τι ονοµάζουµε γλώσσα προγραµµατισµού;

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Λύσεις για τις ασκήσεις του lab5 Εισαγωγή Λύσεις για τις ασκήσεις του lab5 Επειδή φάνηκε να υπάρχουν αρκετά προβλήματα σχετικά με τον τρόπο σκέψης για την επίλυση των προβλημάτων του lab5, θα συνοδεύσουμε τις λύσεις με αρκετές επεξηγήσεις,

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 5 ο Έλεγχος Προγράµµατος Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Η εντολή if (Ι) Η εντολή if είναι µία από τις βασικότερες δοµές ελέγχου ροής στη C, αλλά και στις περισσότερες

Διαβάστε περισσότερα

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή ονάδα Δικτύων και Επικοινωνιών ΗΥ Τομέας Πληροφορικής, αθηματικών και Στατιστικής ΓΕΩΠΟΙΚΟ ΠΑΕΠΙΣΤΗΙΟ ΑΘΗΩ Εισαγωγή στην Επιστήμη των ΗΥ άθημα-4 url: http://openeclass.aua.gr (AOA0) Λογισμικό Υπολογιστή

Διαβάστε περισσότερα

Επεξεργασία Αρχείων Κειµένου

Επεξεργασία Αρχείων Κειµένου Επεξεργασία Αρχείων Κειµένου Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Αρχεία Κειµένου Γενικά Συναρτήσεις Επεξεργασίας Αρχείων Κειµένου ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1 Αρχεία Γενικά

Διαβάστε περισσότερα

Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε "Ναι" Τέλος Α2

Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε Ναι Τέλος Α2 Διδακτική πρόταση ΕΝΟΤΗΤΑ 2η, Θέματα Θεωρητικής Επιστήμης των Υπολογιστών Κεφάλαιο 2.2. Παράγραφος 2.2.7.4 Εντολές Όσο επανάλαβε και Μέχρις_ότου Η διαπραγμάτευση των εντολών επανάληψης είναι σημαντικό

Διαβάστε περισσότερα

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

ΕΡΓΑΣΤΗΡΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Τµήµα Πληροφορικής και Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΗ C Τµήµα Πληροφορικής και Τηλεπικοινωνιών Περιεχόµενα Εισαγωγή Πρόγραµµα Φάσεις Υλοποίησης µε χρήση του εργαλείου DEV C + + οµή Προγράµµατος Η συνάρτηση main Μεταβλητές Τι είναι

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 3 η : Επίλυση Προβληµάτων Χειµερινό Εξάµηνο 2011 Εισαγωγή στον Προγραµµατισµό Διάλεξη 3 η : Επίλυση Προβληµάτων Χειµερινό Εξάµηνο 2011 Τελεστής σύντοµης ανάθεσης Τελεστής σύντοµης ανάθεσης (shorthand assignment operator) µεταβλητή = µεταβλητή τελεστής

Διαβάστε περισσότερα

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Προγραμματισμός

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Προγραμματισμός ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Προγραμματισμός Στόχοι 1 Να περιγράψουμε τις έννοιες του υπολογιστικού προβλήματος και του αλγορίθμου. Να περιγράψουμε την πορεία από ένα υπολογιστικό πρόβλημα

Διαβάστε περισσότερα