Ασκήσεις &απαντήσεις Επανάληψης

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

Download "Ασκήσεις &απαντήσεις Επανάληψης"

Transcript

1 Ασκήσεις &απαντήσεις Επανάληψης EΙΣΑΓΩΓΗ 01 Ποιος είναι ο σκοπός της προεπεξεργαστικής οδηγίας: #include <iostream> Η οδηγία αυτή συµπεριλαµβάνει στον κώδικα, τον φάκελο επικεφαλίδων iostream.h, στη θέση ακριβώς που βρίσκεται. Ο φάκελος iostream.h περιλαµβάνει τις δηλώσεις που χρειάζονται για εισαγωγή (input) και εξαγωγή(οutput) δεδοµένων, π. χ. τον ορισµό του τελεστή εξαγωγής δεδοµένων <<. 02 Εντοπίστε και διορθώστε τα λάθη σε κάθε µια από τις ακόλουθες προτάσεις: a) cout >> count; b) int double = 44; a). Το αντικείµενο εξόδου cout χρειάζεται τον τελεστή εξόδου <<. Θα έπρεπε να είναι cout << count; b) Η λέξη double είναι λέξη κλειδί στην C++. εν µπορεί να χρησιµοποιηθεί για ονόµατα µεταβλητών. Το σωστό θα ήταν int d = 44; 03 Σε τι διαφέρουν οι 2 παρακάτω προτάσεις: char ch = A ; char ch = 65; Και οι δύο προτάσεις έχουν τα ίδια αποτελέσµατα. ιακηρύττουν την µεταβλητή ch σαν µεταβλητή του τύπου char (χαρακτήρα) και της δίνουν αρχική τιµή το 65. Από τη στιγµή που αυτή είναι η ASCII τιµή για το Α, και αυτός ο χαρακτήρας µπορεί να χρησιµοποιηθεί για να αρχικοποιήσει το ch στο Τι σηµαίνει λάθος σε χρόνο εκτέλεσης (run time); ώστε παραδείγµατα δύο διαφορετικών λαθών κατά την εκτέλεση. Το λάθος σε χρόνο εκτέλεσης είναι ένα λάθος που συµβαίνει όταν το πρόγραµµα εκτελείται. Αριθµητική υπερχείλιση και διαίρεση µε το µηδέν είναι παραδείγµατα λαθών κατά την εκτέλεση. 05 Τι είναι το λάθος κατά τη µεταγλώττιση; ώστε παραδείγµατα δύο διαφορετικών λαθών κατά την µεταγλώττιση. Το λάθος κατά τη µεταγλώττιση είναι ένα λάθος το οποίο συµβαίνει όταν ένα πρόγραµµα µεταγλωττίζεται. 1

2 Παραδείγµατα: συντακτικά λάθη όπως παράλειψη ενός ερωτηµατικού, χρήση µιας µεταβλητής η οποία δεν έχει δηλωθεί, χρήση µιας λέξης κλειδιού για όνοµα µιας µεταβλητής. 06. Η οµαδοποίηση δεδοµένων και συναρτήσεων λέγεται ε. 07. Η ιδιότητα των κλάσεων να επεκτείνονται σε νέες κλάσεις λέγεται κ. 08. Η δυνατότητα µιας συνάρτησης ή ενός τελεστή να επενεργεί µε διαφορετικούς τρόπους σε διαφορετικούς τύπους δεδοµένων ονοµάζεται π. BΑΣΙΚΑ 09 Γράψτε µία απλή πρόταση σε C++, η οποία να εµφανίζει στην καθιερωµένη έξοδο τη φράση Πάρα πολλά όταν η µεταβλητή count περάσει το 100. If (count > 100) cout << Para polla ; 10. Ποιο αρχείο-κεφαλίδα πρέπει να συµπεριλάβετε µε την οδηγία #include ώστε να χρησιµοποιήσετε το χειριστή setw; Γράψτε µια εντολή που θα εµφανίσει τη µεταβλητή george σε ένα πεδίο πλάτους 10 χαρακτήρων. 11. Αν υποθέσουµε ότι η µεταβλητή i ξεκινάει µε την τιµή 20, τι θα τυπώσει στην έξοδο το επόµενο απόσπασµα κώδικα προγράµµατος; cout << i--; cout << ++i; LOOPS & DECISIONS 12 Τι λάθος υπάρχει στον κώδικα ; If (x = 0) cout << x << = 0 \n ; else cout << x <<! = 0 \n ; Ο προγραµµατιστής πιθανόν επεδίωκε να εξετάσει την συνθήκη (x==0). Αλλά χρησιµοποιώντας τελεστή ανάθεσης = αντί για τον τελεστή ισότητας == το αποτέλεσµα θα είναι ριζικά διαφορετικό από αυτό που αναµενόταν. Για παράδειγµα, εάν το x έχει την τιµή 22 αρχικά πριν από την συνθήκη if, τότε η συνθήκη if θα αλλάξει την τιµή του x σε 0. Επιπλέον, η συνθήκη (x=0) αποτιµάται σε 0, πράγµα που σηµαίνει «false», έτσι θα εκτελεστεί το κοµµάτι else, µε το µήνυµα!=0\n αναφέροντας ότι το x δεν είναι 0! 13 Κατασκευάστε λογική έκφραση, η οποία να αντιπροσωπεύει κάθε µία από τις παρακάτω συνθήκες : a) Η µεταβλητή score είναι µεγαλύτερη ή ίση από 80 αλλά µικρότερη από 90. b) Η µεταβλητή answer είναι N ή n. c) Η µεταβλητή n είναι άρτιος αριθµός και διάφορη του 8. 2

3 d) Ο χαρακτήρας ch είναι κεφαλαίο γράµµα. a) (score > = 80 && score < 90) b) (answer == N answer ==n ) c) (n %2 == 0 && n! = 8) d) (ch > = A && ch < = Z ) 14 Πως γίνεται ό έλεγχος µέσα στο σώµα µιας εντολής switch αν δεν υπάρχει η εντολή break µετά από µια εντολή case Οταν το case δεν περιλαµβάνει πρόταση break, ο έλεγχος συνεχίζει στην αµέσως επόµενη case και αυτό λέγεται διαπέρασµα (fall through). 15 Πώς αποτιµάται η παρακάτω έκφραση; (x < y? -1 : (x == y? 0 :1)); Η έκφραση αυτή αποτιµάται σε -1 εάν x < y, αποτιµάται σε 0 εάν x == y και τέλος αποτιµάται σε 1 εάν x > y. 16 Γράψτε µια απλή C++ πρόταση η οποία χρησιµοποιεί τελεστή συνθήκης (? : ) για να εκχωρήσει την απόλυτη τιµή της µεταβλητής x στην µεταβλητή absx. absx = (x > 0? x : -x); 17. Γράψτε ένα βρόχο for που να εµφανίζει τους αριθµούς από 100 ως 110. LOOPS & DECISIONS 18 Τι θα συµβεί, εάν σε έναν βρόχο while η συνθήκη ελέγχου είναι ψευδής (false) από την αρχή ; Εάν η συνθήκη ελέγχου σε έναν βρόχο while είναι αρχικά ψευδής, τότε ο βρόχος παρακάµπτεται, που σηµαίνει ότι οι προτάσεις µέσα στον βρόχο δεν εκτελούνται καθόλου. 19 Ποιος είναι ο ελάχιστος αριθµός επαναλήψεων Που µπορεί να κάνει ένας βρόχος while Που µπορεί να κάνει ένας βρόχος do-while; Ο ελάχιστος αριθµός επαναλήψεων Που µπορεί να κάνει ένας βρόχος while είναι καµία (0) Που µπορεί να κάνει ένας βρόχος do-while είναι µία (1) 20 Εντοπίστε το λάθος στο παρακάτω βρόχο επανάληψης n=50; while(n <= 100) sum += n * n; 3

