242 -ΕισαγωγήστουςΗ/Υ
|
|
- Κάρμη Ζάρκος
- 8 χρόνια πριν
- Προβολές:
Transcript
1 ΕισαγωγήστουςΗ/Υ ΤµήµαΜαθηµατικών, Πανεπιστήµιο Ιωαννίνων Άρτια Α.Μ. ( )
2 Συναρτήσεις 2
3 3 Συναρτήσεις Συναρτήσεις Έτοιµος κώδικας για συγκεκριµένους υπολογισµούς στην C/C++ Προγράµµατα χρησιµοποιούν συναρτήσεις οριζόµενες από χρήστη και συναρτήσεις από τις βιβλιοθήκες της C/C++ C/C++ βιβλιοθήκες έχουν πολλές συναρτήσεις για ευρύ φάσµα υπολογισµών και εφαρµογών ήλωση συνάρτησης Όνοµα Παραµέτρους Τύπο επιστρεφόµενης τιµής Σώµα: τοπικές µεταβλητές, εκτελούµενες εντολές Κλήση συναρτήσεων Γίνεται κατά την χρήση της συνάρτησης ίνουµε όνοµα και παραµέτρους (δεδοµένα) Η συνάρτηση εκτελεί υπολογισµούς ή άλλους χειρισµούς Επιστέφει αποτελέσµα
4 4 Βιβλιοθήκη Math Συναρτήσεις Κοινές µαθηµατικές συναρτήσεις #include <cmath> Συντακτικό κλήσης FunctionName( arg1, arg2,, argn); sqrt( ); Καλεί την συνάρτηση υπολογισµού της τετραγωνικής ρίζας ενός πραγµατικού Όλες οι συναρτήσεις της βιβλιοθήκης math επιστέφουν τύπο double Οι παράµετροι της cmath µπορεί να είναι σταθερές µεταβλητέςηεκφράσεις.
5 5 Συναρτήσεις Οι συναρτήσεις Βοηθούν στην καλύτερη δόµηση του προγράµµατος το εκλεπτύνουν Όλες οι µεταβλητές που δηλώνονται µέσα στην συνάρτηση είναι τοπικές Είναι γνωστές µόνο στην συνάρτηση Παράµετροι επικοινωνία πληροφοριών µεταξύ συναρτήσεων (και κυρίου προγράµµατος) Τοπικές µεταβλητές τοπικά αποτελέσµατα Οφέλη Μικρότερα κοµµάτια κώδικα για εξειδικευµένους υπολογισµούς βοηθούν στην εκλέπτυνση της λύσης του προβλήµατος και στη διαχείριση του προγράµµατος Επαναχρησιµοποίηση συναρτήσεων (και χωρίς να γνωρίζουµε πως έχουν υλοποιηθεί στην βιβλιοθήκη) εν επαναλαµβάνουµε κώδικα στο πρόγραµµα µας
6 6 ήλωση συναρτήσεων ήλωση και ορισµός συνάρτησης Τύπος_επιστρεφόµενης_τιµής Όνοµα_συνάρτησης(Λίστα παραµέτρων) { δηλώσεις και εντολές } Όνοµα_συνάρτησης: προσδιοριστή όπως οι µεταβλητές Τύπος_επιστρεφόµενης_τιµής: (εξ ορισµού int) void αν δεν επιστρέφει τίποτα Λίστα παραµέτρων: δηλώνουµε τύπο και όνοµα παραµέτρου, χωρίζουµε µε κόµµα
7 7 ήλωση συναρτήσεων.. ήλωση και ορισµός συνάρτησης Τύπος_επιστρεφόµενης_τιµής Όνοµα_συνάρτησης(Λίστα παραµέτρων) { δηλώσεις και εντολές } δηλώσεις και εντολές: σώµα συνάρτσξης Μεταβλητές Εντολές Έλεγχος επιστρέφει στο σηµείο κλήσεις της συνάρτησης Εάν δεν επιστρέφει τιµή Μόλις εκτελεστεί η return; Ηότανφτάσειστητελευταίαδεξιά «}» Εάν επιστρέφει τιµή Μόλις εκτελεστεί η return expression;
8 8 Πρότυπο συνάρτησης Όνοµα συνάρτησης Παράµετροι Πρότυπα συναρτήσεων Τύπος επιστρεφόµενης τιµής Πρότυπο χρειάζεται µόνο αν η δήλωση της συνάρτησης δίνεται µετά την κλήση της στο πρόγραµµα Παράδειγµα int maximum( int, int, int ); παράµετροι είναι 3 ακέραιοι Επιστρέφει ακέραιο Ονόµατα παραµέτρων µπορούν να παραλειφθούν αλλά µπορούν αν δοθούν για καλύτερη αναγνωσιµότητα κώδικα int maximum( int x, int y, int z );
9 9 Παράµετροι Τυπικές / πραγµατικές παράµετροι Η παράµετροι που ορίζονται στην δήλωση των συναρτήσεων ονοµάζονται τυπικές παράµετροι εν αντιθέσει µε την παράµετρο που χρησιµοποιούµε στην κλήση της συνάρτησηςηοποίεςονοµάζονταιπραγµατικέςπαράµετροι. Οι δύο αυτοί τύποι παραµέτρων πρέπει να συµφωνούν σε τύπο, σειρά και πλήθος. Κατά την κλήση η τιµή της πραγµατικής περνάει στην τυπική παράµετρο. (Υπάρχει και άλλος τρόπος να περάσουµε µία παράµετρο κατά την κλήση όπου περνάµε διεύθυνση και όχι τιµή). Οι µεταβλητές που δηλώνονται µέσα στην συνάρτηση ονοµάζονται τοπικές εν αντιθέσει µε αυτές που ορίζονται στο κύριο πρόγραµµα και ονοµάζονται καθολικές. Οι τοπικές είναι ορατές µόνο µέσα στην συνάρτηση.
10 10 Παράδειγµα #include <iostream> #include <cstdlib> int maximum( int, int, int ); /* πρότυπο */ using namespace std; int main(int argc, char *argv[]) { system("chcp 1253"); int a, b, c; cout<<" όσε 3 ακεραίους: "; cin>>a>>b>>c; cout<<"max είναι: "<<maximum( a, b, c )<<endl; //κλήση system("pause"); return 0; /* δήλωση συνάρτησης */ int maximum( int x, int y, int z ) { int max = x; if ( y > max ) max = y; if ( z > max ) max = z; return max;
11 11 Αρχεία επικεφαλίδες Αρχεία Header Περιέχουν πρότυπα για συναρτήσεις σε βιβλιοθήκες <cstdlib>, <cmath>,κ.α. #include <cmath>
12 Κλήσησυναρτήσεων: Παράµετροιτιµής, Παράµετροι αναφοράς Πέρασµα παραµέτρων Παράµετροι τιµής Η τιµής της πραγµατικής παραµέτρου περνάει στην συνάρτηση Αλλαγές στην συνάρτηση δεν επηρεάζουν την πραγµατική παράµετρο Χρησιµοποιείται όταν δεν χρειάζεται να αλλάξουµε την παράµετρο και είναι καλό γιατί αποφεύγουµε αλλαγές κατά λάθος Παράµετροι αναφοράς Περνάµε την διεύθυνση της πραγµατικής παραµέτρου Τυχόν αλλαγές µέσα στην συνάρτηση επηρεάζουν την τιµή της πραγµατικής έξω από την συνάρτηση Χρησιµοποιείται όταν όντως θέλουµε να αλλάξουµε την πραγµατική παράµετρο (είναι και ένας άλλος τρόπος επιστροφής αποτελεσµάτων). Χρειάζεταιπροσοχή. Υπάρχειειδικός συντακτικός µηχανισµός για αυτές τις παραµέτρους. Προς το παρόν χρησιµοποιούµε και επικεντρωνόµαστε µόνο στις παραµέτρους τιµής 12
13 Τυχαίοι αριθµοί 13 rand function #include <cstdlib> Επιστρέφει ένα «ψευδό-τυχαίο" αριθµό µεταξύ 0 και RAND_MAX (τουλάχιστον 32767) i = rand(); Ψευδό-τυχαίοι Προκαθορισµένη ακολουθία από τυχαίους Ίδια ακολουθία κάθε φορά που τρέχει το πρόγραµµα αλλά επηρεάζεται από την αρχική τιµή (αρχικοποίηση) η οποία µπορεί να είναι τυχαία τιµή (π.χ. ρολόι του συστήµατος) Αλλαγή διαστήµατος Για [1, n] έχουµε 1 + ( rand() % n ) rand() % n [0, n 1] Συν 1[1, n] 1 + ( rand() % 6) [1, 6]
14 Τυχαίοι αριθµοί 14 srand <cstdlib> Αρχικοποιείται µε ένα αρχικό τυχαίο ακέραιο αλλάζοντας έτσι την ακολουθία των τυχαίων που επιστρέφει κάθε φορά µετην srand( seed ); srand(time(null)); //#include <ctime> time( NULL ) Η τρέχουσα τιµή του ρολογιού σε δευτερόλεπτα Τυχαιοποιεί την αρχική τιµή για την γεννήτρια τυχαίων αριθµών
15 Τυχαίοι αριθµοί 15 /* random 1-dimensional array - seeded random numbers*/ #include <iostream> #include <cstdlib> #include <ctime> using namespace std; int main(int argc, char *argv[]) { int i, N, A[10]; N = 10; srand(time(null)); //arxikopoihsh gia diaforetikous tyxaious ka8e fora // Anathesi tyxaiwn timwn ston pinaka A: cout<<"enhmerwsh: h rand paragei tyxaious apo 0 ews " <<RAND_MAX<<endl; cout<<"emeis theloume 1-100"<<endl; for(i=0; i<n; i++) { A[i] = rand() % ; } //Ektypwsi tou pinaka A: cout << "O pinakas A einai o ekshs:"<< endl; for(i=0; i<n; i++) { cout << A[i] << " "; } cout << endl; system("pause"); return 0;
16 Τυχαίοι αριθµοί 16
17 Συναρτήσεις οριζόµενες από τον χρήστη 17 Ηκύριαχρήσηγιαµίασυνάρτησηείναινα υπολογίζει και να επιστρέφει µια τιµή βασιζόµενη στις παραµέτρους που περνάει ο χρήστης. Όµως µια συνάρτηση µπορεί να µην έχει παραµέτρους και να µην επιστρέφει τιµή Παράδειγµα, συναρτήσεις που τυπώνουν µηνύµατα
18 Συναρτήσεις οριζόµενες από τον χρήστη 18 // aplo paradeigma synarthshs xwris parametrous #include <iostream> #include <cstdlib> using namespace std; void print_message1(void); // prototype void print_message2(); // prototype int main(int argc, char *argv[]) { system("chcp 1253"); print_message1(); print_message2(); system("pause"); return 0; void print_message1() // dhlwsh synarthshs { cout<<"prwto mhnyma apo synarthsh print_message1.\n"; void print_message2() // dhlwsh synarthshs { cout<<"deytero mhnyma apo synarthsh print_message2.\n";
19 Συναρτήσεις οριζόµενες από τον χρήστη 19 Ηκύριαχρήσηγιαµίασυνάρτησηείναινα υπολογίζει και να επιστρέφει µια τιµή βασιζόµενη στις παραµέτρους που περνάει ο χρήστης. Παράδειγµα, ο χρήστης δίνει 2 ακεραίους και η συνάρτηση επιστρέφει το γινόµενο
20 Γινόµενο 2 ακεραίων 20 // Ginomeno 2 akeraiwn me synarthsh #include <iostream> #include <cstdlib> using namespace std; // dhlwsh synarthshs int mult ( int x, int y ) { return x * y; int main(int argc, char *argv[]) { system("chcp 1253"); int x,y,z; cout<<"dose 2 arithmous gia na pollaplasiasw: "; cin>> x >> y; z=mult (x, y); //klhsh synarthshs cout<<"to ginomeno einai: "<<z<<"\n"; system("pause"); return 0;
21 Γινόµενο 2 ακεραίων µε χρήση πρωτοτύπου 21 // Ginomeno 2 akeraiwn me synarthsh #include <iostream> #include <cstdlib> using namespace std; int mult ( int x, int y ); // prototypo int main(int argc, char *argv[]) { system("chcp 1253"); int x,y,z; cout<<"dose 2 arithmous gia na pollaplasiasw: "; cin>> x >> y; z=mult (x, y); //klhsh synarthshs cout<<"to ginomeno einai: "<<z<<"\n"; system("pause"); return 0; // dhlwsh synarthshs int mult ( int x, int y ) { return x * y;
22 Μέγιστος 3 ακεραίων 22 // max 3 akeraiwn me synarthsh #include <iostream> #include <cstdlib> using namespace std; int maximum(int, int, int); //prototype // max 3 akeraiwn int main(int argc, char *argv[]) { int a, b, c; cout<<"dose 3 akeraious: "; cin>>a>>b>>c; cout<<"max einai: "<<maximum(a,b,c)<<endl; system("pause"); return 0; // dhlwsh synarthshs int maximum(int x, int y, int z) {int max = x; if ( y > max ) max = y; if ( z > max ) max = z; return max;
23 Κλάσεις µεταβλητών 23 Τοπικές µεταβλητές Ορίζονται µέσα σε συναρτήσεις (ή σε blocks κώδικα όπως π.χ ανακυκλώσεις for) Είναι ορατές και µπορούν να χρησιµοποιηθούν µόνο µέσα στην συνάρτηση Μετοτέλοςτηςκλήσηςτηςσυνάρτησηςπαύουννα υπάρχουν (εκτός αν δηλωθούν σαν static) Καθολικές µεταβλητές Ορίζονται στην αρχή του προγράµµατος Είναιορατέςσεόλοτοπρόγραµµααλλάµέσασεµία συνάρτηση αν υπάρχει µια τοπική µεταβλητή µε το ίδιο όνοµα τότε χρησιµοποιείται η τοπική µεταβλητή
24 Εµβέλεια - Ορατότητα 24 Γενικός κανόνας για αναζήτηση ενός προσδιοριστή (όνοµαµεταβλητήςήσυνάρτησης) που χρησιµοποιείται σε µία παράσταση κατά την εκτέλεση µια κλήσης συνάρτησης Κοιτάµε µέσα στην συνάρτηση (στις τοπικές µεταβλητές και τιςπαραµέτρους) Μετά κοιτάµε στις περικλείνουσες συναρτήσεις από την εσωτερικότερη προς την εξωτερικότερη Τέλος κοιτάµε στις καθολικές µεταβλητές Θεωρούµε τις συναρτήσεις (και τα blocks) σαν κουτιά µε τοιχώµατα που είναι µονόδροµοι καθρέπτες. Μπορούµε να δούµε προς τα έξω αλλά απόέξωδενµπορούµεναδούµεµέσαστοκουτί.
25 Παράδειγµα - ψηφία ακεραίου 25 Να γράψετε πρόγραµµα που διαβάζει έναν ακέραιο αριθµό x και υπολογίζει το πλήθος των ψηφίων του αριθµού x. Χρησιµοποιήστε επαναληπτικές διαιρέσεις του αριθµού x µε το 10 int x, k; cout << "Dose arithmo "<<endl; cin >> x; k = 0 ; while(x!= 0) { x = x / 10; k = k + 1; } cout << "Ta psifia tou "<< x << " einai " << k <<endl;
26 Παράδειγµα συνάρτηση - ψηφία ακεραίου 26 Να γράψετε πρόγραµµα που διαβάζει έναν ακέραιο αριθµό x και υπολογίζει το πλήθος των ψηφίων του αριθµού x. int CountDigits(int n) // synarthsh gia metrhma psifiwn {int k=0; while(n!= 0) {n = n / 10; k = k + 1; return k;
27 Παράδειγµα συνάρτηση - ψηφία ακεραίου 27 Να γράψετε πρόγραµµα που διαβάζει έναν ακέραιο αριθµό x και υπολογίζει το πλήθος των ψηφίων του αριθµού x. int main(int argc, char *argv[]) //kyrio programma { int x,k; cout<<"dose akeraio x: "; cin>>x; k=countdigits(x); cout << "To plithos twn psifiwn tou "<< x << " einai " << k <<endl; system("pause"); return 0;
28 Παράδειγµα x^n 28 Να γράψετε πρόγραµµα που διαβάζει δύο ακεραίους x και n και υπολογίζει τηνύψωσησεδύναµη, δηλαδήτοναριθµό x n.θαπρέπειναελέγχετεόλες τιςπεριπτώσεις, αν n>0, αν n=0, αν n < 0. cout << "Dose vash"<<endl; cin >> x; cout << "Dose ektheth"<<endl; cin >> n; m=n; if(n<0) n = -n; p = 1; for(i=1; i<=n; i++) { p = p * x; } if(m<0) p = 1 / p; // prosoxi: float p; cout << Ypsosi se dinami " << p <<endl;
29 Παράδειγµα συνάρτηση - x^n 29 Να γράψετε πρόγραµµα που διαβάζει δύο ακεραίους x και n και υπολογίζει τηνύψωσησεδύναµη, δηλαδήτοναριθµό x n.θαπρέπειναελέγχετεόλες τιςπεριπτώσεις, αν n>0, αν n=0, αν n < 0. double xpowern(double x, int n) // synarthsh gia x^n, n>=0 {double p = 1; for(int i=1; i<=n; i++) { p = p * x; } return p;
30 Παράδειγµα συνάρτηση x^n 30 Να γράψετε πρόγραµµα που διαβάζει δύο ακεραίους x και n και υπολογίζει τηνύψωσησεδύναµη, δηλαδήτοναριθµό x n.θαπρέπειναελέγχετεόλες τιςπεριπτώσεις, αν n>0, αν n=0, αν n < 0. int main(int argc, char *argv[]) // kyrio programma {int x,n,m; double p; cout << "Dose vash: "; cin >> x; cout << "Dose ektheth: "; cin >> n; m=n; if(n<0) n = -n; p=xpowern(x,n); if(m<0) p = 1 / p; cout << "To x^n einai "<< p <<endl; system("pause"); return 0;
31 Παραγοντικό! 31 // Paragontiko #include <iostream> #include <cstdlib> using namespace std; long int factorial(int n) { long int fact = 1; for(int i = 1; i <= n; ++i) fact *= i; return fact; int main(int argc, char *argv[]) { int n; long int f; cout<<"dose n <=12: "; cin>>n; f=factorial(n); cout<<n<<"! = "<<f<<endl; system("pause"); return 0;
32 Βαθµοί Fahrenheit 32 // fahrenheit <-> Celcius #include <iostream> #include <cstdlib> #define COLD 0 #define HOT 100 using namespace std; void hotcold(int);// anagnwrizei shmeia phkshs kai thkshs int CtoF(int);// celcius -> farenheit int main(int argc, char *argv[]) { int count; int fahrenheit; int celcius; cout<<"table celius - farenheit\n"; for (count=-4; count<=12; count=count+1) {celcius = 10 * count; fahrenheit = CtoF(celcius); cout<<" C = "<<celcius<<" F = "<<fahrenheit; hotcold(celcius); system("pause"); return 0;
33 Βαθµοί Fahrenheit 33 συνέχεια /* synarthsh gia mhnymata gia 0, 100 bathmous */ void hotcold(int temperature) { if (temperature == COLD) cout<<" <= Freezing point of water\n"; else if (temperature == HOT) cout<<" <= Boiling point of water\n"; else cout<<"\n"; // synarthsh gia metatroph int CtoF(int celcius) {return (32 + (celcius * 9)/5);}
34 Αναδροµή, Αναδροµικές συναρτήσεις 34 Οι αναδροµικές συναρτήσεις Καλούν τον εαυτό τους Πρέπειναυπάρχειµίαβάσητηςαναδροµήςγιανα σταµατούν οι αναδροµικές κλήσεις Το πρόβληµα ορίζεται αναδροµικά και κάθε αναδροµική κλήση λύνει το ίδιο πρόβληµα αλλά µε µικρότερο µέγεθος Σε κάθε αναδροµική κλήση, ένα νέο αντίγραφο της συνάρτησης αρχίζει να εκτελείται Έτσι κάποια στιγµή θα φτάσει στην βάση της αναδροµής (η οποία λύνεται εύκολα) και θα αρχίσει να επιστρέφει αποτελέσµαταπίσωπροςτηναρχικήκλήσηηοποίακαιθα δώσει την ολική λύση στο πρόβληµα
35 Παραγοντικό! (ξανά) 35 Παραγοντικό 5! = 5 * 4 * 3 * 2 * 1 Ισχύει ότι 5! = 5 * 4! 4! = 4 * 3!... Μπορούµε να υπολογίσουµε παραγοντικά αναδροµικά Βάση (1! = 0! = 1) και µετά 2! = 2 * 1! = 2 * 1 = 2; 3! = 3 * 2! = 3 * 2 = 6; long int factorial(int n) {if (n==0) return 1; else return n*factorial(n-1);}
36 Η σειρά Fibonacci 36 Fibonacci: 0, 1, 1, 2, 3, 5, 8... F n = F n-1 + F n-2, F 0 =0, F 1 =1 Αναδροµική λύση: fib( n ) = fib( n - 1 ) + fib( n 2 ) Συνάρτηση fibaonacci long fibonacci( long n ) { } if (n == 0 n == 1) // βάση else return n; return fibonacci( n - 1) + fibonacci( n 2 );
37 Η σειρά Fibonacci 37 Αναδροµικές κλήσεις fibonacci f( 3 ) return f( 2 ) + f( 1 ) return f( 1 ) + f( 0 ) return 1 return 1 return 0
38 Η σειρά Fibonacci /* Fibonacci[N] gia N<=45, anadromikh kai epanalhptikh synarthsh f(i-1), f(i), f(i+1) fib arithmoi 0,1,1,2,3,5,8,13,... */ #include <iostream> using namespace std; int Fib(int); // prwtotype int FibRec(int); // prwtotype anadromikh synarthsh 38 int main(int argc, char *argv[]) { int n, ans; cout<<"dose to deikth N tou arithmou \n"; cout<<"pou anazhtame sthn akolou8ia Fib: "; cin>>n; ans=fib(n); cout << "O "<<n<<"-os Fibonacci (epanalhptika) einai o " <<ans<<endl; ans=fibrec(n); cout << "O "<<n<<"-os Fibonacci (anadromika) einai o " <<ans<<endl; system("pause"); return 0;
39 Η σειρά Fibonacci... συνέχεια // epanalhptikh synarthsh int Fib(int n) { int i, fn_2=0, fn_1=1, fn=1; i=2; // Trexwn deikths arithmou Fib sthn akolouthia while (i!= n) { fn_2=fn_1; fn_1=fn; fn=fn_2+fn_1; i++; return fn; // anadromikh synarthsh int FibRec(int n) { if (n==0) return 0; else if (n==1) return 1; else return (Fib(n-2)+Fib(n-1)); 39
40 Αναδροµή/Επανάληψη 40 Επανάληψη υπολογισµών Ανακυκλώσεις: for, while,.. (πιογρήγορο) Αναδροµή: χρήση αναδροµικών κλήσεων (πιο αργό) Τέλος υπολογισµών Ανακυκλώσεις : συνθήκες Αναδροµή : βάση αναδροµής Καιοιδυοτρόποιµπορείναέχουναέναες ανακυκλώσεις αν δεν προσέξουµε Υπέρ/Κατά Ανακυκλώσεις: for, while,.. (πιο γρήγορο αλλά µπορεί να είναι πιο δυσνόητο) Αναδροµή: χρήση αναδροµικών κλήσεων (πιο αργό αλλά πιο εκφραστικό)
Η εντολή if-else. Η απλή μορφή της εντολής if είναι η ακόλουθη: if (συνθήκη) { Η γενική μορφή της εντολής ifelse. εντολή_1; εντολή_2;..
Επιλογή - Επανάληψη Η εντολή if-else Ο τελεστής παράστασης συνθήκης H εντολή switch Η εντολές for και while Η εντολή do-while Η εντολές break - continue - goto Μαθηματικές συναρτήσεις Λέξεις κλειδιά στη
242 -ΕισαγωγήστουςΗ/Υ
1 242 -ΕισαγωγήστουςΗ/Υ ΤµήµαΜαθηµατικών, Πανεπιστήµιο Ιωαννίνων Άρτια Α.Μ. (0-2-4-6-8) Πίνακες σαν παράµετροι 2 Πίνακες σαν παράµετροι 3 Πίνακες σαν παράµετροι Περνάµε ένα πίνακα σαν παράµετρο σε µια
Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ
Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 12-1 Ανασκόπηση οµής Προγράµµατος µε Συναρτήσεις #include 1 void PrintMessage (); Πρότυπο ( ήλωση) Συνάρτησης (
Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)
Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II (Διάλεξη 12) 12-1 Ανασκόπηση Δομής Προγράμματος με Συναρτήσεις 1 void PrintMessage (); Πρότυπο (Δήλωση) Συνάρτησης (Δηλώνουν τι επιπλέον συναρτήσεις θα χρησιμοποιήσουμε
Εργαστήριο 3 Εντολή for while, do while
Εργαστήριο 3 Εντολή for while, do while Άσκηση 3.1 Εύρεση αθροίσματος ακεραίων με χρήση της εντολής for #include int main(int argc, char *argv[]) int num,sum; coutnum;
Δομές Επανάληψης. Εισαγωγή στη C++
Δομές Επανάληψης Εισαγωγή στη C++ Επαναληπτικές δηλώσεις Οι βρόγχοι (loops) αναγκάζουν ένα τμήμα κώδικα να επαναλαμβάνεται. Η επανάληψη συνεχίζεται για όσο μία λογική συνθήκη είναι αληθής. Όταν η συνθήκη
Οντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 5: H ΓΛΩΣΣΑ C++ Συναρτήσεις - Μεταβλητές ΔΙΔΑΣΚΟΝΤΕΣ: Iωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής Συναρτήσεις / Μεταβλητές
Προγραμματισμός Υπολογιστών με C++
Προγραμματισμός Υπολογιστών με C++ ( 2012-13 ) 5η διάλεξη Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Τι θα ακούσετε σήμερα Πίνακες ως ορίσματα συναρτήσεων. Τα ορίσματα argc και argv της main.
Δείκτες (Pointers) Ένας δείκτης είναι μια μεταβλητή με τιμή μια διεύθυνση μνήμης. 9.8
Δείκτες (Pointers) Ένας δείκτης είναι μια μεταβλητή με τιμή μια διεύθυνση μνήμης. 1000 1001 1002 1003 1004 1005 12 9.8 9976 3 1010 26 1006 1007 1008 1009 1010 1011 16 125 1299 a 13 1298 Δήλωση Δήλωση Τύπος
Μεθόδων Επίλυσης Προβλημάτων
ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 9 Συναρτήσεις Μέρος II Θέματα ιάλεξης Μη- ομημένος
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι είναι ; Συναρτήσεις. Παράδειγμα #1. double convert ( double cm ) { double inch;
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Τι είναι ; Συναρτήσεις Αυτόνομα τμήματα κώδικα (υποπρογράμματα) που πραγματοποιούν μια καθορισμένη εργασία. Χρήσιμες για περιπτώσεις που ο ίδιος υπολογισμός επαναλαμβάνεται πολλές φορές
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Συναρτήσεις I Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Συναρτήσεις I Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Εισαγωγή στον Προγραμματισμό με C++
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό με C++ Ενότητα # 6: Συναρτήσεις Κωνσταντίνος Κουκουλέτσος Τμήμα Αυτοματισμού Άδειες Χρήσης Το παρόν
Προγραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15
242 -ΕισαγωγήστουςΗ/Υ
1 242 -ΕισαγωγήστουςΗ/Υ ΤµήµαΜαθηµατικών, Πανεπιστήµιο Ιωαννίνων Άρτια Α.Μ. (0-2-4-6-8) 2 ήλωση: Πίνακες στην ΕΑΓ δηλωση ( [1 : 1, 1 : 2,..., 1: ν ] ) παραταξη ; Π.χ.: δηλωση
Κεφάλαιο 3.1, : Συναρτήσεις I. ( ιάλεξη 11) ιδάσκων: ηµήτρης Ζεϊναλιπούρ
Κεφάλαιο 3.1,3.3-3.4: Συναρτήσεις I ( ιάλεξη 11) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 11-1 Μη- οµηµένος Προγραµµατισµός Το πρόγραµµα στα αριστερά δεν είναι Αρθρωτό (δεν έχει σωστή δοµή). Όλη η λειτουργικότητα
Προγραµµατισµός Ι Εργαστήριο 13ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 13 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ
ΕΡΓΑΣΤΗΡΙΟ 13 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2014-2015 Στόχοι Αναδροµή Σηµείωση: Απαγορεύονται static και global µεταβλητές. Πριν ξεκινήσετε Πηγαίνετε στο φάκελο ce120 και κατασκευάστε µέσα
ΕΡΓΑΣΤΗΡΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Τµήµα Πληροφορικής και Τηλεπικοινωνιών
ΕΡΓΑΣΤΗΡΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΗ C Τµήµα Πληροφορικής και Τηλεπικοινωνιών Περιεχόµενα Εισαγωγή Πρόγραµµα Φάσεις Υλοποίησης µε χρήση του εργαλείου DEV C + + οµή Προγράµµατος Η συνάρτηση main Μεταβλητές Τι είναι
Προγραµµατισµός Ι Εργαστήριο 13ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 13 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ
ΕΡΓΑΣΤΗΡΙΟ 13 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2014-2015 Στόχοι Αναδροµή Σηµείωση: Απαγορεύονται static και global µεταβλητές. Πριν ξεκινήσετε Πηγαίνετε στο φάκελο ce120 και κατασκευάστε µέσα
Συναρτήσεις και διαδικασίες
Συναρτήσεις και διαδικασίες Χρήση συναρτήσεων βιβλιοθήκης Εντολή κλήσης της συνάρτησης printf: printf( Hello, world\n ); Μια συνάρτηση είναι ένα σύνολο εντολών που έχουν ομαδοποιηθεί και τους έχει αποδοθεί
Προγραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 9: Συναρτήσεις Ορισμός συναρτήσεων () { /* δήλωση μεταβλητών */ /* εντολές ελέγχου/επεξεργασίας */ o Μια συνάρτηση ορίζεται δίνοντας
5. ΣΥΝΑΡΤΗΣΕΙΣ. (Πρόχειρο σχέδιο - Μαθήµατος 3) p23-29. 5.1 Συναρτήσεις, που δεν επιστρέφουν κάποια τιµή
(Πρόχειρο σχέδιο - Μαθήµατος 3) p23-29 5. ΣΥΝΑΡΤΗΣΕΙΣ 5.1 Συναρτήσεις, που δεν επιστρέφουν κάποια τιµή Η συνάρτηση είναι void, δεν επιστρέφει κάποια τιµή. //Oρισµός συνάρτησης χωρίς παραµέτρους // 12.
Συµβολοσειρές - Strings
Συµβολοσειρές - Strings 1 Συµβολοσειρέςστην C/C++ 2 Χαρακτήρες 'a', 'z', '0', Χαρακτήρες σαν int 'z' επίσης αναπαριστά την ακεραία τιµή του χαρακτήρα z Strings-Συµβολοσειρές Σειρές από χαρακτήρες σαν µια
Η βασική συνάρτηση προγράμματος main()
Η βασική συνάρτηση προγράμματος main() HEADER FILES main(){ ΔΗΛΩΣΕΙΣ ΜΕΤΑΒΛΗΤΩΝ ΕΝΤΟΛΕΣ (σειριακές, επιλογής ή επανάληψης) ΕΠΙΣΤΡΕΦΟΜΕΝΟΣ ΤΥΠΟΣ (return 0;) Συναρτήσεις Η συνάρτηση είναι ένα υποπρόγραμμα
Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C
Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος
Εισαγωγή στην πληροφορική
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Εισαγωγή στην πληροφορική Βασίλειος Βεσκούκης ρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Η γλώσσα προγραµµατισµού
είκτες και Πίνακες (2)
είκτες και Πίνακες (2) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πολυδιάστατοι πίνακες Πέρασµα παραµέτρων σε προγράµµατα C ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1-1 Πίνακες εικτών Πίνακας δεικτών είναι
Προγραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Έκτη (6 η ) τρίωρη διάλεξη. Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/
Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ IΙ Λύβας Χρήστος chrislibas@ssl-unipi.gr Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος >_ ΣΥΝΑΡΤΗΣΕΙΣ ΣΤΗ C (1/3) +- Στη C χρησιμοποιούμε συχνα τις συναρτήσεις (functions),
Ηβασικήσυνάρτηση προγράμματος main()
Ηβασικήσυνάρτηση προγράμματος main() HEADER FILES main(){ ΔΗΛΩΣΕΙΣ ΜΕΤΑΒΛΗΤΩΝ ΕΝΤΟΛΕΣ (σειριακές, επιλογής ή επανάληψης) ΕΠΙΣΤΡΕΦΟΜΕΝΟΣ ΤΥΠΟΣ (return 0;) Συναρτήσεις Ησυνάρτησηείναι ένα υποπρόγραμμα που
ΣΥΝΑΡΤΗΣΕΙΣ (Functions)
ΣΥΝΑΡΤΗΣΕΙΣ (Functions) Δομή Συνάρτησης τύπος όνομα ( λίστα τυπικών παραμέτρων ) Δηλώσεις μεταβλητών εντολή_1 εντολή_2 : εντολή_ν Σώμα της συνάρτησης Δομή της Λίστας Τυπικών Παραμέτρων τύπος_1 τύπος_2
Τίτλος Μαθήματος: Ηλεκτρονικοί Υπολογιστές IΙΙ. Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης
Τίτλος Μαθήματος: Ηλεκτρονικοί Υπολογιστές IΙΙ Ενότητα: Συναρτήσεις και ορίσματα Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Τμήμα: Οικονομικών Επιστημών Διαφορά καθολικής μεταβλητής και σταθεράς
Δομημένος Προγραμματισμός
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα 8: Συναρτήσεις Κουκουλέτσος Κώστας Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστικών Συστημάτων Άδειες
Κλήση Συναρτήσεων ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ. Γεώργιος Παπαϊωάννου ( )
ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ Γεώργιος Παπαϊωάννου (2013-16) gepap@aueb.gr Περιγραφή: Μορφές μεταβίβασης ορισμάτων σε συναρτήσεις (και μεθόδους) και οι επιπτώσεις τους Επιστροφή τιμών από κλήση συναρτήσεων Υπερφόρτωση
Κεφάλαιο 8.7. Πίνακες & Συναρτήσεις ( ιάλεξη 17) ιδάσκων: ηµήτρης Ζεϊναλιπούρ
Κεφάλαιο 8.7 Πίνακες & Συναρτήσεις ( ιάλεξη 17) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 17-1 Εισαγωγή Στις προηγούµενες διαλέξεις µάθαµε πώς να δηλώνουµε, αρχικοποιούµε και να επεξεργαζόµαστε πίνακες. Σήµερα θα µελετήσουµε
Εισαγωγή στον Προγραµµατισµό. Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ
Εισαγωγή στον Προγραµµατισµό Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Συναρτήσεις 19.11.16 Β. Ντουφεξή 2 Προβλήματα: Οσο μεγαλώνουν τα προγράμματα, γίνονται πιο πολύπλοκα.
Προγραµµατιστικές Τεχνικές
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Προγραµµατιστικές Τεχνικές Βασίλειος Βεσκούκης ρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Ρωµύλος Κορακίτης
Αναδροµή (Recursion) ύο παρεξηγήσεις. Σκέψου Αναδροµικά. Τρίγωνο Sierpinski Μη αναδροµικός ορισµός;
Αναδροµή (Recursion) Πώς να λύσουµε ένα πρόβληµα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί µε τον ίδιο τρόπο. Πού χρειάζεται; Πολλές µαθηµατικές συναρτήσεις ορίζονται αναδροµικά. εν είναι
ΣΥΝΑΡΤΗΣΕΙΣ Παραδείγματα χρήσης συναρτήσεων
ΣΥΝΑΡΤΗΣΕΙΣ Παραδείγματα χρήσης συναρτήσεων ΠΟΛΛΕΣ ΕΝΤΟΛΕΣ ΕΠΙΣΤΡΟΦΗΣ Να γραφτεί ένα πρόγραμμα που να διπλασιάζει ένα ποσό που του δίνει ο χρήστης μεταξύ 0 και 1000. Να ελέγχει εάν το ποσό που εισήχθη
Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7
Έβδοµη ιάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη
Εισαγωγή στον Προγραμματισμό με C++
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό με C++ Ενότητα # 4: Πίνακες Κωνσταντίνος Κουκουλέτσος Τμήμα Αυτοματισμού Άδειες Χρήσης Το παρόν εκπαιδευτικό
7. ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ
7. ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ 7.1 Ορισμός και δήλωση συνάρτησης Μία συνάρτηση είναι μία ενότητα οδηγιών οι οποίες μαζί εκτελούν μία συγκεκριμένη εργασία. Παρέχει έναν κατάλληλο τρόπο να μπορέσουμε να κάνουμε
Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης
Γ7.1 Επανάληψη ύλης Β Λυκείου Γ Λυκείου Κατεύθυνσης Απλά προγράμματα Ένα πρόγραμμα στη C++ που υπολογίζει το άθροισμα 2 ακέραιων αριθμών. // simple program #include using namespace std; int main(){
for for for for( . */
Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται
12. Συναρτήσεις (Μέρος ΙI)
Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων 12. Συναρτήσεις (Μέρος ΙI) Ιωάννης Κατάκης Σήμερα o Συναρτήσεις χωρίς παραμέτρους o Συναρτήσεις με παραμέτρους Χωρίς επιστροφή τιμής Με επιστροφή τιμής o Εμβέλεια
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Εντολές for, while, do-while Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Εντολές for, while, do-while Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται
Πληροφορική 2. Γλώσσες Προγραμματισμού
Πληροφορική 2 Γλώσσες Προγραμματισμού 1 2 Γλώσσες προγραμματσιμού Επιτρέπουν την κωδικοποίηση των αλγορίθμων Η εκτέλεση ενός προγράμματος θα πρέπει να δίνει τα ίδια αποτελέσματα με την νοητική εκτέλεση
Συναρτήσεις και Πίνακες
Συναρτήσεις και Πίνακες Συναρτήσεις καθιερωμένης βιβλιοθήκης της C++ Συναρτήσεις οριζόμενες από τον χρήστη Μεταβίβαση κατ αξία Συναρτήσεις void και λογικές συναρτήσεις Μεταβίβαση κατ αναφορά Επιστροφή
Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου
Εργαστήριο 2: Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας Προγραμματισμού
Πληροφορική 2. Αλγόριθμοι
Πληροφορική 2 Αλγόριθμοι 1 2 Τι είναι αλγόριθμος; Αλγόριθμος είναι ένα διατεταγμένο σύνολο από σαφή βήματα το οποίο παράγει κάποιο αποτέλεσμα και τερματίζεται σε πεπερασμένο χρόνο. Ο αλγόριθμος δέχεται
Υπολογιστικά Mαθηματικά II
Υπολογιστικά Mαθηματικά II Ζαφειράκογλου Απόστολος 1 Άσκηση Να υπολογιστεί με τη μέθοδο Monte Carlo το ολοκλήρωμα : I = ˆ1 dx 1 ˆ1 ˆ1 dx 2... (x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 + x 8 + x 9 + x 1
ΕΡΓΑΣΤΗΡΙΟ 2 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Εργαστήριο 2. Τµήµα Πληροφορικής και Τηλεπικοινωνιών
ΕΡΓΑΣΤΗΡΙΟ 2 ΕΙΣΑΓΩΓΗ ΣΤΗ C Εργαστήριο 2 Τµήµα Πληροφορικής και Τηλεπικοινωνιών οµή προγράµµατος Οδηγίες προεπεξεργαστή #include... # define... τµήµα δηλώσεων ηλωσεις και ορισµοί µεταβλητών. ηλωσεις συναρτήσεων
Α. 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) ΟΝΟΜΑΤΕΠΩΝΥΜΟ:................................................................................ Α.Μ.:...............................................
Νικόλαος Μιχαλοδημητράκης Σημειώσεις C (Εργαστήριο) 12 ο Μάθημα 1
12 ο Μέρος Συναρτήσεις Συναρτήσεις Τι είναι οι συναρτήσεις Οι συναρτήσεις είναι ένα βασικό δομικό συστατικό σε όλες τις ανώτερες γλώσσες προγραμματισμού. Με τις συναρτήσεις έχουμε τη δυνατότητα να χωρίσουμε
Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2)
Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Οργάνωση Προγράµµατος Header Files Μετάφραση και σύνδεση αρχείων προγράµµατος ΕΠΛ 132 Αρχές Προγραµµατισµού
Κεφάλαιο 3.1, : Συναρτήσεις I. (Διάλεξη 11)
Κεφάλαιο 3.1,3.3-3.4: Συναρτήσεις I (Διάλεξη 11) 11-1 Μη-Δομημένος Προγραμματισμός Το πρόγραμμα στα αριστερά δεν είναι Αρθρωτό (δεν έχει σωστή δομή). Όλη η λειτουργικότητα ορίζεται μέσα στην main. Το αποτέλεσμα
Μεθόδων Επίλυσης Προβλημάτων
ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 9 Συναρτήσεις Μέρος I Θέματα ιάλεξης Μη- ομημένος
H ΓΛΩΣΣΑ C. Μάθηµα 7: Πίνακες. ηµήτρης Ψούνης
H ΓΛΩΣΣΑ C Μάθηµα 7: Πίνακες ηµήτρης Ψούνης 2 Περιεχόµενα Μαθήµατος Α. Πίνακες 1. Μονοδιάστατοι Πίνακες 1. ήλωση Πίνακα 2. Παράδειγµα Χρήσης Πίνακα 3. Αρχικοποίηση πίνακα κατά τη δήλωση 4. Στατική έσµευση
2 η Διάλεξη C++ Δρ. Χρήστος Δρόσος ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ
2 η Διάλεξη C++ Δρ. Χρήστος Δρόσος ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ Τι μάθαμε μέχρι τώρα Κάθε πρόγραμμα της c++ περιέχει υποχρεωτικά μια συνάρτηση main() η οποία είναι εκείνη που εκτελείται πρώτη. Κάθε
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Eισαγωγή στον Προγραμματισμό
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Eισαγωγή στον Προγραμματισμό Ενότητα 1: Εισαγωγή στην γλώσσα C και στο περιβάλλον Dev C/C++ Κ. Κουκουλέτσος Τμήμα: Τμήμα Υπολογιστικών
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων
ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή
ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή Στο εργαστήριο αυτό θα μάθουμε για τη χρήση συναρτήσεων με σκοπό την κατασκευή αυτόνομων τμημάτων προγραμμάτων που υλοποιούν μία συγκεκριμένη διαδικασία, τα οποία
Επεξεργασία Αρχείων Κειµένου
Επεξεργασία Αρχείων Κειµένου Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Αρχεία Κειµένου Γενικά Συναρτήσεις Επεξεργασίας Αρχείων Κειµένου ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1 Αρχεία Γενικά
Η γλώσσα προγραμματισμού C
Η γλώσσα προγραμματισμού C Οι συναρτήσεις στη C Οι συναρτήσεις τι είναι Πρόκειται για ανεξάρτητα τμήματα ενός προγράμματος (υποπρογράμματα) που επιτελούν συγκεκριμένες εργασίες. Καλούνται από το κυρίως
ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β
ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β 1. (10 μον.) Απαντήστε σωστό ή λάθος στις παρακάτω ερωτήσεις (αʹ) _2togo είναι έγκυρο όνομα μεταβλητής (βʹ) Αν p είναι δείκτης στο πρώτο στοιχείο
Εντολές εισόδου - εξόδου. Εισαγωγή στη C++
Εντολές εισόδου - εξόδου Εισαγωγή στη C++ Το πρώτο πρόγραμμα //my first program #include using namespace std; int main(){ cout
Προγραμματισμός Αναδρομή
Αναδρομή Κλήσεις Συναρτήσεων Όταν καλείται μια συνάρτηση, πρέπει Να θυμάται σε ποιο σημείο του προγράμματος θα επιστρέψει Να δεσμεύσει χώρο για την τιμή που θα επιστρέψει Να δεσμεύσει χώρο για τα ορίσματα
Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 4η Διάλεξη Πίνακες Συναρτήσεις
Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό 4η Διάλεξη Πίνακες Συναρτήσεις Πίνακες (1) Μια συλλογή μεμονωμένων τιμών δεδομένων Οι πίνακες είναι διατεταγμένοι τα στοιχεία ενός πίνακα είναι τοποθετημένα
Εισαγωγή στην πληροφορική
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Εισαγωγή στην πληροφορική Βασίλειος Βεσκούκης ρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Ρωµύλος Κορακίτης
Δομημένος Προγραμματισμός
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα 6: Πίνακες Κώστας Κουκουλέτσος, Καθηγητής Τμήμα Η.Υ.Σ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό
Διάλεξη 15η: Αναδρομή, μέρος 1ο
Διάλεξη 15η: Αναδρομή, μέρος 1ο Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Αναδρομή I CS100, 2016-2017
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 1: Εισαγωγή Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά
Η γλώσσα προγραμματισμού C
Η γλώσσα προγραμματισμού C Οι συναρτήσεις στη C Οι συναρτήσεις τι είναι Πρόκειται για ανεξάρτητα τμήματα ενός προγράμματος (υποπρογράμματα) που επιτελούν συγκεκριμένες εργασίες. Καλούνται από το κυρίως
Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο.
Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο. Πού χρειάζεται; Πολλές μαθηματικές συναρτήσεις ορίζονται αναδρομικά. Δεν είναι
ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ
ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας
Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7
Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 ❶ Προετοιµασία για το 1 ο Εργαστήριο
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Συναρτήσεις Ως τώρα γράφαμε όλα τα προγράμματα μας μέσα στην main..1
Διαδικασιακός Προγραμματισμός
Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 11 η Συναρτήσεις Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης
Προγραμματισμός Η/Υ. Ενότητα 7: Συναρτήσεις
Προγραμματισμός Η/Υ Ενότητα 7: Νίκος Καρακαπιλίδης, Καθηγητής Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Κατανόηση του ορισμού και της κλήση
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Εισαγωγή στον Προγραμματισμό. Ενότητα 6: Πίνακες. Κ.
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό Ενότητα 6: Πίνακες Κ. Κουκουλέτσος Τμήμα: Τμήμα Υπολογιστικών Συστημάτων Άδειες Χρήσης Το παρόν εκπαιδευτικό
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Εισαγωγή στον Προγραμματισμό. Ενότητα 9: Συναρτήσεις Εμβέλεια
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό Ενότητα 9: Συναρτήσεις Εμβέλεια Κ. Κουκουλέτσος Τμήμα: Τμήμα Υπολογιστικών Συστημάτων Άδειες Χρήσης
Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Κλάσεις και Αντικείμενα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Κλάσεις Η γενική μορφή μιας κλάσης είναι η εξής: class class-name { private data and
Προγραμματισμός Αναδρομή
Προγραμματισμός Αναδρομή Προγραμματισμός Προγραμματισμός Κλήσεις Συναρτήσεων Όταν καλείται μια συνάρτηση, πρέπει Να θυμάται σε ποιο σημείο του προγράμματος θα επιστρέψει Να δεσμεύσει χώρο για την τιμή
Παίρνοντας Αποφάσεις 1
Παίρνοντας Αποφάσεις 1 Στόχοι μαθήματος Συγκριτικοί/ Λογικοί Τελεστές Η εντολή IF Η εντολή switch 2 Συγκριτικοί Τελεστές == ίσο!= διάφορο / άνισο > μεγαλύτερο < μικρότερο >= μεγαλύτερο ή ίσο
Εισαγωγή στον Προγραμματισμό με C++
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό με C++ Ενότητα # 8: Δομές Κωνσταντίνος Κουκουλέτσος Τμήμα Αυτοματισμού Άδειες Χρήσης Το παρόν εκπαιδευτικό
Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (Programming in the large)
Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (Programming in the large) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Συναρτήσεις Εξωτερικές µεταβλητές Κανόνες εµβέλειας ιάρκεια µεταβλητών Αρχικοποίηση
Δισδιάστατοι Πίνακες (2D Arrays) Εισαγωγή στη C++
Δισδιάστατοι Πίνακες (2D Arrays) Εισαγωγή στη C++ Γενικά Η εντολή: int arr[5][2]; Δηλώνει την μεταβλητή arr σαν πίνακα με πέντε γραμμές (rows) και με δύο στήλες (columns). Η αρίθμηση και των δύο δεικτών
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Συναρτήσεις II Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Συναρτήσεις II Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Η Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 6 Εντολές Επανάληψης Ασκήσεις. Γιώργος Λαμπρινίδης
Η Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 6 Εντολές Επανάληψης Ασκήσεις Γιώργος Λαμπρινίδης lamprinidis@pharm.uoa.gr Ασκήσεις Εμπέδωσης στις εντολές επανάληψης Σε αυτό το εργαστήριο θα δούμε στην πράξη: Πόσο χρήσιμες
Προγραμματισμό για ΗΜΥ
ΕΠΛ 034: Εισαγωγή στον Προγραμματισμό για ΗΜΥ Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 5 Συναρτήσεις Θέματα ιάλεξης Χρησιμότητα Συναρτήσεων Σύνταξη
ΕΡΓΑΣΙΑ ΕΞΑΜΗΝΟΥ - ΜΕΡΟΣ Γ'
ΕΡΓΑΣΙΑ ΕΞΑΜΗΝΟΥ - ΜΕΡΟΣ Γ' ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2009-2010 Προθεσµία : ΚΥΡΙΑΚΗ 22/11/09, 23:59 Στόχοι Οι στόχοι αυτού του τµήµατος της εργασίας είναι: Εισαγωγή κίνησης Αλληλεπίδραση
Α Β Γ static; printf("%c\n", putchar( A +1)+2); B DB BD. int i = 0; while (++i); printf("*");
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εξετάσεις Α Περιόδου 2016 (1/2/2016) ΟΝΟΜΑΤΕΠΩΝΥΜΟ:................................................................................ Α.Μ.:...............................................
Η βασική λειτουργία σε όλες αυτές τις συναρτήσεις είναι η εκτύπωση γραµµών.
draw_tric(4, $ ); $$$$ $$$ $$ $ draw_trid(5, a ); aaaaa aaaa aaa aa a Άρθρωση Η βασική λειτουργία σε όλες αυτές τις συναρτήσεις είναι η εκτύπωση γραµµών. /* Συνάρτηση για την εκτύπωση γραµµής δεδοµένου
Εισαγωγή στην πληροφορική
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Εισαγωγή στην πληροφορική Βασίλειος Βεσκούκης Δρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Η γλώσσα προγραμματισμού
Συναρτήσεις (Functions) Εισαγωγή στη C++
Συναρτήσεις (Functions) Εισαγωγή στη C++ 1 Δημιουργία συναρτήσεων Για κάθε συνάρτηση που θα δημιουργούμε θα πρέπει να ορίζουμε τα εξής: Τύπος επιστρεφόμενης τιμής Όνομα συνάρτησης Παράμετροι π.χ. int athrisma(int
3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις
3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα
ΣΧΕΔΙΑΣΗ ΚΑΙ ΥΛΟΠΟΙΗΣΗ ΛΟΓΙΣΜΙΚΟΥ
Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΣΧΕΔΙΑΣΗ ΚΑΙ ΥΛΟΠΟΙΗΣΗ ΛΟΓΙΣΜΙΚΟΥ Εμβέλεια Μεταβλητών Εμβέλεια Μεταβλητής Οι μεταβλητές που έχουμε δει μέχρι τώρα είναι
Πίνακες. 1 Πίνακες. 30 Μαρτίου 2014
Πίνακες 0 Μαρτίου 014 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα του συγκεκριμένου τύπου. Στην περίπτωση που θέλουμε
lab9grades Άσκηση 1 - Σωστοί τύποι (παραµέτρων και επιστρεφόµενης τιµής) της series_cosh.
ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ - Μέτρια σχόλια. 00497 PASS - Σωστοί τύποι (παραµέτρων και επιστρεφόµενης τιµής) της factorial. - Σωστοί τύποι (παραµέτρων και επιστρεφόµενης τιµής) της series_cosh. - Καλά ονόµατα µεταβλητών
Σε γενικές γραμμές, είναι καλή πρακτική να γράϕουμε προγράμματα C που αποτελούνται από πολλές και μικρές συναρτήσεις, παρά από λίγες και μεγάλες.
58 Δομή ενός προγράμματος C Συναρτήσεις Μία συνάρτηση C είναι ένα αυτόνομο, πακεταρισμένο τμήμα προγράμματος που ϕέρει σε πέρας μία διαδικασία η οποία έχει σαϕείς προδιαγραϕές εισόδου και εξόδου και συγκεκριμένο