ΤΑΞΕΙΣ. Ορισμός τάξης. Στο προηγούμενο κεφάλαιο γενικεύσαμε τις μεταβλητές Δομές: σύνθετες μεταβλητές Συναρτήσεις που δέχονται και επιστρέφουν δομές
|
|
- Ανδρόνικα Μπότσαρης
- 8 χρόνια πριν
- Προβολές:
Transcript
1 ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ πέρα απο απλές δομές ΤΑΞΕΙΣ Στο προηγούμενο κεφάλαιο γενικεύσαμε τις μεταβλητές Δομές: σύνθετες μεταβλητές Συναρτήσεις που δέχονται και επιστρέφουν δομές Τώρα γενικεύουμε μεταβλητές και συναρτήσεις Τάξεις: αντικείμενα που περιέχουν Μεταβλητές Συναρτήσεις που επεξεργάζονται τις μεταβλητές Μια τάξη εισάγει ένα αντικείμενο με συγκεκριμένες ιδιότητες και λειτουργίες αντικειμενοστρεφής προγραμματισμός 1 2 Ορισμός τάξης Ορισμός τάξης Μια τάξη ορίζεται με παρόμοιο τρόπο που ορίζεται και η δομή Χρησιμοποιείται η δεσμευμένη λέξη «class» Μέλη της τάξης μπορεί να είναι μεταβλητές και συναρτήσεις Τα μέλη μιας τάξης χωρίζονται σε δύο είδη «private»: ιδιωτικά μέλη: δεν είναι ορατά έξω από την τάξη «public»: δημόσια μέλη: είναι ορατά από οποιοδήποτε σημείο του προγράμματος Εξ ορισμού η C++ θεωρεί οτι τα μέλη μιας τάξης είναι private, εκτόςκαιεάνδηλωθούνpublic Σε αντιδιαστολή, τα μέλη μιας δομής θεωρούνται εξ ορισμού «public» 3 Ο γενικός ορισμός μιας τάξης είναι class όνομα{ τύπος μεταβλητή1 ; τύπος μεταβλητή2 ; τύπος όνομα-συνάρτησης1(); τύπος όνομα-συνάρτησης2(); τύπος μεταβλητή3 ; τύπος μεταβλητή4 ; τύπος όνομα-συνάρτησης3(); τύπος όνομα-συνάρτησης4(); ; Ιδιωτικά μέλη της τάξης Δεν μπορούμε να τα προσπελάσουμε, παρά μόνο μέσω των δημόσιων συναρτήσεων της τάξης ενθυλάκωση Δημόσια μέλη της τάξης Μπορούμε να τα προσπελάσουμε άμεσα από οποιοδήποτε σημείο του προγράμματος Οι δημόσιες συναρτήσεις επεξεργάζονται ιδιωτικά μέλη της τάξης 4
2 Απλές τάξεις Σχέση δομής και τάξης Στην πιο απλή περίπτωση, μια τάξη έχει Ιδιωτικές μεταβλητές: δεδομένα «προστατευμένα» απότουπόλοιποπρόγραμμα Επεξεργασία μόνο με προκαθορισμένο τρόπο Δημόσιες συναρτήσεις: Συναρτήσεις που επεξεργάζονται τις ιδιωτικές μεταβλητές Συνιστούν την γέφυρα επικοινωνίας των μεταβλητών με το έξω πρόγραμμα class όνομα{ ιδιωτικές μεταβλητές; δημόσιες συναρτήσεις; ; 5 Μια τάξη είναι μια γενίκευση της δομής Άρα ότι μάθαμε με τις δομές, μπορούμε να το κάνουμε με τάξεις Παράδειγμα, ένα «δημόσιο» διάνυσμα μπορεί να γραφτεί ισοδύναμα με δύο τρόπους Με δομή: Με τάξη: struct vector { ; class vector { ; Τα παραπάνω είναι απολύτως ίδια Τα παραδείγματα του προηγούμενου κεφαλαίου θα μπορούσαν να είχαν γραφτεί με την αντίστοιχη τάξη6 Συναρτήσεις-μέλη της τάξης Δήλωση συνάρτησης μέλους Μέσα στην τάξη δηλώνουμε τα πρωτότυπα των συναρτήσεωνμελών Παράδειγμα, ένα ιδιωτικό διάνυσμα, με μια συνάρτηση μέλος για την εισαγωγή τιμών στο διάνυσμα void set( double x1, double y1, double z1) ; ; Τα x, y, z είναι ιδιωτικά, και δεν μπορούμε να τους δώσουμε τιμές κατευθείαν από το πρόγραμμα με τον τελεστή της τελείας Θα χρησιμοποιήσουμε την συνάρτηση set, στην οποία δίνουμε στην λίστα εισόδου τις επιθυμητές τιμές 7 Η set θα πρέπει να αντιγράψει τις τιμές στα x, y, z Μιασυνάρτησηπουείναιμέλοςμιαςτάξηςέχειάμεσηπρόσβαση στα ιδιωτικά μέλη της τάξης Δεν χρειάζεται τελείες κτλ Ως εκ τούτου, ανήκει στην τάξη και πρέπει να δηλωθεί ανάλογα Ο μεταφραστής πρέπει να ξέρει την τάξη που ανήκει Δήλωση συνάρτησης (έξω από την τάξη, έξω από την main): τύπος τάξη::όνομα (λίστα εισόδου){ εντολές; return ; Το καινούριο στοιχείο: πριν το όνομα της συνάρτηση γράφουμε 8 το όνομα της τάξης, χωρισμένα με δύο άνω-κάτω τελείες
3 Δήλωση συνάρτησης μέλους Κλήση συνάρτηση μέλους Στο προηγούμενο παράδειγμα του διανύσματος void set( double x1, double y1, double z1) ; ; void vector::set (double x1, double y1, double z1){ x = x1; y = y1; z = z1; Η συνάρτηση έχει άμεση πρόσβαση στα x, y, z Τα γνωρίζει εξ ορισμού επειδή ανήκουν στην ίδια τάξη 9 Η κλήση γίνεται με τον τελεστή της τελείας, όπως γίνονταν και στις δομές Μόνη διαφορά, ότιησυνάρτησηέχειπάνταπαρενθέσεις Με την λίστα εισόδου εάν υπάρχει Άδειες παρενθέσεις εάν δεν υπάρχει είσοδος Παράδειγμα #1: Πρόγραμμα που δηλώνει τάξη για διάνυσμα με δύο συναρτήσεις: - μια για εισαγωγή τιμών - μια για υπολογισμό του μέτρου του διανύσματος 10 Παράδειγμα #1: διάνυσμα (1/2) #include <cmath> void set(double, double, double); double magn(); ; void vector::set (double x1, double y1, double z1){ x = x1; y = y1; z = z1; double vector::magn(){ return sqrt(x*x + y*y +z*z); 11 συνεχίζεται Παράδειγμα #1: διάνυσμα (2/2) vector v, u; double a, b, c; cout<< εισάγετε συνιστώσες διανύσματος << endl; cin >> a >> b >> c; vset(a, b, c); cout<< εισάγετε συνιστώσες διανύσματος << endl; cin >> a >> b >> c; uset(a, b, c); cout << το μέτρο του πρώτου διανύσματος <<endl; cout << vmagn() << endl; cout << το μέτρο του δεύτερου διανύσματος <<endl; cout << umagn() << endl; 12
4 Συνάρτηση δόμησης Κατά την δημιουργία ενός αντικειμένου, οι εσωτερικές μεταβλητές δεν έχουν αρχική τιμή Στο προηγούμενο χρησιμοποιήσαμε την set για να δώσουμε αρχικές τιμές ησυνάρτησηset καλείται μέσα στο πρόγραμμα Μπορούμε να προγραμματίσουμε έτσι ώστε κατά την δήλωση του αντικειμένου, οι εσωτερικές μεταβλητές να παίρνουν εξ ορισμού κάποια συγκεκριμένη αρχική τιμή Συνάρτηση δόμησης ίδιο όνομα με αυτό της τάξης χωρίς τύπο με ή χωρίς λίστα εισόδου 13 Παράδειγμα με συνάρτηση δόμησης #include <cmath> vector(); void set(double, double, double); double magn(); ; vector::vector(){ x = y = z = 0; void vector::set (double x1, double y1, double z1){ x = x1; y = y1; z = z1; double vector::magn(){ return sqrt(x*x + y*y +z*z); 14 Παράδειγμα με συνάρτηση δόμησης Παράδειγμα #2: λίστα αποθήκης vector v, u; Στη δήλωση, τα διανύσματα v, u αρχικοποιούνται στο (0,0,0) Η συνάρτηση δόμησης μπορεί και να έχει είσοδο vector(double x1, double y1, double z1); ; vector::vector(double x1, double y1, double z1){ x = x1; y = y1; z = z1; Τώρα όμως θα πρέπει να δοθούν οι τιμές κατά την δήλωση vector v(0,0,0), u(1,1,1); Στη δήλωση, τα διανύσματα v, u αρχικοποιούνται στο (0,0,0) και (1,1,1) 15 Πρόγραμμα για οργάνωση και χειρισμό αντικειμένων σε αποθήκη Θα ορίσουμε μια νέα τάξη που θα περιλαμβάνει Μεταβλητές για κάθε αντικείμενο: κόστος αγοράς Τιμή πώλησης Αριθμός αντικειμένων στην αποθήκη Χρηματικό ισοζύγιο Συναρτήσεις για επεξεργασία των παραπάνω Συνάρτηση για αρχικές συνθήκες Συνάρτηση για πώληση Συνάρτηση για αγορά Συνάρτηση που να δείχνει την κατάσταση 16
5 Παράδειγμα #2: λίστα αποθήκης (1/5) Παράδειγμα #2: λίστα αποθήκης (2/5) class item{ double cost; double price; int stock; double cash; item(); void reset(); void sell(); void buy(); void info(); ; void item::sell(){ int n; cout << πόσα κομμάτια προς πώληση; << endl; cin >> n; if ( stock<n ) cout<< έχουμε μόνο << stock <<endl; else { stock -= n; cash += n * price; item::item(){ cost = price = stock = cash = 0; Παράδειγμα #2: λίστα αποθήκης (3/5) Παράδειγμα #2: λίστα αποθήκης (4/5) void item::buy(){ int n; cout << πόσα κομμάτια προς αγορά; << endl; cin >> n; stock += n; cash -= n * cost; void item::reset(){ cout << παλιές τιμές αγοράς και πώλησης << endl; cout << cost << << price << endl; cout << εισάγετε νέες τιμές << endl; cin >> cost >> price; void item::info(){ cout << stock << έχουν μείνει στην αποθήκη <<endl; cout << cost << ευρώ η τιμή αγοράς <<endl; cout << price << ευρώ η τιμή πώλησης <<endl; cout << cash << ευρώ το ισοζύγιο <<endl; 19 20
6 Παράδειγμα #2: λίστα αποθήκης (5/5) item a[1000]; int i, j; do { cout<< Aριθμός προϊόντος; <<endl; cin >> i; cout<< Eντολή; 0-4: e-s-b-r-i <<endl; cin >> j; switch (j){ case 1: a[i]sell(); break; case 2: a[i]buy(); break; case 3: a[i]reset(); break; case 4: a[i]info(); break; while( j > 0 ); 21 Παράδειγμα #2: λίστα αποθήκης Εκτέλεση και αποτελέσματα > Aριθμός προϊόντος; > Eντολή; 0-4: e-s-b-r-i > 3 > παλιές τιμές αγοράς και πώλησης > 0 0 > εισάγετε νέες τιμές > 3 4 > Aριθμός προϊόντος; > Eντολή; 0-4: e-s-b-r-i > 2 > πόσα κομμάτια προς αγορά; > 5 > Aριθμός προϊόντος; > Eντολή; 0-4: e-s-b-r-i > πόσα κομμάτια προς πώληση; > 3 > Aριθμός προϊόντος; > Eντολή; 0-4: e-s-b-r-i > 4 > 2 έχουν μείνει στην αποθήκη > 3 ευρώ η τιμή αγοράς > 4 ευρώ η τιμή πώλησης > -3 ευρώ το ισοζύγιο 22 Παράδειγμα #2: Λίστα προτεραιότητας Παράδειγμα #2: Λίστα προτεραιότητας (1/4) Μια λίστα προτεραιότητας (ή λίστααναμονής, ή «ουρά») Δέχεται νούμερα, που προστίθενται στο τέλος Τραβάει νούμερα από την αρχή της ουράς Η σειρά που ακολουθείται είναι «πρώτο μπαίνει, πρώτο βγαίνει) Από μεταβλητές θα χρειαστούμε έναν πίνακα για να αποθηκεύουμε τα νούμερα έναν ακέραιο για την θέση όπου βάζουμε τον επόμενο έναν ακέραιο για την θέση απ όπου τραβάμε τον επόμενο Από συναρτήσεις θα χρειαστούμε μια συνάρτηση όταν ένας νέος αριθμός μπαίνει στη λίστα μια συνάρτηση για να τραβάμε έναν αριθμό από την λίστα και οι δύο πρέπει να ελέγχουν μην ξεπεραστούν όρια μια συνάρτηση να δίνει αρχικές τιμές 23 Θα ονομάσουμε την τάξη μας queue (ουρά) class queue { double q[1000]; int sloc, rloc; queue(); void qput(double); double qget(); ; Η συνάρτηση δόμησης πρέπει να δίνει τις κατάλληλες αρχικές τιμές κατά την δήλωση μιας νέας ουράς Αρχικά είναι άδεια, άρα sloc=rloc=0; queue::queue(){ sloc = rloc = 0; 24
7 Παράδειγμα #2: Λίστα προτεραιότητας (2/4) Παράδειγμα #2: Λίστα προτεραιότητας (3/4) Ησυνάρτησηqput δέχεται έναν ρητό και τον προσθέτει στο τέλος της ουράς Ελέγχει ότι η ουρά δεν έχει γεμίσει Η θέση στο τέλος της ουράς είναι η sloc void queue::qput(double a){ if(sloc == 1000){ cout<< η λίστα είναι γεμάτη << endl; return; Ησυνάρτησηqget τραβάει έναν ακέραιο από την αρχή της ουράς Ελέγχει ότι η ουρά δεν είναι άδεια Ηθέσηστηναρχήτηςουράςείναιηrloc double queue::qget(){ if(rloc == sloc){ cout<< η λίστα είναι άδεια ; return 0; q[sloc] = a; sloc++; 25 double r = q[rloc]; rloc++; return r; 26 Παράδειγμα #2: Λίστα προτεραιότητας (4/4) Ένα παράδειγμα προγράμματος που χρησιμοποιεί την τάξη queue queue a, b; aqput(10); bqput(19); aqput(20); bqput(1); cout<< η λίστα a περιέχει τους αριθμούς: ; cout << aqget() << << aqget() <<endl; cout<< η λίστα b περιέχει τους αριθμούς: ; cout << bqget() << << bqget() << endl; Στην εκτέλεση του παραπάνω θα λάβουμε > η λίστα a περιέχει τους αριθμούς: > η λίστα b περιέχει τους αριθμούς: Παράδειγμα #2: Λίστα προτεραιότητας 2 Ένα δεύτερο παράδειγμα προγράμματος με την τάξη queue queue a; int i; double x; do { cout<< Επόμενη εντολή; 0-2 e-p-g <<endl; cin >> i; switch (i) { case 1: cout<< δώστε αριθμό <<endl; cin >> x; aqput(x); break; case 2: cout<< επόμενος αριθμός στην ουρά ; cout << aqget() << endl; break; while ( i > 0 ); 28
8 Παράδειγμα #2: Λίστα προτεραιότητας 2: εφαρμογή > δώστε αριθμό > 4 > δώστε αριθμό > 7 > 2 > επόμενος αριθμός στην ουρά 4 > δώστε αριθμό > 5 > 2 > επόμενος αριθμός στην ουρά 7 > 2 > επόμενος αριθμός στην ουρά 5 > 2 > η λίστα είναι άδεια 0 > δώστε αριθμό 5 > 2 > επόμενος αριθμός στην ουρά 15 Παράδειγμα #3: Μέτρηση καρτών Πρόγραμμα που μετράει κάρτες σε παιχνίδι Έστω το παιχνίδι «21»,το οποίο παίζεται ως εξής: τραβάς όσα φύλλα επιθυμείς ο πιο κοντά στο 21 κερδίζει παίζουν τα φύλλα από 1 μέχρι και 10 παίζουν n τράπουλες Θα φτιάξουμε μια τάξη που θα μετράει τα φύλλα Από μεταβλητές θα χρειαστούμε έναν πίνακα για να αποθηκεύει πόσα φύλλα περάσανε έναν ακέραιο για πόσα φύλλα ακόμα παίζουν Από συναρτήσεις θα χρειαστούμε μια συνάρτηση δόμησης για αρχικές τιμές μια συνάρτηση όταν ένα νέο φύλλο περνάει μια συνάρτηση που συμβουλεύει να τραβήξουμε ή όχι Παράδειγμα #3: Μέτρηση καρτών (1/4) Παράδειγμα #3: Μέτρηση καρτών (2/4) class game{ int cards[11]; int num; game(int); void add(int); double play(int); ; Συνάρτηση για καταμέτρηση φύλλου που πέρασε στην είσοδο το j είναι το φύλλο που περνάει αφαιρείται ένα από τα j που παραμένουν αφαιρείται ένα από τον συνολικό αριθμό που παραμένει void game::add( int j ){ if( cards[j] == 0 ){ cout << τέλειωσε αυτή η κάρτα << endl; return; game::game(int n){ for (int i=1; i<=10; ++i) cards[i] = 4 * n; num = 40 * n; 31 cards[j]--; num--; 32
9 Παράδειγμα #3: Μέτρηση καρτών (3/4) Συνάρτηση για εκτίμηση πιθανότητας να τραβήξουμε στην είσοδο το j είναι το άθροισμα που έχουμε μέχρι τώρα αθροίζουμε τον αριθμό φύλλων που δεν το καίνε δηλαδή αυτά που έχουν μείνει από 1 μέχρι 21 - j διαιρούμε με τον συνολικό αριθμό φύλλων που έχει μείνει double game::play( int j ){ if( num == 0 ){ cout<< τελείωσαν οι κάρτες << endl ; return 0; double s=0; for(int i=1; i <= 21-j; ++i) s += cards[i]; return s / num * 100; 33 Παράδειγμα #3: Μέτρηση καρτών (4/4) Το κυρίως πρόγραμμα int n, j; cout << πόσες τράπουλες; ; cin >> n; game a(n); do{ cout << νέο φύλλο ; cin >> j; if (j <= 10) aadd(j); else cout << τράβα << aplay(j) << %\n ; while( j > 0 ); 34 Υπερφόρτωση τελεστών Πρόσθεση διανυσμάτων 1: με εξωτερική συνάρτηση Είδαμε πως γράφουμε συναρτήσεις για την εκτέλεση συγκεκριμένων λειτουργιών-πράξεων Είδαμε πως υπερφορτώνουμε συναρτήσεις Εδώ τα συνδυάζουμε υπερφορτώνοντας τους τελεστές Για παράδειγμα, αντί να γράψουμε συνάρτηση sum για πρόσθεση διανυσμάτων, θα επαναπρογραμματίσουμε το + ώστε να κάνει την επιθυμητή λειτουργία Ως παράδειγμα, θα χρησιμοποιήσουμε την τάξη vector 35 Έστω η τάξη vector για απλότητα θεωρούμε όλα τα μέλη της τάξης δημόσια ; Θα γράψουμε εξωτερική συνάρτηση για την πρόσθεση vector sum(vector v, vector u){ vector w; wx = vx + ux; wy = vy + uy; wz = vz + uz; 36
10 Πρόσθεση διανυσμάτων 1: με εξωτερική συνάρτηση Πρόσθεση διανυσμάτων 2: με συνάρτηση-μέλος ; vector sum(vector, vector); vector v1, v2, v3; v3 = sum(v1, v2); cout << το άθροισμα v1+v2 είναι << endl; cout << v3x << v3y << v3z<<endl; 37 Έστω η τάξη vector vector sum(vector); ; Η συνάρτηση-μέλος δέχεται και επιστρέφει τον ίδιο τύπο με την τάξη καλείται από κάποια μεταβλητή τύπου vector με την τελεία vector vector::sum(vector u){ vector w; wx = x + ux; wy = y + uy; wz = z + uz; 38 Πρόσθεση διανυσμάτων 2: με συνάρτηση-μέλος vector sum(vector); ; vector v1, v2, v3; v3 = v1sum(v2); cout << το άθροισμα v1+v2 είναι << endl; cout << v3x << v3y << v3z<<endl; 39 Πρόσθεση διανυσμάτων 3: με υπερφόρτωση τελεστή Ορίζεται όπως και η εσωτερική συνάρτηση Για να δηλώσουμε ότι πρόκειται για τελεστή, το όνομά της αποτελείται από τον κωδικό operator συνοδευόμενο από το επιθυμητό σύμβολο πχ για πρόσθεση, χρησιμοποιούμε το operator+ vector operator+(vector); ; vector vector::operator+(vector u){ vector w; wx = x + ux; wy = y + uy; wz = z + uz; 40
11 Πρόσθεση διανυσμάτων 3: με υπερφόρτωση τελεστή vector operator+(vector); ; vector v1, v2, v3; v3 = v1 + v2; cout << το άθροισμα v1+v2 είναι << endl; cout << v3x << v3y << v3z<<endl; 41 Σύγκριση συνάρτησης-μέλους και τελεστή Με συνάρτηση-μέλος Ησυνάρτηση sum καλείται από το διάνυσμα στα αριστερά Άρα έχει άμεση γνώση των μελών x, y, z Το διάνυσμα στα δεξιά εισέρχεται Άρα για τα x, y, z του εισερχόμενου διανύσματος χρειαζόμαστε την τελεία H συνάρτηση καλείται ως v3 = v1sum(v2); Με τελεστή Ο τελεστής + καλείται από το διάνυσμα στα αριστερά Άρα έχει άμεση γνώση των μελών x, y, z Το διάνυσμα στα δεξιά εισέρχεται Άρα για τα x, y, z του εισερχόμενου διανύσματος χρειαζόμαστε την τελεία Ο τελεστής καλείται ως v3 = v1 + v2; Με τελεστή δεν χρειάζονται η τελεία και οι παρενθέσεις! 42 Υπερφόρτωση αφαίρεσης διανυσμάτων Υπερφόρτωση γινομένου διανυσμάτων και γινομένου με ρητό vector vector::operator-(vector u){ vector w; wx = x - ux; wy = y - uy; wz = z - uz; Εσωτερικό γινόμενο δύο διανυσμάτων double vector::operator*(vector u){ return x*ux + y*uy + z*uz; Γινόμενο διανύσματος με ρητό vector vector::operator*(double m){ vector w; wx = x * m; wy = y * m; wz = z * m; 43 44
12 Δημιουργία τελεστή εξωτερικού γινομένου διανυσμάτων Εξωτερικό γινόμενο (ορίζουμε τον νέο τελεστή ^) iˆ ˆj kˆ r a b r = ax a y az = iˆ( a ybz azby ) ˆ( j axbz azbx ) + kˆ( axby b b b x y z vector vector::operator^(vector u){ vector w; wx = y * uz z * uy; wy = z * ux x * uz; wz = x * uy y * ux; a y b x ) 45 Λοιπές συναρτήσεις-μέλη Συνάρτηση δόμησης χωρίς είσοδο (για εξ ορισμού ανάθεση (0,0,0)) vector::vector(){ x = y = z = 0; Συνάρτηση δόμησης με είσοδο (για ανάθεση κατά την δήλωση) vector::vector(double x1, double y1, double z1){ x = x1; y = y1; z = z1; Συνάρτηση set (για ανάθεση μετά την δήλωση) void vector::set(double x1, double y1, double z1){ x = x1; y = y1; z = z1; Συνάρτηση magnitude double vector::magnitude(){ return sqrt(x*x + y*y + z*z); 46 Παράδειγμα 1: Διανυσματικός λογισμός Παράδειγμα 1: Διανυσματικός λογισμός (1/2) Πλήρες πρόγραμμα C++ με τους τελεστές και συναρτήσεις-μέλη που δόθηκαν προηγουμένως, ώστε να υπολογίσει την έκφραση ( v1 v2 ) ( v1 v3) ( v1 + v2 ) ( v1 v3 ) 47 #include <cmath> vector(); vector(double, double, double); void set(double, double, double); vector operator+(vector); vector operator-(vector); double operator*(vector); vector operator*(double); vector operator^(vector); double magnitude(); ; 48
13 Παράδειγμα 1: Διανυσματικός λογισμός (2/2) vector r; cout << εισάγετε τα τρία διανύσματα <<endl; cin >> x >> y >> z; vector v1(x,y,z); cin >> x >> y >> z; vector v2(x,y,z); cin >> x >> y >> z; vector v3(x,y,z); ( v1 v2 ) ( v1 v3 ) ( v1 + v2 ) ( v1 v3 ) r = ((v1^v2)^(v1^v3)) * ((v1+v2)^(v1-v3))magn(); cout << το ζητούμενο διάνυσμα είναι <<endl; cout << rx << << ry << << rz <<endl; 49 Παράδειγμα 2: μιγαδικοί αριθμοί #include <cmath> class complex{ double real, imag; complex(); complex(double, double); void set(double, double); complex operator+(complex); complex operator-(complex); complex operator*(complex); complex operator*(double); double magnitude(); ; 50 Παράδειγμα 2: μιγαδικοί αριθμοί Παράδειγμα 2: μιγαδικοί αριθμοί complex::complex(){real = imag = 0; complex::complex(double r, double i){ real = r; imag = i; void complex::set(double r, double i){ real = r; imag = i; double complex::magnitude(){ return sqrt(real*real + imag*imag); complex complex::operator+(complex z){ complex w; wreal = real + zreal; wimag = imag + zimag; complex complex::operator-(complex z){ complex w; wreal = real - zreal; wimag = imag - zimag; 51 52
14 Παράδειγμα 2: μιγαδικοί αριθμοί Παράδειγμα 2: μιγαδικοί αριθμοί complex complex::operator*(complex z){ complex w; wreal = real * zreal imag * zimag; wimag = real * zimag + imag * zreal; complex complex::operator*(double m){ complex w; wreal = real * m; wimag = imag * m; 53 Χρησιμοποιώντας την τάξη complex, υπολογίστε τους 100 πρώτους όρους της παρακάτω αναδρομικής ακολουθίας μιγαδικών αριθμών zn = rz n 1(1 zn 2) double r = 2; complex za(075, 025); complex zb(025, 075); complex z1(100, 000); z1 = i 025, z 2 = i 075, r = 2 for (int i=3; i<=100; ++i){ zc = ( zb * (z1 za) ) * r; za = zb; zb = zc; cout << ο όρος << i << είναι << zcreal << << zcimag << endl; 54
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Τάξεις Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Τάξεις Διδάσκοντες: Αν Καθ Δ Παπαγεωργίου, Αν Καθ Ε Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Δομές Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Δομές Διδάσκοντες: Αν Καθ Δ Παπαγεωργίου, Αν Καθ Ε Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creatve
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι είναι ; Συναρτήσεις. Παράδειγμα #1. double convert ( double cm ) { double inch;
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Τι είναι ; Συναρτήσεις Αυτόνομα τμήματα κώδικα (υποπρογράμματα) που πραγματοποιούν μια καθορισμένη εργασία. Χρήσιμες για περιπτώσεις που ο ίδιος υπολογισμός επαναλαμβάνεται πολλές φορές
Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Κλάσεις και Αντικείμενα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Κλάσεις Η γενική μορφή μιας κλάσης είναι η εξής: class class-name { private data and
Ανάπτυξη και Σχεδίαση Λογισμικού
Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Συναρτήσεις της C Τα Λοιπά Στοίβα και μηχανισμός κλήσης Αναδρομικές συναρτήσεις Στατικές μεταβλητές Άλλα θέματα Μηχανισμός
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι χρειάζεται η εντολή if ; Εντολή if. Παράδειγμα #1. Παράδειγμα #1
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Τι χρειάζεται η εντολή if ; Εντολή if Η εντολή if επιτρέπει την επιλεκτική εκτέλεση εντολών ελέγχοντας μια συνθήκη 1 2 Παράδειγμα #1 Παράδειγμα #1 Κατασκευάστε πρόγραμμα που θα βρίσκει το
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Συναρτήσεις II Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Συναρτήσεις II Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Διανύσματα στις 3 Διαστάσεις
project 2 Διανύσματα στις 3 Διαστάσεις Περιεχόμενα: Prj02.1 Το Πρόβλημα... 485 Prj02.2 Ο Τύπος Vector3 και οι Δημιουργοί... 486 Prj02.3 Οι Τελεστές Σύγκρισης... 487 Prj02.4 Οι Τελεστές +, -, *, ^... 488
Κλάσεις και αντικείμενα #include <iostream.h<
Κλάσεις και αντικείμενα #include class Person private: char name[30]; int age; public: void readdata() cout > name; cout > age; void
Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος
Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Μεταβλητές,
Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C
Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Εντολές επανάληψης Εντολές επανάληψης while for do-while ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Παράδειγμα #1 Εντολή while
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Εντολές επανάληψης Εντολές επανάληψης Στη C++ υπάρχουν 3 διαφορετικές εντολές επανάληψης: while for do-while 1 2 ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Εντολή while Παράδειγμα #1 Κατασκευάστε πρόγραμμα που για
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 7: Υπερφόρτωση διμελών τελεστών Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Αριθμητική Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Δεύτερο Πρόγραμμα 1 / * Second Simple Program : add 2 numbers * / 2
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ 1 Τύποι δεδομένων Η γλώσσα προγραμματισμού C++ υποστηρίζει τους παρακάτω τύπους δεδομένων: 1) Ακέραιοι αριθμοί (int). 2) Πραγματικοί αριθμοί διπλής ακρίβειας
Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Δείκτες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Τι είναι ο δείκτης Ένας δείκτης είναι μια μεταβλητή που περιέχει μια διεύθυνση μνήμης. Θυμηθείτε πως
Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης
Γ7.1 Επανάληψη ύλης Β Λυκείου Γ Λυκείου Κατεύθυνσης Απλά προγράμματα Ένα πρόγραμμα στη C++ που υπολογίζει το άθροισμα 2 ακέραιων αριθμών. // simple program #include using namespace std; int main(){
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι περιλαμβάνει μια μεταβλητή; ΔΕΙΚΤΕΣ. Διεύθυνση μεταβλητής. Δείκτης
ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Τι περιλαμβάνει μια μεταβλητή; ΔΕΙΚΤΕΣ Πρώτα να δούμε τι ακριβώς συμπεριλαμβάνει μια μεταβλητή τύπος Καθορίζει το μέγεθος στην μνήμη σε Bytes τιμή Η αριθμητική τιμή που αποθηκεύεται στην
2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων
2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Συναρτήσεις I Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Συναρτήσεις I Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Υπερφόρτωση τελεστών
Υπερφόρτωση τελεστών 19 Νοεμβρίου 2012 1 Γενικά Στα προηγούμενα είδαμε ότι ορίζοντας μία κλάση, ορίζουμε ένα νέο τύπο τον οποίο μπορούμε να χρησιμοποιήσουμε για να δηλώσουμε αντικείμενα αυτής της νέας
Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού
Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική
Α. 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++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:
Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Τύποι δεδομένων, μεταβλητές, πράξεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Τύποι δεδομένων, μεταβλητές, πράξεις Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό
Η εντολή if-else. Η απλή μορφή της εντολής if είναι η ακόλουθη: if (συνθήκη) { Η γενική μορφή της εντολής ifelse. εντολή_1; εντολή_2;..
Επιλογή - Επανάληψη Η εντολή if-else Ο τελεστής παράστασης συνθήκης H εντολή switch Η εντολές for και while Η εντολή do-while Η εντολές break - continue - goto Μαθηματικές συναρτήσεις Λέξεις κλειδιά στη
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Εντολή if. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΝΕΠΙΣΤΗΜΙΟ ΙΩΝΝΙΝΩΝ ΝΟΙΚΤ ΚΔΗΜΪΚ ΜΘΗΜΤ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Εντολή if Διδάσκοντες: ν. Καθ. Δ. Παπαγεωργίου, ν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative
ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Τρίτη Διάλεξη Εντολές Επιλογής και Επανάληψης Εντολές επιλογής Εντολή if Η πιο απλή μορφή της if συντάσσεται ως εξής: if ( συνθήκη ) Οι εντολές μέσα στα άγκιστρα αποτελούν
Δομημένος Προγραμματισμός (ΤΛ1006)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής
Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011
Εισαγωγή στον Προγραµµατισµό Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Hello World /* Αρχείο hello.c * Εµφανίζει στην οθόνη το * µήνυµα hello world */ #include
Προγραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16
Ανάπτυξη και Σχεδίαση Λογισμικού
Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Συναρτήσεις (Functions) Οι βασικές λειτουργικές ενότητες ενός προγράμματος C Καλούνται με ορίσματα που αντιστοιχούνται σε
Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εργαστήριο 9η εβδομάδα. Κοζάνη, 2 Δεκεμβρίου 2008. Δίνονται παραδείγματα που αποσαφηνίζουν και συμπληρώνουν όσα αναφέρθηκαν στο μάθημα σχετικά με τις δομές
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Εντολές for, while, do-while Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Εντολές for, while, do-while Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται
Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13)
Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις Επανάληψη για την ενδιάμεση εξέταση (Διάλεξη 13) 13-1 Πρόβλημα 1 Γράψετε τον ορισμό μίας συνάρτησης η οποία υπολογίζει το μέγιστο 2 ακεραίων αριθμών και
Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε
3 ο Εργαστήριο Μεταβλητές, Τελεστές
3 ο Εργαστήριο Μεταβλητές, Τελεστές Μια μεταβλητή έχει ένα όνομα και ουσιαστικά είναι ένας δείκτης σε μια συγκεκριμένη θέση στη μνήμη του υπολογιστή. Στη θέση μνήμης στην οποία δείχνει μια μεταβλητή αποθηκεύονται
Προγραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15
Διαδικασιακός Προγραμματισμός
Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 Κατασκευαστές (Constructors) Ειδικός τύπος μεθόδων, οι οποίες: - είναι public και έχουν το ίδιο όνομα με αυτό της κλάσης - χρησιμοποιούνται για να αρχικοποιήσουν κάποιες
ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python
ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής
ΗΥ-150. Προγραμματισμός
ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης και ανάπτυξης των προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων. Όταν ένα τμήμα προγράμματος επιτελεί ένα αυτόνομο
ΗΥ-150. Προγραμματισμός
ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει
Δομές Δεδομένων και Αλγόριθμοι
Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 14 Στοίβες 1 / 14 Στοίβες Η στοίβα είναι μια ειδική περίπτωση γραμμικής λίστας στην οποία οι εισαγωγές
7. ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ
7. ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ 7.1 Ορισμός και δήλωση συνάρτησης Μία συνάρτηση είναι μία ενότητα οδηγιών οι οποίες μαζί εκτελούν μία συγκεκριμένη εργασία. Παρέχει έναν κατάλληλο τρόπο να μπορέσουμε να κάνουμε
Εισαγωγή στον Προγραμματισμό με C++
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό με C++ Ενότητα # 6: Συναρτήσεις Κωνσταντίνος Κουκουλέτσος Τμήμα Αυτοματισμού Άδειες Χρήσης Το παρόν
Δομημένος Προγραμματισμός (ΤΛ1006)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής
Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές. Δρ. Γιώργος Λαμπρινίδης 23/10/2015 Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1
Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές Δρ. Γιώργος Λαμπρινίδης amprinidis@pharm.uoa.gr 1 Αριθμητικοί Τελεστές + πρόσθεση - αφαίρεση * πολλαπλασιασμός / διαίρεση Προσοχή! Διαίρεση
Εισαγωγή στον Προγραμματισμό (με. τη C)
Υποχρεωτικό Μάθημα 3 ου Εξαμήνου Χειμερινό Εξάμηνο Ακ. Έτους 20 Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Εισαγωγή στον Προγραμματισμό (με τη C) Διδάσκουσα: Φατούρου Παναγιώτα faturu [at] csd.uoc.gr
Προγραμματισμός ΙI (Θ)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός ΙI (Θ) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2017 Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις
Εισαγωγή στον Προγραµµατισµό. Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ
Εισαγωγή στον Προγραµµατισµό Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Συναρτήσεις 19.11.16 Β. Ντουφεξή 2 Προβλήματα: Οσο μεγαλώνουν τα προγράμματα, γίνονται πιο πολύπλοκα.
Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT
= Αντικειμενοστραφείς Γλώσσες Προγραμματισμού Ιωάννης Παπαδόπουλος Τμήμα Φυσικής, Πανεπιστήμιο Ιωαννίνων Δεκέμβριος 2018 1/18 = 2/18 = 1 αντικειμένων Μέθοδοι αντιγράφου (copy constructor) Κατασκευή μέσω
Μεθόδων Επίλυσης Προβλημάτων
ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 13 Πίνακες & Συναρτήσεις Εισαγωγή Στις προηγούμενες
Προγραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15
Προγραμματισμός Ι. Εγγραφές. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Εγγραφές Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Η Ανάγκη Ομαδοποίησης Πολλές φορές έχουμε πληροφορίες διαφορετικού τύπου οι οποίες όμως έχουν μεγάλη
Ανάπτυξη και Σχεδίαση Λογισμικού
Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Εκφράσεις και Λίγες Εντολές Οι εκφράσεις της C Τελεστές Απλές και σύνθετες εντολές Εντολές ελέγχου (επιλογής) Εισαγωγή σε
Εισαγωγή στη γλώσσα προγραμματισμού C++
Εισαγωγή στη γλώσσα προγραμματισμού C++ Περιβάλλον Εργασίας 2 Περιβάλλον Εργασίας 1. Χρήση απλού κειμενογράφου και Μεταγλωττιστή 2. Ολοκληρωμένα Περιβάλλοντα Εργασίας (Integrated Development Environments)
Κλήση Συναρτήσεων ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ. Γεώργιος Παπαϊωάννου ( )
ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ Γεώργιος Παπαϊωάννου (2013-16) gepap@aueb.gr Περιγραφή: Μορφές μεταβίβασης ορισμάτων σε συναρτήσεις (και μεθόδους) και οι επιπτώσεις τους Επιστροφή τιμών από κλήση συναρτήσεων Υπερφόρτωση
Συναρτήσεις. Εισαγωγή
Συναρτήσεις Εισαγωγή Η χρήση συναρτήσεων στα προγράμματα της γλώσσας C είναι πολύ σημαντική καθώς μας επιτρέπει τη διάσπαση ενός προβλήματος σε μικρότερα υποπροβλήματα τα οποία μπορούμε να επιλύσουμε πιο
5 &6. Τύποι δεδομένων, τελεστές και
Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων 5 &6. Τύποι δεδομένων, τελεστές και αριθμητικές εκφράσεις Ιωάννης Κατάκης Σήμερα o Τύποι δεδομένων int, char, float, double o Τελεστές = + - * / % o Αριθμητικές
Δομημένος Προγραμματισμός (ΤΛ1006)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής
Αναδρομικοί Αλγόριθμοι
Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας ένα ή περισσότερα στιγμιότυπα του ίδιου προβλήματος. Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας
Προγραμματισμός Υπολογιστών με C++
Προγραμματισμός Υπολογιστών με C++ ( 2012-13 ) 10η διάλεξη Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Τι θα ακούσετε σήμερα Υπερφόρτωση των τελεστών εισόδου και εξόδου. Τάξεις και δυναμική καταχώριση
Συναρτήσεις και Πίνακες
Συναρτήσεις και Πίνακες Συναρτήσεις καθιερωμένης βιβλιοθήκης της C++ Συναρτήσεις οριζόμενες από τον χρήστη Μεταβίβαση κατ αξία Συναρτήσεις void και λογικές συναρτήσεις Μεταβίβαση κατ αναφορά Επιστροφή
Συναρτήσεις και διαδικασίες
Συναρτήσεις και διαδικασίες Χρήση συναρτήσεων βιβλιοθήκης Εντολή κλήσης της συνάρτησης printf: printf( Hello, world\n ); Μια συνάρτηση είναι ένα σύνολο εντολών που έχουν ομαδοποιηθεί και τους έχει αποδοθεί
ΣΥΝΑΡΤΗΣΕΙΣ Παραδείγματα χρήσης συναρτήσεων
ΣΥΝΑΡΤΗΣΕΙΣ Παραδείγματα χρήσης συναρτήσεων ΠΟΛΛΕΣ ΕΝΤΟΛΕΣ ΕΠΙΣΤΡΟΦΗΣ Να γραφτεί ένα πρόγραμμα που να διπλασιάζει ένα ποσό που του δίνει ο χρήστης μεταξύ 0 και 1000. Να ελέγχει εάν το ποσό που εισήχθη
Pascal. 15 Νοεμβρίου 2011
Pascal 15 Νοεμβρίου 011 1 Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε
Β7.1.4 Δομές Επανάληψης. Β Λυκείου Κατεύθυνσης
Β7.1.4 Δομές Επανάληψης Β Λυκείου Κατεύθυνσης Εισαγωγή Δομές επανάληψης ή βρόχοι (loops) ονομάζονται μέρη του κώδικα που εκτελούνται περισσότερες από μία φορές, ανάλογα με τη συνθήκη που έχουμε δηλώσει.
Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client
ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 2010-11 1 Μεταβλητές-Σταθερές-Παράμετροι Τα στοιχεία
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Πίνακες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Πίνακες Πολλές φορές θέλουμε να κρατήσουμε στην μνήμη πολλά αντικείμενα
Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 3: Προγραμματισμός σε JAVA I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Στοιχειώδης Προγραμματισμός - Προγραμματισμός με Συνθήκες - Προγραμματισμός με Βρόγχους
Τελεστές ΤΕΛΕΣΤΕΣ. Γεώργιος Παπαϊωάννου ( )
ΤΕΛΕΣΤΕΣ Γεώργιος Παπαϊωάννου (2013-14) gepap@aueb.gr Περιγραφή: Τι είναι οι τελεστές Χρήση τελεστών Υπερφόρτωση τελεστών Chain-linking Τελεστών Τελευταία ενημέρωση: Ιούνιος 2013 Εισαγωγή - 2 Τελεστής
ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τι είναι μια συνάρτηση; ΣΥΝΑΡΤΗΣΕΙΣ. Δήλωση συνάρτησης sq. Παράδειγμα συνάρτησης: υπολογισμός τετραγώνου
ΥΠΟΛΟΓΙΣΤΕΣ Ι Τι είναι μια συνάρτηση; ΣΥΝΑΡΤΗΣΕΙΣ Μια ομάδα εντολών, σχεδιασμένη να εκτελεί έναν υπολογισμό και να γυρνάει το αποτέλεσμα Ιδανικές για περιπτώσεις που ο υπολογισμός επαναλαμβάνεται πολλές
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 6: Κατανομή και Δυναμική Διαχείριση Μνήμης, τελεστές new και delete, υπερφόρτωση μονομελών τελεστών Το περιεχόμενο
Εισαγωγή στην Αριθμητική Ανάλυση
Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στη MATLAB ΔΙΔΑΣΚΩΝ: ΓΕΩΡΓΙΟΣ ΑΚΡΙΒΗΣ ΒΟΗΘΟΙ: ΔΗΜΗΤΡΙΑΔΗΣ ΣΩΚΡΑΤΗΣ, ΣΚΟΡΔΑ ΕΛΕΝΗ E-MAIL: SDIMITRIADIS@CS.UOI.GR, ESKORDA@CS.UOI.GR Τι είναι Matlab Είναι ένα περιβάλλον
ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Μάθημα 7ο Τμήμα Διοίκησης Επιχειρήσεων Παλαιό ΕΠΔΟ α εξάμηνο Β. Φερεντίνος Δείκτες (Pointers) (1) 142 Κάθε μεταβλητή, εκτός από την τιμή της, έχει και μία συγκεκριμένη διεύθυνση
3 Αλληλεπίδραση Αντικειμένων
Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή
Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13
Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 ΙΣΤΟΡΙΚΑ Παρουσιάστηκε το 1970 από το Niklaus Wirth Προγενέστερη γλώσσα ήταν η Algol 60 Είναι δομημένη γλώσσα προγραμματισμού υψηλού
Προγραμματισμός Υπολογιστών με C++
Προγραμματισμός Υπολογιστών με C++ ( 2012-13 ) 5η διάλεξη Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Τι θα ακούσετε σήμερα Πίνακες ως ορίσματα συναρτήσεων. Τα ορίσματα argc και argv της main.
Κεφάλαιο 2.5: Τύποι εδοµένων, Τελεστές και Αριθµητικές Εκφράσεις. ( ιαλέξεις 5-6) ιδάσκων: ηµήτρης Ζεϊναλιπούρ
Κεφάλαιο 2.5: Τύποι εδοµένων, Τελεστές και Αριθµητικές Εκφράσεις ( ιαλέξεις 5-6) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 1 Περιεχόµενα Τύποι εδοµένων int, char, float, double Τελεστές =,+,-,*,/,% Αριθµητικές εκφράσεις
Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.
Ερωτήσεις προόδου C Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα. #include // δίνει οδηγία στον compiler να // συμπεριλάβει την βιβλιοθήκη stdio int
Δομές Επανάληψης. Εισαγωγή στη C++
Δομές Επανάληψης Εισαγωγή στη C++ Επαναληπτικές δηλώσεις Οι βρόγχοι (loops) αναγκάζουν ένα τμήμα κώδικα να επαναλαμβάνεται. Η επανάληψη συνεχίζεται για όσο μία λογική συνθήκη είναι αληθής. Όταν η συνθήκη
Διαδικασιακός Προγραμματισμός
Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 13 η Δομές & Ενώσεις Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή
3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις
3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα
Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 3-2
Εισαγωγή στην C Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Σύνταξη και Σηµασιολογία της C Σχολιασµός Μεταβλητές / Σταθερές Τύποι εδοµένων και Τελεστές Βιβλίο µαθήµατος: Chapter 2,, Sec.
Εργαστηριακή Άσκηση 1
Εργαστηριακή Άσκηση 1 Επανάληψη προγραμματισμού Βασικοί Αλγόριθμοι Είσοδος τιμών από το πληκτρολόγιο Σε όλα τα προγράμματα που θα γράψουμε στην συνέχεια του εξαμήνου θα χρειαστεί να εισάγουμε τιμές σε
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται και τυπώνει τη θέση του.
Οντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 5: H ΓΛΩΣΣΑ C++ Δομές Ελέγχου ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής Δομές Ελέγχου Εισαγωγή Πριν
Προγραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 9: Συναρτήσεις Ορισμός συναρτήσεων () { /* δήλωση μεταβλητών */ /* εντολές ελέγχου/επεξεργασίας */ o Μια συνάρτηση ορίζεται δίνοντας
Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης
Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται
Εργαστήρια Αριθμητικής Ανάλυσης Ι. 4 ο Εργαστήριο. Διανύσματα-Πίνακες 1 ο Μέρος
Εργαστήρια Αριθμητικής Ανάλυσης Ι 4 ο Εργαστήριο Διανύσματα-Πίνακες 1 ο Μέρος 2017 Εισαγωγή Όπως έχουμε προαναφέρει σε προηγούμενα εργαστήρια. Ο βασικός τύπος δεδομένων στο Matlab είναι οι πίνακες. Ένα
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 7 Ο. Αριθμητικές πράξεις Τυχαίοι αριθμοί Εφαρμογές σε προβλήματα ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 2010-11 1
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 7 Ο Αριθμητικές πράξεις Τυχαίοι αριθμοί Εφαρμογές σε προβλήματα ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 2010-11 1 Εισαγωγή Οι αριθμητικές πράξεις που εκτελούνται στον υπολογιστή αποτελούν το
Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων
Δομημένος Προγραμματισμός Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Ορισμός
Συστήματα συντεταγμένων
Συστήματα συντεταγμένων Χρησιμοποιούνται για την περιγραφή της θέσης ενός σημείου στον χώρο. Κοινά συστήματα συντεταγμένων: Καρτεσιανό (x, y, z) Πολικό (r, θ) Καρτεσιανό σύστημα συντεταγμένων Οι άξονες
ΑΣΚΗΣΗ 6: ΔΕΙΚΤΕΣ. Σκοπός της Άσκησης. 1. Εισαγωγικά στοιχεία για τους Δείκτες
Σκοπός της Άσκησης ΑΣΚΗΣΗ 6: ΔΕΙΚΤΕΣ Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η εξοικείωση με τη χρήση των δεικτών (pointers). Οι δείκτες δίνουν την δυνατότητα σε προγράμματα να προσομοιώνουν τη
Διάλεξη 16: Σωροί. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις
ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 16: Σωροί Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις Ουρά Προτεραιότητας Η δομή
Οντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 7: C++ TEMPLATES, ΥΠΕΡΦΟΡΤΩΣΗ ΤΕΛΕΣΤΩΝ, ΕΞΑΙΡΕΣΕΙΣ Υπερφόρτωση Τελεστών ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