4 ΣΥΝΑΡΤΗΣΕΙΣ Ο παραπάνω βρόχος επανάληψης είναι ατέρµονας, καθώς η τιµή της µεταβλητής n δεν αλλάζει πουθενά. 21. Μια συνάρτηση που δεν επιστρέφει τίποτε, έχει τύπο επιστροφής. 22. Γράψτε µια συνάρτηση µε όνοµα pow3 µε παράµετρο ένα ακέραιο n, που επιστρέφει τον κύβο του n. 23. Σωστό ή λάθος: Όταν καλείται µια συνάρτηση, το πλήθος και ο τύπος των ορισµάτων πρέπει να είναι αντίστοιχα µε τις τυπικές παραµέτρους της. 24. Ποιος είναι ο κύριος λόγος για τη µεταβίβαση ορισµάτων κατ' αναφορά; 25. Γράψτε πρόγραµµα που ζητάει δυο δεκαδικούς αριθµούς π.χ και 1.34, υπολογίζει το µέσο όρο τους, και εµφανίζει το αποτέλεσµα π.χ µε δυο δεκαδικά ψηφία (setprecision) καταλαµβάνοντας συνολικά δεκαέξι θέσεις στην οθόνη. ΠΙΝΑΚΕΣ 26 Τι τύπου µεταβλητή µπορεί να είναι ο αριθµοδείκτης ενός πίνακα, και ποιο, το εύρος τιµών που µπορεί να πάρει ; Ο αριθµοδείκτης ενός πίνακα πρέπει να είναι µια µεταβλητή τύπου integer, και το εύρος των τιµών που µπορεί να πάρει είναι από 0 (µηδέν) έως n-1. Όπου n το µέγεθος του πίνακα (αριθµός των στοιχείων του πίνακα). 27. Όλα τα στοιχεία σε έναν πίνακα πρέπει να έχουν τύπο δεδοµένων. 28. Γράψτε την εντολή που ορίζει έναν πίνακα ο οποίος ονοµάζεται manybirds και χωρά 50 αντικείµενα τύπου bird. bird maybirds[50]; 29. Τι αντιπροσωπεύει το όνοµα ενός πίνακα? ΕΙΚΤΕΣ 30 Πώς µπορούµε να έχουµε πρόσβαση σε διεύθυνση µνήµης µιας µεταβλητής; Εφαρµόζοντας τον τελεστή αναφοροποίησης (διευθυνσιοδότησης) & στη µεταβλητή αυτή (&x). 31 Εξηγήστε τη διαφορά ανάµεσα στις παρακάτω δύο δηλώσεις: α) int n1 = n; β) int& n2 = n; Η δήλωση int n1 = n; ορίζει το n1 να είναι ένα αντίγραφο του n. Είναι ένα διαφορετικό αντικείµενο το οποίο έχει την ίδια τιµή µε το n. Η δήλωση int& n2 = n; ορίζει το n2 να είναι συνώνυµο του n. Είναι το 4

5 ίδιο αντικείµενο µε το n µε την ίδια διεύθυνση. 32 Έκφρασε τη διαφορά µεταξύ των δύο παρακάτω χρήσεων του τελεστή αναφοροποίησης &: α) int& r = n; β) p = &n; Η δήλωση int& r = n; ορίζει το r να είναι αναφορά για την ακέραια µεταβλητή n. Η πρόταση r = &n; εκχωρεί τη διεύθυνση του n στον διευθυνσιοδείκτη p. 33. Με δεδοµένο ένα δείκτη p που δείχνει σε ένα αντικείµενο τύπου upperclass, γράψτε µια παράσταση που εκτελεί τη συνάρτηση-µέλος exclu() σε αυτό το αντικείµενο. upperclass->exclu() Strings 34 Τι εκτυπώνει ο παρακάτω κώδικας: char* s1 = ABCDE ; char* s2 = ABC ; if (strcmp(s1, s2) < 0) cout << s1 << < << s2 << endl; else cout << s1 << >= << s2 << endl; Εκτυπώνει : ABCDE >= ABC STRINGS 35 Ποια είναι η διαφορά µεταξύ ενός αλφαριθµητικού C-string κι ενός string στην C++; char cs [8] = ABCDEFG ; // cs is a C-string string s = ABCDEFG ; // s is a C++-string Ένα C-string είναι ένας πίνακας από χαρακτήρες που χρησιµοποιεί έναν null χαρακτήρα \0 για να δείξει το τέλος του string. Ένα C++ string είναι ένα αντικείµενο του οποίου ο τύπος ορίζεται µέσα στον φάκελο string.h (<string>) και το οποίο έχει ένα µεγάλο ρεπερτόριο από µεθόδους, όπως η length() και η replace(): char cs [8] = ABCDEFG ; // cs is a C-string string s = ABCDEFG ; // s is a C++-string cout << s << has << s.length()<< characters.\n ; s.replace(4, 2, yz ); // changes s to ABCDyzG 36 Τι είναι ένα ρεύµα δεδοµένων; Ένα ρεύµα δεδοµένων είναι ένα αντικείµενο το οποίο διαχειρίζεται την εισαγωγή και την εξαγωγή δεδοµένων µεταξύ ενός προγράµµατος και της πηγής ή του προορισµού των δεδοµένων. Η C++ επιτρέπει <iostream> αντικείµενα για I/O (cin και cout), 5

6 <fstream> αντικείµενα για εξωτερικούς φακέλους (αρχεία) και <sstream> αντικείµενα για εσωτερικούς φακέλους (ρεύµατα συµβολοσειρών). ΚΛΑΣΕΙΣ & ΑΝΤΙΚΕΙΜΕΝΑ 37 Εξηγήστε την διαφορά µεταξύ ενός δοµητή κι ενός αποδοµητή. Ένας δοµητής είναι µία µέθοδος κλάσης η οποία εκτελείται αυτόµατα όταν ένα αντικείµενο της κλάσης δηµιουργείται (κατασκευάζεται). Ένας αποδοµητής είναι µία µέθοδος κλάσης η οποία εκτελείται αυτόµατα όταν ένα αντικείµενο της κλάσης πεθαίνει (καταστρέφεται). 38 Εξηγήστε την διαφορά µεταξύ του εξ ορισµού (default) δοµητή και των υπολοίπων δοµητών. Ο default δοµητής είναι ο µόνος δοµητής ο οποίος δεν έχει παραµέτρους (ή εκείνος του οποίου όλες οι παράµετροι, έχουν default τιµές). Όταν δεν ορίζεται από τον προγραµµατιστή, ορίζεται αυτόµατα από τον µεταγλωττιστή. 39 Πόσους δοµητές µπορεί να έχει µία κλάση; εν υπάρχει όριο στον αριθµό των δοµητών, που µπορεί να έχει µία κλάση. Αλλά αφού πολλαπλοί δοµητές είναι υπερφορτωµένες µέθοδοι, πρέπει όλες να ξεχωρίζουν από τις υπογραφές τους. 40 Πόσους αποδοµητές µπορεί να έχει µία κλάση; Μία κλάση µπορεί να έχει µόνο έναν αποδοµητή. 41 Πως και γιατί χρησιµοποιείται ο τελεστής εµβέλειας (::)ή θέας και διακριτότητας στους ορισµούς των κλάσεων; Ο τελεστής θέας και διακριτότητας :: χρησιµοποιείται γενικά «για να επιλύσει εξωτερικές αναφορές». Χρησιµοποιείται στην ορισµό µίας κλάσης όποτε ο ορισµός µίας µεθόδου γίνεται έξω από την κλάση. 42. Γράψτε έναν ορισµό κλάσης που δηµιουργεί την κλάση leverage µε ένα ιδιωτικό µέλος δεδοµένων το crowbar τύπου int, και µια δηµόσια συνάρτηση που η δήλωση της είναι η void pry(). Γράψτε µια εντολή που να ορίζει ένα αντικείµενο µε όνοµα lever1 για την κλάση leverage που περιγράψατε πριν. Γράψτε µια εντολή που να εκτελεί τη συνάρτηση pry() στο αντικείµενο lever1, το οποίο περιγράφτηκε πριν. class leverage private: int crowbar;public:void pry(); Leverage lever1; lever1.pry(); YΠΕΡΦΟΡΤΩΣΗ -this 6

7 43 Σε τι αναφέρεται πάντα το *this; Η κλειδολέξη this είναι ένας δείκτης στο αντικείµενο που του ανήκει η κλήση της µεθόδου µέλους στην οποία η έκφραση εµφανίζεται. 44 Γιατί πρέπει οι τελεστές ρευµάτων << και >> να υπερφορτώνονται σαν συναρτήσεις friend Οι τελεστές << και >> πρέπει να υπερφορτωθούν ως friend συναρτήσεις, επειδή οι αριστεροί τελεστές τους πρέπει να είναι αντικείµενα stream. Ενώ εάν ένας υπερφορτωµένος τελεστής είναι µια µέθοδος, θα έπρεπε ο αριστερός τελεστής του να είναι *this, ένας pointer, δηλαδή σε αντικείµενο της κλάσης στην οποία η µέθοδος ανήκει. 45 Γιατί οι αριθµητικοί τελεστές +, -, *, και / υπερφορτώνονται σαν συναρτήσεις friend; Οι αριθµητικοί τελεστές +, -, *, και / πρέπει να υπερφορτωθούν ως friend συναρτήσεις, έτσι ώστε οι αριστεροί τελεστές τους να µπορούν να δηλωθούν ως const. Αυτό επιτρέπει, παραδείγµατος χάριν, τη χρήση µιας έκφρασης όπως η 22 + x. Εάν ένας υπερφορτωµένος τελεστής είναι µέθοδος, τότε ο αριστερός τελεστής του είναι *this, ο οποίος βέβαια δεν µπορεί να είναι const. 46. Πόσα ορίσµατα απαιτούνται για τον ορισµό ενός µονοµελούς υπερφορτωµένου τελεστή; 47. Σωστό ή λάθος: Ο µεταγλωττιστής δεν θα έχει αντίρρηση αν υπερφορτώσετε τον τελεστή * για να εκτελέσετε διαίρεση. 48. Γράψτε µια εντολή που θα µπορεί να τη χρησιµοποιήσει µια συνάρτηση-µέλος για να επιστρέψει ολόκληρο το αντικείµενο του οποίου είναι µέλος, χωρίς να δηµιουργήσει κανένα προσωρινό αντικείµενο. return (*this) ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ 49 Ποια είναι η διαφορά µεταξύ προστατευµένων (protected) και ιδιωτικών (private) µελών; Ένα ιδιωτικό (private) µέλος είναι µη προσβάσιµο από οπουδήποτε έξω από τα καθορισµένα όρια της κλάσης και δεν κληρονοµείται. Ένα προστατευµένο (protected) µέλος είναι µη προσβάσιµο από οπουδήποτε έξω από τα καθορισµένα όρια της κλάσης, όπως ένα ιδιωτικό, αλλά κληρονοµείται, δηλαδή είναι προσβάσιµο από τα καθορισµένα όρια των παραγόµενων κλάσεων. 50 Πώς συµπεριφέρονται οι εξ ορισµού (default) δοµητές και αποδοµητές, σε µια ιεραρχία κληρονοµιών; Σε µια ιεραρχία κληρονοµιών, κάθε εξ ορισµού δοµητής (default constructor) 7

8 καλεί τον εξ ορισµού δοµητή (default constructor) του γονέα του, προτού να εκτελεσθεί, και κάθε αποδοµητής(destructor) καλεί τον αποδοµητή του γονέα του µετά την εκτέλεσή του. Το αποτέλεσµα είναι ότι όλοι οι default δοµητές γονέων εκτελούνται µε σειρά από πάνω προς τα κάτω, και όλοι οι αποδοµητές γονέων εκτελούνται µε σειρά από κάτω προς τα επάνω. 51 Τι είναι µια εικονική συνάρτηση µέλος (virtual member function) (εικονική µέθοδος); Μια εικονική µέθοδος είναι µια µέθοδος που µπορεί να αγνοηθεί σε µια παραγόµενη υποκλάση. 52 Τι είναι µια αµιγής εικονική συνάρτηση µέλος (pure virtual member function) (αµιγής εικονική µέθοδος); Μια αµιγής εικονική συνάρτηση µέλος, είναι µια εικονική µέθοδος που δεν µπορεί να κληθεί άµεσα, δεν έχει κώδικα, µόνο οι υπερκαλύπτουσες (overridden) µέθοδοι, στις παραγόµενες κλάσεις, µπορούν να κληθούν. Μια καθαρή εικονική µέθοδος αναγνωρίζεται από τον αρχικοποιητή (initializer) =0 στο τέλος της δήλωσής της. 53 Που είναι το λάθος στους ακόλουθους ορισµούς: class X protected: int a; ; class Y : public X public: void set(x x, int c) x. a = c; ; Το προστατευµένο µέλος δεδοµένων a µπορεί να προσπελαθεί µόνο από το τρέχον αντικείµενο της παραγόµενης κλάσης Υ (δηλαδή δεν χρειάζεται να περαστεί σαν παράµετρος µιας και το a είναι ορατό στην Y). Οποιοδήποτε άλλο αντικείµενο x της κλάσης Υ δεν µπορεί να έχει πρόσβαση στο a. 54. Γράψτε τη δήλωση µιας συνάρτησης δόµησης χωρίς ορίσµατα για την παράγωγη κλάση Bosworth, η οποία θα καλεί τη συνάρτηση δόµησης χωρίς ορίσµατα της βασικής κλάσης Alphonso. Bosworth():Alphonso() 55. Γράψτε την πρώτη γραµµή του προσδιοριστικού της κλάσης Tire που προκύπτει από την κλάση Wheel και την κλάση Rubber. class Tire :public Wheel,public Rubber 56. Θεωρήστε την κλάση Derv που παράγεται από τη βασική κλάση Base. Και οι δύο κλάσεις περιέχουν µια συνάρτηση-µέλος func( ) που δεν δέχεται ορίσµατα. 8

9 Γράψτε µια εντολή που θα περιέχεται σε µια συνάρτηση-µέλος της Derv και θα καλεί τη συνάρτηση func() της βασικής κλάσης. Base::func(); 57. Σωστό ή λάθος: Ένας δείκτης προς µια βασική κλάση µπορεί να δείχνει σε αντικείµενα µιας παράγωγης κλάσης. 58. Γράψτε τον ορισµό ενός πίνακα 10 δεικτών προς αντικείµενα της κλάσης dong, ο οποίος θα ονοµάζεται parr. dong* parr[10]; 59. Γράψτε τη δήλωση µιας συνάρτησης δόµησης αντιγράφου για µια κλάση που ονοµάζεται Bertha. Bertha(bertha& b); 60. Εξηγήστε τη διαφορά στη λειτουργία µεταξύ αυτών των δύο εντολών: person p1(p0); person p1=p0; Είναι ίδιες AΣΚΗΣΕΙΣ 61.Γράψτε ένα µικρό πρόγραµµα το οποίο σας δίνει 5 προσπάθειες για να µαντέψετε ένα κρυµµένο γράµµα π.χ. το γράµµα d. 62.Γράψτε µια συνάρτηση sumzaria, που επιστρέφει το άθροισµα από 2 ζάρια (ζαριά τυχαία). Για τις ζαριές µπορείτε να έχετε τυχαίες τιµές (από 1..6) µε την έκφραση (1+rand()%6). Ενηµερώστε για τη ζαριά, τι φέρατε δηλαδή. Κατόπιν καλέστε την sumzaria από το πρόγραµµα main(), και ελένξτε το αποτέλεσµα της ζαριάς για να τυπώσετε κάποια µηνύµατα όπως αν το άθροισµα είναι 7,11 κερδίζεις αν το άθροισµα είναι 2,3,12 χάνεις 63.Ορίστε µια κλάση bar, που αντιπροσωπεύει µια µπάρα γραφικών και χρησιµοποιεί την έτοιµη συνάρτηση void draw_rectangle(int left, int top, int right, int bottom) για να την σχεδιάσει. 64.Γράψτε ένα πρόγραµµα, στο οποίο ο χρήστης πληκτρολογεί 10 ακεραίους οι οποίοι αποθηκεύονται σε ένα πίνακα int A[10]. Κατόπιν γράψτε µια συνάρτηση int MaxInt(int* ptra, int n), η οποία θα διατρέχει ένα πίνακα αναζητώντας τον µεγαλύτερο αριθµό. Ως ορίσµατα έχει την διεύθυνση του πίνακα και το πλήθος των στοιχείων που υπάρχουν σε αυτόν, και θα επιστρέφει τον αριθµοδείκτη του µεγαλύτερου στοιχείου. Καλέστε την από το πρόγραµµά σας για να εµφανίσετε το µεγαλύτερο στοιχείο του πίνακα Α. 65. ηµιουργείστε µια βασική κλάση Base, µε ένα protected χαρακτηριστικό τον ακέραιο secret. Κατόπιν δηµιουργείστε δυο κλάσεις που παράγονται από την Base µια µε δηµόσια πρόσβαση PubDerived, και µια µε ιδιωτική PriDerived. Τυπώστε το secret από αντικείµενα και των 3 κλάσεων. 66. ηµιουργείστε µια δική σας κλάση πίνακα ακεραίων µε χαρακτηριστικά int*ptr :δείκτης προς τα περιεχόµενα του πίνακα και int size : µέγεθος του πίνακα, µε συνάρτηση δόµησης ενός ορίσµατος και µε υπερφορτωµένο τελεστή []. Κατόπιν 9

10 προστέστε και έναν υπερφορτωµένο τελεστή απόδοσης τιµής και υπερφοτωµένο δοµητή αντιγράφου. 67. Γράψτε ένα πρότυπο για µια συνάρτηση η οποία θα επιστρέφει το όρισµα της πολλαπλασιασµένο επί Γράψτε τις προδιαγραφές µιας κλάσης χειρισµού εξαιρέσεων X η οποία θα αποθηκεύει έναν αριθµό σφάλµατος int xnum και το όνοµα του σφάλµατος char xname[max]. Συµπεριλάβετε µια συνάρτηση δόµησης. 69. Τι τυπώνουν τα παρακάτω προγράµµατα //1. # include <iostream> void fp(char v[]); int main () char k[]="hello!!!!"; fp(k); system("pause"); return 0; void fp(char v[]) for (char* p = v; *p!=0; p++) std::cout << *p; //2. # include <iostream> void first( int& n); int main () int k=10; first(k); std::cout<<k; system("pause"); return 0; void second(int& n); void first( int& n) int temp=n*3; 10

11 second (n); temp+=n; void second (int& n) n+=1; //3. #include <iostream> using std::cout; using std::endl; class Count public: int x; void print() cout << x << endl; ; int main() Count counter; Count *counterptr = &counter; Count& counterref = counter; counter.x = 1; counter.print(); counterref.x = 2; counterref.print(); counterptr->x = 3; counterptr->print(); counter.print(); system("pause"); return 0; //4. #include <stdio.h> # include <iostream> class Class1 private: int a; friend void foo (Class1& a, int f) f+=2;a.a=f; public: Class1():a(2); Class1(int f) a=(int)f;; void out() std::cout<<a<<"\n"; ; int main () 11

12 Class1 C; C.out(); foo(c,7); C.out(); system("pause"); return 0; //5. #include <stdio.h> # include <iostream> class Class1 private: int a; public: Class1 ():a(3); Class1(int f)a=(int)f;; void operator ()(int x, int y) if (x>y) a=x-y; else a=y-x; void operator ()(int x, int y, int z) if (x>y) a=(x-y)*z; else a=(y-x)*z; void print () std::cout<<a<<"\n"; ; int main () Class1 C; C.print(); C(2,3); C.print(); C(2,3,5); C.print(); C=Class1(7); C.print(); system("pause"); return 0; 12

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

Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης Γ7.1 Επανάληψη ύλης Β Λυκείου Γ Λυκείου Κατεύθυνσης Απλά προγράμματα Ένα πρόγραμμα στη C++ που υπολογίζει το άθροισμα 2 ακέραιων αριθμών. // simple program #include using namespace std; int main(){

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

Κλάσεις και αντικείμενα #include <iostream.h<

Κλάσεις και αντικείμενα #include <iostream.h< Κλάσεις και αντικείμενα #include class Person private: char name[30]; int age; public: void readdata() cout > name; cout > age; void

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

12. ΑΛΦΑΡΙΘΜΗΤΙΚΑ. υο είδη αλφαριθµητικών Τα αλφαριθµητικά της C πίνακες τύπου char Ta αντικείµενα της κλάσης string

12. ΑΛΦΑΡΙΘΜΗΤΙΚΑ. υο είδη αλφαριθµητικών Τα αλφαριθµητικά της C πίνακες τύπου char Ta αντικείµενα της κλάσης string 12. ΑΛΦΑΡΙΘΜΗΤΙΚΑ υο είδη αλφαριθµητικών Τα αλφαριθµητικά της C πίνακες τύπου char Ta αντικείµενα της κλάσης string Aλφαριθµητικά της C int main() const int max=80; char str[max); //κάθε char δεσµεύει

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

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 9: Συναρτήσεις Ορισμός συναρτήσεων () { /* δήλωση μεταβλητών */ /* εντολές ελέγχου/επεξεργασίας */ o Μια συνάρτηση ορίζεται δίνοντας

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

Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Κλάσεις και Αντικείμενα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Κλάσεις Η γενική μορφή μιας κλάσης είναι η εξής: class class-name { private data and

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

Στοιχειώδης προγραμματισμός σε C++

Στοιχειώδης προγραμματισμός σε C++ Στοιχειώδης προγραμματισμός σε C++ Σύντομο Ιστορικό. Το πρόγραμμα Hello World. Ο τελεστής εξόδου. Μεταβλητές και δηλώσεις τους. Αντικείμενα, μεταβλητές, σταθερές. Ο τελεστής εισόδου. Θεμελιώδεις τύποι.

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

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δείκτες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Τι είναι ο δείκτης Ένας δείκτης είναι μια μεταβλητή που περιέχει μια διεύθυνση μνήμης. Θυμηθείτε πως

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

Η εντολή if-else. Η απλή μορφή της εντολής if είναι η ακόλουθη: if (συνθήκη) { Η γενική μορφή της εντολής ifelse. εντολή_1; εντολή_2;..

Η εντολή if-else. Η απλή μορφή της εντολής if είναι η ακόλουθη: if (συνθήκη) { Η γενική μορφή της εντολής ifelse. εντολή_1; εντολή_2;.. Επιλογή - Επανάληψη Η εντολή if-else Ο τελεστής παράστασης συνθήκης H εντολή switch Η εντολές for και while Η εντολή do-while Η εντολές break - continue - goto Μαθηματικές συναρτήσεις Λέξεις κλειδιά στη

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

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

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

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

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

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

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

Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT

Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT = Αντικειμενοστραφείς Γλώσσες Προγραμματισμού Ιωάννης Παπαδόπουλος Τμήμα Φυσικής, Πανεπιστήμιο Ιωαννίνων Δεκέμβριος 2018 1/18 = 2/18 = 1 αντικειμένων Μέθοδοι αντιγράφου (copy constructor) Κατασκευή μέσω

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

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 Κατασκευαστές (Constructors) Ειδικός τύπος μεθόδων, οι οποίες: - είναι public και έχουν το ίδιο όνομα με αυτό της κλάσης - χρησιμοποιούνται για να αρχικοποιήσουν κάποιες

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

Εντολές εισόδου - εξόδου. Εισαγωγή στη C++

Εντολές εισόδου - εξόδου. Εισαγωγή στη C++ Εντολές εισόδου - εξόδου Εισαγωγή στη C++ Το πρώτο πρόγραμμα //my first program #include using namespace std; int main(){ cout

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

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι είναι ; Συναρτήσεις. Παράδειγμα #1. double convert ( double cm ) { double inch;

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι είναι ; Συναρτήσεις. Παράδειγμα #1. double convert ( double cm ) { double inch; ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Τι είναι ; Συναρτήσεις Αυτόνομα τμήματα κώδικα (υποπρογράμματα) που πραγματοποιούν μια καθορισμένη εργασία. Χρήσιμες για περιπτώσεις που ο ίδιος υπολογισμός επαναλαμβάνεται πολλές φορές

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

Αναφορές, είκτες και Αλφαριθμητικά

Αναφορές, είκτες και Αλφαριθμητικά Αναφορές, είκτες και Αλφαριθμητικά Ο τελεστής αναφοροποίησης Αναφορές είκτες Πίνακες και δείκτες Ο τελεστής new και delete υναμικοί πίνακες είκτες προς συναρτήσεις Αλφαριθμητικά της C Πίνακες Αλφαριθμητικών

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

Κλάσεις και Αντικείµενα

Κλάσεις και Αντικείµενα Κλάσεις και Αντικείµενα Γρηγόρης Τσουµάκας Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Κλάσεις και Αντικείµενα 2 Τα αντικείµενα σε µια αντικειµενοστρεφή γλώσσα προγραµµατισµού, µοντελοποιούν

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

Υπερφόρτωση τελεστών

Υπερφόρτωση τελεστών Υπερφόρτωση τελεστών 19 Νοεμβρίου 2012 1 Γενικά Στα προηγούμενα είδαμε ότι ορίζοντας μία κλάση, ορίζουμε ένα νέο τύπο τον οποίο μπορούμε να χρησιμοποιήσουμε για να δηλώσουμε αντικείμενα αυτής της νέας

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

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

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

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

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

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

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

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Εισαγωγή στον Προγραµµατισµό Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Hello World /* Αρχείο hello.c * Εµφανίζει στην οθόνη το * µήνυµα hello world */ #include

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

Οντοκεντρικός Προγραμματισμός

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 5: H ΓΛΩΣΣΑ C++ Δομές Ελέγχου ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής Δομές Ελέγχου Εισαγωγή Πριν

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

Κλήση Συναρτήσεων ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ. Γεώργιος Παπαϊωάννου ( )

Κλήση Συναρτήσεων ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ. Γεώργιος Παπαϊωάννου ( ) ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ Γεώργιος Παπαϊωάννου (2013-16) gepap@aueb.gr Περιγραφή: Μορφές μεταβίβασης ορισμάτων σε συναρτήσεις (και μεθόδους) και οι επιπτώσεις τους Επιστροφή τιμών από κλήση συναρτήσεων Υπερφόρτωση

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

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

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

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

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

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

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

Προγραµµατιστικές Τεχνικές

Προγραµµατιστικές Τεχνικές Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Προγραµµατιστικές Τεχνικές Βασίλειος Βεσκούκης ρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Ρωµύλος Κορακίτης

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

Εισαγωγή σε αντικειμενοστραφή concepts. Και λίγη C#

Εισαγωγή σε αντικειμενοστραφή concepts. Και λίγη C# Εισαγωγή σε αντικειμενοστραφή concepts Και λίγη C# Κλάσεις Κλάση: τύπος δεδομένων που αποτελεί συλλογή πεδίων, ορισμών συναρτήσεων/μεθόδων και ορισμών άλλων τύπων δεδομένων. Αντίστοιχο σκεπτικό με struct

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

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

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

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

Κεφάλαιο 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 (); Πρότυπο ( ήλωση) Συνάρτησης (

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

Αντικειµενοστρεφής Προγραµµατισµός

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

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

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΚΑΙ ΠΙΝΑΚΕΣ

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΚΑΙ ΠΙΝΑΚΕΣ ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΚΑΙ ΠΙΝΑΚΕΣ Γεώργιος Παπαϊωάννου (2013-16) gepap@aueb.gr Περιγραφή: Βασικοί Τύποι Πίνακες (μέρος 1) Συμβολοσειρές Ο Προεπεξεργαστής Τελευταία ενημέρωση: Σεπτέμβριος 2016 Εισαγωγή - 2 short:

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

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

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράµµατα «γράφονται» χρησιµοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαµβάνει

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

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

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Μεταβλητές,

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

ΚΑΤΑΣΚΕΥΑΣΤΕΣ ΑΝΤΙΓΡΑΦΗΣ

ΚΑΤΑΣΚΕΥΑΣΤΕΣ ΑΝΤΙΓΡΑΦΗΣ ΚΑΤΑΣΚΕΥΑΣΤΕΣ ΑΝΤΙΓΡΑΦΗΣ Γεώργιος Παπαϊωάννου (2013-16) gepap@aueb.gr Περιγραφή: Deep/Shallow copies H αναγκαιότητα των κατασκευαστών αντιγραφής Ορισμός και χρήση κατασκευαστών αντιγραφής Τελευταία ενημέρωση:

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

Α. 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) ΟΝΟΜΑΤΕΠΩΝΥΜΟ:................................................................................ Α.Μ.:...............................................

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

Εισαγωγή στην πληροφορική

Εισαγωγή στην πληροφορική Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Εισαγωγή στην πληροφορική Βασίλειος Βεσκούκης ρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Ρωµύλος Κορακίτης

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

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008 Παράδειγμα: Μηχανή για Εισιτήρια 2 Ορισμός Κλάσεων Σύνταξη κλάσης: πεδία, κατασκευαστές, μέθοδοι Ένας αυτόματος εκδότης εισιτηρίων είναι μια μηχανή που δέχεται χρήματα και εκδίδει ένα εισιτήριο. Εκδίδει

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

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

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

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

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

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

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

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

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

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

Προγραμματισμός Ι. Εισαγωγή στην C++ Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Εισαγωγή στην C++ Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Εισαγωγή στην C++ Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Η γλώσσα C++ Σχεδιάστηκε το 1979 από τον Bjarne Stroustrup στα Bell Laboratories Βασίζεται

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

Εισαγωγή στη γλώσσα προγραμματισμού C++

Εισαγωγή στη γλώσσα προγραμματισμού C++ Εισαγωγή στη γλώσσα προγραμματισμού C++ Περιβάλλον Εργασίας 2 Περιβάλλον Εργασίας 1. Χρήση απλού κειμενογράφου και Μεταγλωττιστή 2. Ολοκληρωμένα Περιβάλλοντα Εργασίας (Integrated Development Environments)

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

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Δομές Επανάληψης. Εισαγωγή στη C++

Δομές Επανάληψης. Εισαγωγή στη C++ Δομές Επανάληψης Εισαγωγή στη C++ Επαναληπτικές δηλώσεις Οι βρόγχοι (loops) αναγκάζουν ένα τμήμα κώδικα να επαναλαμβάνεται. Η επανάληψη συνεχίζεται για όσο μία λογική συνθήκη είναι αληθής. Όταν η συνθήκη

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

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

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

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

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

Εισαγωγή στον Προγραμματισμό με C++ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό με C++ Ενότητα # 10: Constructors και Destructors Κωνσταντίνος Κουκουλέτσος Τμήμα Αυτοματισμού Άδειες

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

2 η Διάλεξη C++ Δρ. Χρήστος Δρόσος ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ

2 η Διάλεξη C++ Δρ. Χρήστος Δρόσος ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ 2 η Διάλεξη C++ Δρ. Χρήστος Δρόσος ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ Τι μάθαμε μέχρι τώρα Κάθε πρόγραμμα της c++ περιέχει υποχρεωτικά μια συνάρτηση main() η οποία είναι εκείνη που εκτελείται πρώτη. Κάθε

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

Πληροφορική 2. Γλώσσες Προγραμματισμού

Πληροφορική 2. Γλώσσες Προγραμματισμού Πληροφορική 2 Γλώσσες Προγραμματισμού 1 2 Γλώσσες προγραμματσιμού Επιτρέπουν την κωδικοποίηση των αλγορίθμων Η εκτέλεση ενός προγράμματος θα πρέπει να δίνει τα ίδια αποτελέσματα με την νοητική εκτέλεση

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

Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά

Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά Βασικά χαρακτηριστικά αναπτύχθηκε ως επέκταση της C το 1979 υπερσύνολο της C γλώσσα γενικού σκοπού, γρήγορη, Αντικειμενοστραφής προγραμματισμός (Object

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

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

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

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

Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος

Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ IΙ Λύβας Χρήστος chrislibas@ssl-unipi.gr Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος >_ ΣΥΝΑΡΤΗΣΕΙΣ ΣΤΗ C (1/3) +- Στη C χρησιμοποιούμε συχνα τις συναρτήσεις (functions),

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

Προγραμματισμός Υπολογιστών με C++

Προγραμματισμός Υπολογιστών με C++ Προγραμματισμός Υπολογιστών με C++ ( 2012-13 ) 2η διάλεξη Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Τι θα ακούσετε σήμερα Βασικοί αριθμητικοί τύποι, μετατροπές τύπων και σταθερές. Πίνακες. Πίνακες

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

Τελεστές ΤΕΛΕΣΤΕΣ. Γεώργιος Παπαϊωάννου ( )

Τελεστές ΤΕΛΕΣΤΕΣ. Γεώργιος Παπαϊωάννου ( ) ΤΕΛΕΣΤΕΣ Γεώργιος Παπαϊωάννου (2013-14) gepap@aueb.gr Περιγραφή: Τι είναι οι τελεστές Χρήση τελεστών Υπερφόρτωση τελεστών Chain-linking Τελεστών Τελευταία ενημέρωση: Ιούνιος 2013 Εισαγωγή - 2 Τελεστής

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

Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT

Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT Αντικειμενοστραφείς Γλώσσες Προγραμματισμού Ιωάννης Παπαδόπουλος Τμήμα Φυσικής, Πανεπιστήμιο Ιωαννίνων Οκτώβριος 2018 1/28 1 (implicit) μετατροπές 2 (Functions) 3 (Pointers) 4 (Arrays) 2/28 (implicit)

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

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

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

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

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β.1 Τύποι Δεδομένων Όλες οι γλώσσες προγραμματισμού (πρέπει να) υποστηρίζουν πέντε (5) πρωταρχικούς τύπους δεδομένων: char (character) int (integer)

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

3 Αλληλεπίδραση Αντικειμένων

3 Αλληλεπίδραση Αντικειμένων Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή

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

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2)

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Οργάνωση Προγράµµατος Header Files Μετάφραση και σύνδεση αρχείων προγράµµατος ΕΠΛ 132 Αρχές Προγραµµατισµού

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

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

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

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

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

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

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

Προγραµµατιστικές Τεχνικές

Προγραµµατιστικές Τεχνικές Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Προγραµµατιστικές Τεχνικές Βασίλειος Βεσκούκης ρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Ρωµύλος Κορακίτης

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

ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡ/ΣΜΟΣ C++

ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡ/ΣΜΟΣ C++ Υπερφόρτωση, keywords CONST, STATIC, FRIEND ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡ/ΣΜΟΣ C++ Μ. Ρήγκου (rigou@ceid.upatras.gr) Τι θα συζητήσουμε σήμερα Υπερφόρτωση Συναρτήσεων Τελεστών CONST αντικείμενα, μεταβλητές και συναρτήσεις

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

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12) Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II (Διάλεξη 12) 12-1 Ανασκόπηση Δομής Προγράμματος με Συναρτήσεις 1 void PrintMessage (); Πρότυπο (Δήλωση) Συνάρτησης (Δηλώνουν τι επιπλέον συναρτήσεις θα χρησιμοποιήσουμε

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Οι δείκτες στη C Η έννοια του δείκτη Την έννοια του δείκτη τη συναντήσαμε σε προηγούμενα μαθήματα. Η συνάρτηση scanf(), καταχωρίζει τιμές σε μεταβλητές χρησιμοποιώντας τον τελεστή

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

ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β

ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β 1. (10 μον.) Απαντήστε σωστό ή λάθος στις παρακάτω ερωτήσεις (αʹ) _2togo είναι έγκυρο όνομα μεταβλητής (βʹ) Αν p είναι δείκτης στο πρώτο στοιχείο

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

Συναρτήσεις και διαδικασίες

Συναρτήσεις και διαδικασίες Συναρτήσεις και διαδικασίες Χρήση συναρτήσεων βιβλιοθήκης Εντολή κλήσης της συνάρτησης printf: printf( Hello, world\n ); Μια συνάρτηση είναι ένα σύνολο εντολών που έχουν ομαδοποιηθεί και τους έχει αποδοθεί

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Αναφορές Μαθήματα από το lab Υπενθύμιση: Η άσκηση ζητούσε να υλοποιήσετε μία κλάση vector που να διαχειρίζεται διανύσματα οποιουδήποτε

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

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής Στο εργαστήριο αυτό θα δούμε πώς ορίζονται και πώς χρησιμοποιούνται οι συμβολοσειρές στην C. Επίσης, θα μελετήσουμε κάποιες από τις συναρτήσεις

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

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

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

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

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

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα. Ερωτήσεις προόδου C Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα. #include // δίνει οδηγία στον compiler να // συμπεριλάβει την βιβλιοθήκη stdio int

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

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

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

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

Κεφάλαιο Πίνακες Ι. (Διάλεξη 16)

Κεφάλαιο Πίνακες Ι. (Διάλεξη 16) Κεφάλαιο 8.1-8.3 Πίνακες Ι (Διάλεξη 16) 15-1 Πίνακες (Arrays) Σε αυτή την ενότητα θα μιλήσουμε για την δομή δεδομένων Πίνακας: 1. Εισαγωγή & Σύνταξη 2. Δήλωση Πίνακα 3. Αρχικοποίηση Πίνακα 4. Πρόσβαση

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

2.1 Αντικειµενοστρεφής προγραµµατισµός

2.1 Αντικειµενοστρεφής προγραµµατισµός 2.1 Αντικειµενοστρεφής προγραµµατισµός Στον αντικειµενοστρεφή προγραµµατισµό (object oriented programming, OOP) ένα πρόγραµµα υπολογιστή είναι ένα σύνολο αλληλεπιδρώντων αντικειµένων. Μπορεί να ειπωθεί

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

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

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

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

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

Μεθόδων Επίλυσης Προβλημάτων ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 9 Συναρτήσεις Μέρος II Θέματα ιάλεξης Μη- ομημένος

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

Η βασική συνάρτηση προγράμματος main()

Η βασική συνάρτηση προγράμματος main() Η βασική συνάρτηση προγράμματος main() HEADER FILES main(){ ΔΗΛΩΣΕΙΣ ΜΕΤΑΒΛΗΤΩΝ ΕΝΤΟΛΕΣ (σειριακές, επιλογής ή επανάληψης) ΕΠΙΣΤΡΕΦΟΜΕΝΟΣ ΤΥΠΟΣ (return 0;) Συναρτήσεις Η συνάρτηση είναι ένα υποπρόγραμμα

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

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

Κεφάλαιο Πίνακες Ι. ( ιάλεξη 15) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 8.1-8.3 Πίνακες Ι ( ιάλεξη 15) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 15-1 Πίνακες (Arrays) Σε αυτή την ενότητα θα µιλήσουµε για την δοµή δεδοµένων Πίνακας: 1. Εισαγωγή & Σύνταξη 2. ήλωση Πίνακα 3. Αρχικοποίηση

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

Aσκήσεις Πράξης 6 - EΠΑΝΑΛΗΠΤΙΚΟ A ΜΕΘΟ ΟΛΟΓΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ι ΕΡΓΑΣΤΗΡΙΟ. 5. Τι τυπώνει το επόµενο πρόγραµµα:

Aσκήσεις Πράξης 6 - EΠΑΝΑΛΗΠΤΙΚΟ A ΜΕΘΟ ΟΛΟΓΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ι ΕΡΓΑΣΤΗΡΙΟ. 5. Τι τυπώνει το επόµενο πρόγραµµα: 3401 - ΜΕΘΟ ΟΛΟΓΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ι ΕΡΓΑΣΤΗΡΙΟ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2009 2010 A12. Aσκήσεις Πράξης 6 - EΠΑΝΑΛΗΠΤΙΚΟ ΤΥΠΟΙ Ε ΟΜΕΝΩΝ... 1. Τι τυπώνει το επόµενο πρόγραµµα: int a,b,aa,bb,x,y; x=y=100; a=++x;

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

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS. Εισαγωγή στη JAVA Σύντομο Ιστορικό Η Java και το διαδίκτυο Το πρώτο απλό πρόγραμμα σε JAVA Μεταβλητές και σταθερές Παραστάσεις και εντολές Οι βασικοί τύποι δεδομένων στη Java Οι βασικοί Τελεστές στη Java

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

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

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

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

Β7.1.4 Δομές Επανάληψης. Β Λυκείου Κατεύθυνσης

Β7.1.4 Δομές Επανάληψης. Β Λυκείου Κατεύθυνσης Β7.1.4 Δομές Επανάληψης Β Λυκείου Κατεύθυνσης Εισαγωγή Δομές επανάληψης ή βρόχοι (loops) ονομάζονται μέρη του κώδικα που εκτελούνται περισσότερες από μία φορές, ανάλογα με τη συνθήκη που έχουμε δηλώσει.

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

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

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

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

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

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

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

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

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

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

3. Εκφράσεις και έλεγχος ροής

3. Εκφράσεις και έλεγχος ροής 3. Εκφράσεις και έλεγχος ροής Τελειώνοντας αυτό το κεφάλαιο θα μπορείτε: Να διακρίνετε ανάμεσα σε μεταβλητές μέλη και αυτόματες μεταβλητές Να περιγράφετε την αρχικοποίηση των μεταβλητών μελών Να αναγνωρίζετε

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

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

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

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

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

Υπολογισμός - Εντολές Επανάληψης Προγραμματισμός Η/Υ Ι Υπολογισμός - Εντολές Επανάληψης ΕΛΕΥΘΕΡΙΟΣ ΚΟΣΜΑΣ ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ 2018-2019 ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε. 1 Περίληψη Σήμερα... θα συνεχίσουμε τη συζήτησή μας για τα βασικά στοιχεία

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

Γ7.2 Συμβολοσειρές (Strings) Γ Λυκείου Κατεύθυνσης

Γ7.2 Συμβολοσειρές (Strings) Γ Λυκείου Κατεύθυνσης Γ7.2 Συμβολοσειρές (Strings) Γ Λυκείου Κατεύθυνσης Εισαγωγή Στη C++ υπάρχει η δυνατότητα να δηλώσουμε μία συμβολοσειρά ως αντικείμενο, χρησιμοποιώντας τη βιβλιοθήκη . Επειδή οι συμβολοσειρές είναι

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

Εισαγωγή στον Προγραµµατισµό. Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ

Εισαγωγή στον Προγραµµατισµό. Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Εισαγωγή στον Προγραµµατισµό Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Συναρτήσεις 19.11.16 Β. Ντουφεξή 2 Προβλήματα: Οσο μεγαλώνουν τα προγράμματα, γίνονται πιο πολύπλοκα.

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

Τελικό τεστ - απαντήσεις

Τελικό τεστ - απαντήσεις Τελικό τεστ - απαντήσεις Θεωρήστε το παρακάτω πρόγραμμα και απαντήστε στις ερωτήσεις που ακολουθούν. 1 class parent { 2 public: 3 int a; int b; 4 parent(int _a, int _b) {} 5 6 void f1(int x) { cout

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

Δείκτες (Pointers) Ένας δείκτης είναι μια μεταβλητή με τιμή μια διεύθυνση μνήμης. 9.8

Δείκτες (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 Δήλωση Δήλωση Τύπος

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

Ενδεικτική περιγραφή μαθήματος

Ενδεικτική περιγραφή μαθήματος ΜΑΘΗΜΑ: ΔΙΔΑΣΚΩΝ: ΤΜΗΜΑ: Προγραμματισμός Η/Υ Συνδουκάς Δημήτριος Διοίκησης Επιχειρήσεων (Γρεβενά) Ενδεικτική περιγραφή μαθήματος 1. Εισαγωγή: Εισαγωγή στον προγραμματισμό, γλώσσες προγραμματισμού, μεταγλωτιστές.

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

18. ΡΕΥΜΑΤΑ(STREAMS) ΚΑΙ ΑΡΧΕΙΑ (FILES)

18. ΡΕΥΜΑΤΑ(STREAMS) ΚΑΙ ΑΡΧΕΙΑ (FILES) 18. ΡΕΥΜΑΤΑ(STREAMS) ΚΑΙ ΑΡΧΕΙΑ (FILES) ΡΕΥΜΑ (stream) : ροή δεδοµένων Ιεραρχία κλάσεων ρευµάτων Βασική κλάση της ιεραρχίας: ios Έχει πολλές κοινές συναρτήσεις π.χ. showpoint, χωριζόµενες σε 3 ειδών λειτουργίες

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

Επανάληψη για τις Τελικές εξετάσεις

Επανάληψη για τις Τελικές εξετάσεις Επανάληψη για τις Τελικές εξετάσεις ( ιάλεξη 21) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Εισαγωγή Το µάθηµα EPL032 έχει ως βασικό στόχο την επίλυση προβληµάτων πληροφορικής µε την χρήση της γλώσσας προγραµµατισµού

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

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

Μεθόδων Επίλυσης Προβλημάτων ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 11 Πίνακες Ι Πίνακες (Arrays) Σε αυτή την ενότητα

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

Εισαγωγή στην γλώσσα προγραμματισμού C

Εισαγωγή στην γλώσσα προγραμματισμού C Εισαγωγή στην γλώσσα προγραμματισμού C Χαρακτηριστικά της C Ιδιαίτερα δημοφιλής Έχει χρησιμοποιηθεί για τον προγραμματισμό ευρέος φάσματος συστημάτων και εφαρμογών Γλώσσα μετρίου επιπέδου Φιλοσοφία: Ο

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