Εκφώνηση Να δημιουργήσετε ένα πρόγραμμα το οποίο θα δέχεται δύο ακεραίους αριθμούς έστω α και β και θα υπολογίζει το α υψωμένο στην δύναμη του β (α β

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

Download "Εκφώνηση Να δημιουργήσετε ένα πρόγραμμα το οποίο θα δέχεται δύο ακεραίους αριθμούς έστω α και β και θα υπολογίζει το α υψωμένο στην δύναμη του β (α β"

Transcript

1 Εκφώνηση Να δημιουργήσετε ένα πρόγραμμα το οποίο θα δέχεται δύο ακεραίους αριθμούς έστω α και β και θα υπολογίζει το α υψωμένο στην δύναμη του β (α β ). Για παράδειγμα αν οι αριθμοί είναι το 2 και 4 το αποτέλεσμα είναι 16 (2 4 ) και υπολογίζεται 2*2*2*2. Δεν θα υπολογίζεται αρνητικές δυνάμεις.

2

3 Ε PI Abs Acos Asin Atan Atan2 BigMul Ceiling Cos Cosh DivRem Exp Floor Πίνακας 3. Η κλάση Math Η βάση των φυσικών λογαρίθμων Ο αριθμός π Επιστρέφει την απόλυτη τιμή του αριθμού Επιστρέφει τo τόξο συνημίτονου ενός αριθμού. Επιστρέφει τo τόξο ημίτονου ενός αριθμού. Επιστρέφει τo τόξο εφαπτομένης ενός αριθμού. Επιστρέφει τo τόξο εφαπτομένης του λόγου δύο αριθμών Υπολογίζει το γινόμενο δύο ακεραίων αριθμών. Επιστρέφει το μικρότερο ακέραιο αριθμό που είναι μεγαλύτερος ή ίσος στο συγκεκριμένο αριθμό. Επιστρέφει τo συνημίτονο ενός αριθμού. Επιστρέφει τo υπερβολικό συνημίτονο ενός αριθμού. Υπολογίζει το πηλίκο δύο αριθμών και επιστρέφει και το υπόλοιπο. Επιστρέφει το e υψωμένο στο συγκεκριμένο αριθμό Επιστρέφει το μεγαλύτερο ακέραιο αριθμό που είναι μικρότερος ή ίσος στο συγκεκριμένο αριθμό.

4 IEEERemainder Υπολογίζει το υπόλοιπο από την διαίρεση δύο αριθμών. Log Επιστρέφει το λογάριθμο ενός αριθμού. Log10 Επιστρέφει το λογάριθμο με βάση το 10 ενός αριθμού. Max Επιστρέφει το μεγαλύτερο μεταξύ δύο αριθμών. Min Επιστρέφει το μικρότερο μεταξύ δύο αριθμών. Pow Υπολογίζει την ύψωση ενός αριθμού σε ένα εκθέτη. Round Στρογγυλοποιεί την τιμή ενός αριθμού Sign Επιστρέφει -1, 0, 1 για να δείξει το πρόσημο ενός αριθμού Sin Επιστρέφει τo ημίτονο ενός αριθμού. Sinh Επιστρέφει τo υπερβολικό ημίτονο ενός αριθμού. Sqrt Επιστρέφει την τετραγωνική ρίζα ενός αριθμού. Tan Επιστρέφει την εφαπτομένη ενός αριθμού. Tanh Επιστρέφει την υπερβολική εφαπτομένη ενός αριθμού. Truncate Επιστρέφει το ακέραιο μέρος ενός αριθμού

5

6 Πίνακας 2. Ο κώδικας της εφαρμογής 1 private void btncalculate_click(object sender, EventArgs e) 2 { 3 int basi, ekthetis; 4 double apotelesma; 5 6 basi = int.parse(txtbasi.text); 7 ekthetis = int.parse(txtekthetis.text); 8 9 apotelesma = Math.Pow(basi, ekthetis); 10 txtapotelesma.text = apotelesma.tostring(); 11 }

7 Συναρτήσεις Η Pow θα πρέπει να πάρει δύο double αριθμούς (x και y) και θα επιστρέψει ένααποτέλεσμα τύπου double ηπρώτη λέξη πριν το όνομα της συνάρτησης. Θα μπορούσατε σε πολύ αφηρημένο επίπεδο να θεωρήσετε ότι η Pow είναι ένας μηχανισμός, όπως παρακάτω : Pow x y Αποτέλεσμα

8 Τα σημαντικά στοιχεία ενός Μηχανισμού Το όνομα του μηχανισμού γιατί μέσω αυτού θα χρησιμοποιήσω την λειτουργικότητα του. Είναι χρήσιμο τα ονόματα να δείχνουν την λειτουργικότητα του μηχανισμού, δηλαδή αν ο μηχανισμός υπολόγιζε το εμβαδόν ενός τριγώνου να είχε σαν όνομα, TriangleArea ή EmbadonTrigonou. Το πλήθος των παραμέτρων που χρειάζονται για να λειτουργήσει ομηχανισμός. Οι παράμετροι είναι οι είσοδοι στο μηχανισμό και αναφέρονται και σαν ορίσματα (arguments). Στην προκειμένη περίπτωση είναι δύο γιατί αυτό απαιτεί το πρόβλημα, μια βάση και έναν εκθέτη. Αν ένας άλλος μηχανισμός υπολόγιζε τον μικρότερο από 4 αριθμούς θα έπρεπε να είχε 4 εισόδους μια για κάθε έναν από τους τέσσερις αριθμούς.

9 Το είδος των παραμέτρων δηλαδή τι είναι η κάθε μια είσοδος, ακέραιος αριθμός, πραγματικός αριθμός, κείμενο κ.λπ. Αυτό καθορίζεται από το είδος του προβλήματος. Το είδος του αποτελέσματος δηλαδή τι είναι το τελικό αποτέλεσμα του μηχανισμού, ακέραιος αριθμός, πραγματικός αριθμός, κείμενο κ.λπ. Επίσης όπως προηγουμένως έτσι και αυτό καθορίζεται από το είδος του προβλήματος. Αν για παράδειγμα ένας μηχανισμός υπολογίζει το άθροισμα πραγματικών αριθμών τότε και το τελικό αποτέλεσμα θα είναι πραγματικός αριθμός.

10 Γιατί φτιάχνουμε συναρτήσεις Όλοι οι προγραμματιστές δημιουργούν τις δικές τους συναρτήσεις για τους εξής λόγους : Καλύτερη διαχείριση - Μια λειτουργία που αποτελεί την επίλυση ενός μέρους του προβλήματος, χρειάζεται σε πάρα πολλά διαφορετικά σημεία του προγράμματος. Για παράδειγμα, σε προηγούμενο πρόγραμμα με το πάτημα ενός κουμπιού υπολογίσατε το μικρότερο από τρεις αριθμούς. Εάν οσυγκεκριμένος υπολογισμός ήταν απαραίτητος και σε άλλο σημείο του προγράμματος θα έπρεπε να επαναλάβετε τις εντολές. Αυτή η τακτική είναι λάθος γιατί δημιουργεί μεγάλο κώδικα και προβλήματα στην διαχείριση του.

11 Ασφαλέστερος Κώδικας : Ηδιόρθωση ενός σφάλματος θα γίνει σε ένα σημείο και όχι σε πολλά διαφορετικά σημεία. Η τοποθέτηση των εντολών σε ένα μηχανισμό παρέχει καλύτερο έλεγχο του προβλήματος αφού κοινές λειτουργίες ομαδοποιούνται κάτω από το όνομα ενός μηχανισμού και δίνουν την δυνατότητα στο προγραμματιστή να εστιάζει στο πρόβλημα και όχι σε κάθε εντολή ξεχωριστά. Επαναχρησιμοποίηση - Χρήσιμες συναρτήσεις μπορούν να τοποθετηθούν σε μια βιβλιοθήκη και να χρησιμοποιηθούν από πολλά προγράμματα.

12 Άσκηση Να δημιουργήσετε μια συνάρτηση η οποία θα δέχεται τρεις πραγματικούς αριθμούς και θα επιστρέφει τον μικρότερο από όλους. Στοιχεία της συνάρτησης Το όνομα του μηχανισμού Το πλήθος των παραμέτρων CalculateMin Smaller MinThree Mikroteros 3 αριθμούς Το είδος των παραμέτρων Το είδος του αποτελέσματος Όλοι είναι πραγματικοί αριθμοί Πραγματικός αριθμός

13

14 Παράδειγματα χρήσης float k,m,n,f; k =2; m = 4; n = 7; f=minthree(k,m,n); k = MinThree(3, 5,7);.. k = MinThree(m,20, float.parse(txtone.text));

15 Άσκηση Να δημιουργήσετε μια συνάρτηση για τον υπολογισμό της βαθμολογίας ενός μαθητή, η οποία θα δέχεται έναν πραγματικό αριθμό οοποίος αντιστοιχεί στην βαθμολογία του μαθητή, και ανάλογα επιστρέφει τα παρακάτω μηνύματα : 8,5 έως 10 : Άριστα 7,5 έως 8.5 : Πολύ Καλά 6,0 έως 7.5 : Καλά 5,0 έως 6,0 : Μέτρια 0 έως 5 : Αποτυχία Σε οποιαδήποτε άλλη περίπτωση : Αριθμός εκτός ορίων

16 Στοιχεία της συνάρτησης Το όνομα του μηχανισμού Το πλήθος των παραμέτρων Το είδος των παραμέτρων Το είδος του αποτελέσματος ShowStudentMark CalcMark Bathmos 1 αριθμός πραγματικός αριθμός string (αλφαριθμητικό)

17

18 Άσκηση Να δημιουργήσετε μια συνάρτηση για τον υπολογισμό της φορολογίας, η οποία θα δέχεται έναν πραγματικό αριθμό ο οποίος αντιστοιχεί στο εισόδημα ενός πολίτη και επιστρέφει το φόρο όπως παρακάτω : Έως 1000 Ευρώ, ο φόρος είναι 0 Από 1000 μέχρι 2000 Ευρώ, ο φόρος είναι 200 Ευρώ. Από 2000 μέχρι 3000 ο φόρος είναι 15 % του εισοδήματος πέραν των 2000 Ευρώ Για μεγαλύτερα ποσά είναι 25 % του εισοδήματος, πέραν των 3000 Ευρώ

19 Στοιχεία της συνάρτησης Το όνομα του μηχανισμού Το πλήθος των παραμέτρων Το είδος των παραμέτρων Το είδος του αποτελέσματος CalculateTax Foros CalculateForos 1 αριθμός πραγματικός αριθμός πραγματικός αριθμός

20

21 Παράδειγμα Να δημιουργήσετε ένα πρόγραμμα το οποίο θα δέχεται δύο πραγματικούς αριθμούς έστω α και β και θα υπολογίζει ανάλογα με το κουμπί που θα πατήσετε τις παρακάτω σχέσεις : 1. (a 4 +b 4 )/b 2. a*(a 4 +b 4 ) 3. (a 4 +b 4 )/a

22 Από την εκφώνηση του προβλήματος φαίνεται ότι ησχέση 1. (a 4 +b 4 )/b χρησιμοποιείτε σε περισσότερους από έναν υπολογισμούς και για αυτό το λόγο είναι χρήσιμο να δημιουργήσετε μια συνάρτηση για τον υπολογισμό της. Πιθανά σημεία τοποθέτησης μιας νέας συνάρτησης

23 Για την δημιουργία της συνάρτησης θα πρέπει να σκεφτείτε ως εξής : Το όνομα του μηχανισμού ημαθηματική σχέση υπολογίζει το άθροισμα δύο αριθμών υψωμένων εις την τετάρτη. Το SumPowerFour ταιριάζει στην περιγραφή του προβλήματος. Οπότε γράφετε σε ένα από τα πιθανά σημεία τοποθέτησης της προηγούμενης διαφάνειας - π.χ. πάνω btnfirst_click - την λέξη SumPowerFour. Πρώτη φάση σύνταξης της SumPowerFour SumPowerFour

24 Το πλήθος των παραμέτρων Ησυγκεκριμένη λειτουργία χρειάζεται δύο πληροφορίες, τους αριθμούς a και β, για να υπολογίσει το αποτέλεσμα της σχέσης. Οπότε δίπλα στην λέξη SumPowerFour που γράψατε προηγουμένως - γράφετε μέσα σε παρενθέσεις (a, b). Όλες οι παράμετροι χωρίζονται μεταξύ τους με κόμμα. Υπάρχουν συναρτήσεις που δεν χρειάζονται παραμέτρους και σε αυτή την περίπτωση δεν θα γράφετε τίποτα μέσα στις παρενθέσεις. Το ονόματα των παραμέτρων δεν έχουν καμία σημασία εκτός από το να συσχετίζονται λογικά με το προς επίλυση πρόβλημα. Δεύτερη φάση σύνταξης της SumPowerFour SumPowerFour(a, b)

25 Το είδος των παραμέτρων Και οι δύο παράμετροι είναι πραγματικοί αριθμοί οπότε γράφετε την λέξη double πριν από την κάθε παράμετρο. Τρίτη φάση σύνταξης της SumPowerFour SumPowerFour(double a, double b) Το είδος του αποτελέσματος Το αποτέλεσμα του υπολογισμού είναι ένα πραγματικός αριθμός οπότε γράφετε την λέξη double πριν από το όνομα της συνάρτησης. Τέταρτη φάση σύνταξης της SumPowerFour double SumPowerFour(double a, double b)

26 H εργασία ολοκληρώνεται με την τοποθέτηση του ζεύγους των αγκίστρων, τα οποία θα περικλείουν τις εντολές που θα εκτελέσει ηsumpowerfour. Πέμπτη φάση σύνταξης της SumPowerFour double SumPowerFour(double a, double b) { }

27 Πίνακας 4. Ο κώδικας της εφαρμογής 1 double SumPowerFour(double a, double b) 2 { 3 double apot; 4 5 apot = Math.Pow(a, 4) + Math.Pow(b, 4); 6 7 return apot; 8 } Μπορείτε να χρησιμοποιήσετε όσες μεταβλητές θέλετε μέσα στο σώμα μιας συνάρτησης. Τα ονόματα που θα χρησιμοποιήσετε δεν έχει καμία σημασία αν χρησιμοποιούνται και σε άλλες συναρτήσεις γιατί αποκτούν υπόσταση μόλις ενεργοποιηθεί η συνάρτηση και παύει η δράση τους με το πέρας της συνάρτησης. Όλες οι μεταβλητές που ορίζονται μέσα στο σώμα μιας συνάρτησης ονομάζονται Τοπικές μεταβλητές (Local)

28 Πίνακας 4. Ο κώδικας της εφαρμογής 1 double SumPowerFour(double a, double b) 2 { 3 double apot; 4 5 apot = Math.Pow(a, 4) + Math.Pow(b, 4); 6 7 return apot; 8 } Μέσα στο σώμα μιας συνάρτησης αφού ολοκληρωθούν οι υπολογισμοί θα πρέπει να επιστραφεί το αποτέλεσμα. Η return χρησιμοποιείται για αυτό το λόγο.

29 Απόσπασμα ενός προγράμματος Το πέρασμα των παραμέτρων 2 3 Ηεπιστροφή του αποτελέσματος 97

30 Στην συνέχεια θα πρέπει στο σώμα των μεθόδων btnfirst, btnsecond και btnthird : 1. Να μετατρέψετε τις τιμές των txta και txtb σε πραγματικούς αριθμούς, 2. Να υπολογίσετε με την βοήθεια της SumPowerFour το αποτέλεσμα για την αντίστοιχη μαθηματική σχέση. 3. Να αποδώσετε το αποτέλεσμα στο txtapotelesma.

31 Παρατηρώντας τα ανωτέρω βήματα αντιλαμβάνεστε ότι το πρώτο και το τρίτο είναι κοινά οπότε δημιουργείτε την συνάρτηση CalculateFunctions για να τοποθετήσετε τις εντολές επίλυσης του προβλήματος. Σαν παράμετρο θα χρησιμοποιήσετε μια ακέραια τιμή με εύρος από 1 έως 3 και αναλόγως της τιμής θα υπολογίζεται η αντίστοιχη μαθηματική σχέση.

32 Πίνακας 5. Ο κώδικας της CalculateFunctions 1 void CalculateFunctions(int choosefunction) 2 { 3 double apot; 4 double noa, nob; 5 6 noa = double.parse(txta.text); 7 nob = double.parse(txtb.text); 8 9 switch (choosefunction) 10 { 11 case 1 : 12 apot = SumPowerFour(noA, nob) / nob; 13 break; 14 case 2: 15 apot = noa * SumPowerFour(noA, nob); 16 break; 17 case 3: 18 apot = SumPowerFour(noA, nob) / noa; 19 break; 20 default : 21 apot = 0; 22 break; 23 } txtapotelesma.text = apot.tostring(); 26 } Από την συνάρτηση απουσιάζει η return και επίσης πριν το όνομα, υπάρχει η λέξη void. Όλες οι συναρτήσεις που δεν χρειάζεται να επιστρέψουν τιμή δηλώνονται σαν void.

33 Πίνακας 6. Ο κώδικας για τα κουμπιά επιλογών 1 private void btnfirst_click(object sender, EventArgs e) 2 { 3 CalculateFunctions(1); 4 } 5 6 private void btnsecond_click(object sender, EventArgs e) 7 { 8 CalculateFunctions(2); 9 } private void btnthird_click(object sender, EventArgs e) 12 { 13 CalculateFunctions(3); 14 }

34 Παράδειγμα Να δημιουργήσετε ένα πρόγραμμα έκδοσης λογαριασμού για ένα super market.

35 H λογική της εφαρμογής είναι να πληκτρολογείτε την περιγραφή ενός προϊόντος (π.χ. Μακαρόνια), την ποσότητα (π.χ. 2), την τιμή του (π.χ. 2,34) και πατώντας το πλήκτρο Επόμενο να εμφανίζετε ηαξία του προϊόντος δηλαδή 4,68. Μακαρόνια 2 2,34 4,68

36 Στο κώδικα της συνάρτησης btnnextproduct_click θα μετατρέψετε σε αριθμούς τα περιεχόμενα των κουτιών κειμένου txtposotita και txttimi και θα αποδώσετε το γινόμενο τους σε μια τοπική μεταβλητή τύπου double με το όνομα Αxia. Τέλος θα εμφανίσετε την τιμή της μεταβλητής Axia στο αντίστοιχο κουτί κειμένου.

37 Όμως εκτός από τα ανωτέρω θέλετε να διατηρείτε και το άθροισμα όλων των αξιών που υπολογίσατε ανάμεσα στα διαδοχικά πατήματα του κουμπιού Επόμενο και το σύνολο να εμφανίζετε στο κουτί με την ετικέτα Λογαριασμός. Για την υλοποίηση αυτής της λειτουργίας θα χρειαστείτε μια μεταβλητή τύπου double με όνομα Bill και αρχική τιμή 0 και με το πάτημα τουκουμπιού Επόμενο, ητιμή της Bill να αυξάνεται κατά τηντιμήτηςαξίας, δηλαδή Bill = Bill + Axia Επίσης με το πάτημα του κουμπιού btnnewcustomer ναμηδενίζειητιμή της Bill για να υπολογίσει το λογαριασμό του επόμενου πελάτη

38 Αν την Bill την δηλώσετε μέσα στην btnnextproduct_click όσες φορές και να πατήσετε το πλήκτρο Επόμενο οι τιμές των Αxia και Bill θα είναι οι ίδιες. Το πρόβλημα βρίσκεται στο ότι η μεταβλητή Bill είναι τοπική μεταβλητή για την btnnextproduct_click και αποκτά υπόσταση με το πάτημα του κουμπιού Επόμενο, οπότε κάθε φορά ξεκινά με την τιμή 0.

39 Η λύση είναι να ορίσετε την Bill έξω από το σώμα της συνάρτησης αλλά μέσα στο σώμα της κλάσης frmbill. Όλες οι μεταβλητές έξω από το σώμα μιας συνάρτησης ονομάζονται καθολικές (global) και αποκτούν υπόσταση καθ όλη την διάρκεια ζωής της κλάσης στην οποία εμπεριέχονται. 1 public partial class frmbill : Form 2 { 3 double Bill = 0; 4 5 public frmbill() 6 { 7 InitializeComponent(); 8 } 9 Πιθανά σημεία τοποθέτησης μιας καθολικής (global) μεταβλητής. 10 private void btnnextproduct_click(object sender, EventArgs e) 11 { 12 } private void btnnewcustomer_click(object sender, EventArgs e) 15 { 16 } }

40 Πίνακας 1. Ο κώδικας της εφαρμογής 4 public partial class frmbill : Form 5 { 6 double Bill = 0; 7 8 public frmbill() 9 { 10 InitializeComponent(); 11 } private void btnnextproduct_click(object sender, EventArgs e) 14 { 15 double posotita = double.parse(txtposotita.text); 16 double timi = double.parse(txttimi.text); 17 double Αxia = posotita * timi; 18 Bill = Bill + Αxia; 19 txtaxia.text = Αxia.ToString(); 20 txtbill.text = Bill.ToString(); 21 }

41 23 void ClearFields() 24 { 25 txtproduct.text = ""; 26 txtposotita.text = ""; 27 txttimi.text = ""; 28 txtbill.text = ""; 29 txtaxia.text = ""; 30 } private void btnnewcustomer_click(object sender, EventArgs e) 33 { 34 ClearFields(); Bill = 0; 38 } }

42 Nα επεκτείνετετην εφαρμογήώστενα υπολογίζετεκαι την είσπραξητης ημέρας :

43 Πίνακας 1. Ο κώδικας της εφαρμογής 4 public partial class frmbill : Form 5 { 6 double Bill = 0; 7 double Total = 0; 8 public frmbill() 9 { 10 InitializeComponent(); 11 } private void btnnextproduct_click(object sender, EventArgs e) 14 { 15 double posotita = double.parse(txtposotita.text); 16 double timi = double.parse(txttimi.text); 17 double Αxia = posotita * timi; 18 Bill = Bill + Αxia; 19 txtaxia.text = Αxia.ToString(); 20 txtbill.text = Bill.ToString(); 21 }

44 23 void ClearFields() 24 { 25 txtproduct.text = ""; 26 txtposotita.text = ""; 27 txttimi.text = ""; 28 txtbill.text = ""; 29 txtaxia.text = ""; 30 } private void btnnewcustomer_click(object sender, EventArgs e) 33 { 34 ClearFields(); Bill = 0; 38 } } Total = Total + Bill txttotal.text = Total.ToString()

45 Αποσφαλμάτωση (Debugging) Όσο τα προγράμματα μεγαλώνουν σε μέγεθος θα πρέπει να είστε ιδιαίτερα προσεκτικοί στην σύνταξη των εντολών. Τα σύγχρονα περιβάλλοντα προγραμματισμού διαθέτουν την λειτουργία της αποσφαλμάτωσης με σκοπό να δώσουν την δυνατότητα στο προγραμματιστή να ελέγξει τις τιμές των μεταβλητών αλλά και την ροή του προγράμματος κατά την ώρα της λειτουργίας του. Για παράδειγμα υποθέστε ότι στο προηγούμενο πρόγραμμα θέλατε να ελέγξετε τις τιμές των μεταβλητών όταν πατάτε το πλήκτρο Επόμενο.

46 Πατάτε δεξί πλήκτρο στο σημείο που επιθυμείτε την διακοπή εκτέλεσης του προγράμματος Αμέσως μετά εμφανίζετε μια κόκκινη γραμμή για να δηλώσει την ύπαρξη του Breakpoint

47 Πατήστε F5 για να τρέξετε την εφαρμογή σας και αφού πληκτρολογείστε τις τιμές της παρακάτω εικόνας εν συνεχεία πατήστε το πλήκτρο Επόμενο

48 Με το πάτημα του πλήκτρου εμφανίζετε ο κώδικας της εφαρμογής στο σημείο της διακοπής. Μια κίτρινη γραμμή και ένα βέλος στο αριστερό περιθώριο της σελίδας δείχνουν την τρέχουσα γραμμή εκτέλεσης του προγράμματος. Πηγαίνοντας το κέρσορα πάνω από μια μεταβλητή ή ένα αντικείμενο της φόρμας χωρίς να πατήσετε κάποιο πλήκτρο το περιβάλλον σας δείχνει την τιμή του. Στην εικόνα εμφανίζετε η τιμή του κουτιού κειμένου txtposotita.

49 Αν θέλετε να έχετε συνεχώς μπροστά σας ένα πίνακα με μια ή περισσότερες μεταβλητές ώστε να παρακολουθείτε τις εναλλαγές που συμβαίνουν στις τιμές τους, τότε πηγαίνετε το κέρσορα πάνω από την επιθυμητή μεταβλητή και αφού πατήσετε δεξί πλήκτρο επιλέξτε Add Watch.

50 Μετά την επιλογή Add Watch εμφανίζεται στο κάτω μέρος της οθόνης ένας πίνακας με το όνομα, την τιμή και το τύπο της μεταβλητής.

51 Για να προχωρήσετε στην επόμενη γραμμή του προγράμματος θα πρέπει να πατήσετε το πλήκτρο F10 ή F11. Η διαφορά μεταξύ τους είναι ότι το F11 εκτελεί την επόμενη γραμμή ενώ το F10 εκτελεί το επόμενο σύνολο εντολών. 23 void ClearFields() 24 { 25 txtproduct.text = ""; F11 Aν σε οποιαδήποτε γραμμή αντί 26 txtposotita.text = ""; F11 για F11 πατήσετε το συνδυασμό 27 txttimi.text = ""; Shift και F11 θα ολοκληρωθεί η F11 28 txtbill.text = ""; εκτέλεση των εναπομεινάντων F11 γραμμών της ClearFields και η 29 txtaxia.text = ""; συνέχεια θα είναι ηγραμμή } F private void btnnewcustomer_click(object sender, EventArgs e) 33 { F11 34 ClearFields(); 35 F Bill = 0; 38 } }

52 Αν θέλετε να διαγράψετε ή να απενεργοποιήσετε το σημείο διακοπής τότεπατάτεδεξί πλήκτροπάνωτου οπουδήποτε στηνκόκκινηγραμμή - καιενσυνεχείαεπιλέγετε Breakpoint και Delete Breakpoint (διαγραφή) ή Disable Breakpoint (απενεργοποίηση).

53 Σε οποιαδήποτε στιγμή από το μενού Debug ή πατώντας το συνδυασμό των πλήκτρων Shift και F5 μπορείτε να διακόψετε την λειτουργία της αποσφαλμάτωσης. H αποσφαλμάτωση είναι μια χρονοβόρα διαδικασία αλλά και πολύτιμο εργαλείο για την διόρθωση σφαλμάτων και την κατανόηση της εκτέλεσης των εντολών του προγράμματος.

54 Παράδειγμα Να δημιουργήσετε ένα πρόγραμμα για τον υπολογισμού των θερμοκρασιών μιας εβδομάδας. Συγκεκριμένα το πρόγραμμα θαδιαβάζει 7 θερμοκρασίεςκαιθα υπολογίζει την μεγαλύτερη και την μικρότερη τιμή καθώς και το μέσο όρο τους. Να γράψετε την λέξη "Δευτέρα" ώστε να πληκτρολογήσει ο χρήστης την θερμοκρασία για πρώτη ημέρα της εβδομάδας.

55 Ηαρχική οθόνη της εφαρμογής Αποθηκεύετε ητιμή της θερμοκρασία στην μεταβλητή της Δευτέρας και στο πεδίο της ημέρας φαίνεται ητρίτη Μόλις συμπληρωθεί το πλήθος των επτά θερμοκρασιών τότε υπολογίζονται και εμφανίζονται ημικρότερη, ημεγαλύτερη και ομέσος όρος των θερμοκρασιών. float wk1, wk2, wk3, wk4, wk5, wk6, wk7; float mesos = (wk1 + wk2 + wk3 + wk4 + wk5 + wk6 + wk7) / 7; Φανταστείτε να υπολογίσετε τα ανωτέρω μεγέθη για ένα μήνα ή ένα έτος. Χρειάζεστε έναν πιο ευέλικτο τρόπο αποθήκευσης των τιμών.

56 Δημιουργία πίνακα Σε δύο βήματα ΤύποςΔεδομένων [] ΟνομαΠίνακα; και πριν χρησιμοποιήσετε ένα πίνακα θα πρέπει να δημιουργήσετε με την εντολή new τις αντίστοιχες θέσεις που θέλετε να έχει ο πίνακας : ΟνομαΠίνακα = new ΤύποςΔεδομένων[ ΠλήθοςΣτοιχείων]; Παράδειγμα float [] Week; Week = new float[7];

57 Σε ένα βήμα Οι ανωτέρω δηλώσεις μπορεί να γίνουν και σε ένα βήμα ΤύποςΔεδομένων [] ΟνομαΠίνακα = new ΤύποςΔεδομένων[ ΠλήθοςΣτοιχείων]; Παράδειγμα float [] Week = new float[7];

58 Ο πίνακας Week καταλαμβάνει στην μνήμη του υπολογιστή επτά συνεχόμενες θέσεις, εκ των οποίων ηκάθε μια μπορεί να αποθηκεύσει ένα δεκαδικό αριθμό και ηαρίθμηση τους ξεκινά από την θέση 0 μέχρι και την θέση Week Για να αποδώσετε τις τιμές 8.5 και 9.35 στην πρώτη και τέταρτη θέση αντίστοιχα θα πρέπει να γράψετε : Week[0] = 8.5; Week[3] = 9.35;

59 Μπορείτε να δώσετε τιμές στις θέσεις του πίνακα με οποιαδήποτε σειρά, δηλαδή δεν είναι υποχρεωτικό να δώσετε τιμή στην θέση 0 πριν δώσετε τιμή στην θέση 1. Αντίστοιχα για να αποδώσετε σε μια μεταβλητή k τύπου float την τιμή της τρίτης θέσης του πίνακα θα πρέπει να γράψετε : k= Week[2]; Ηαναφορά των θέσεων του πίνακα είτε για ανάγνωση είτε για εγγραφή, με μια ακέραια τιμή μέσα στις αγκύλες που υποδηλώνει την θέση στο πίνακα - διευκολύνει την διαχείριση τους με την βοήθεια των επαναλήψεων αφού ηίδια λειτουργία (ενέργεια) υλοποιείται σε όλες τις θέσεις του πίνακα.

60

61 Στην υλοποίηση του προγράμματος θα δηλώσετε σαν καθολική μεταβλητή ένα μετρητή, ο οποίος θα χρησιμοποιηθεί σαν δείκτης στο πίνακα Week και με την έναρξη της εφαρμογής θα πάρει την τιμή 0 για να δηλώσετε ότι η θερμοκρασία που θα πληκτρολογήσετε θα αποδοθεί στην πρώτη ημέρα και κάθε φορά που θα πατάτε το πλήκτρο Επόμενη θα αυξάνει την τιμή του κατά 1 μέχρι και το 6 γιατί αυτή είναι η μέγιστη τιμή που μπορεί να λάβει στα πλαίσια του προγράμματος.

62 Η DisplayDay είναι μια συνάρτηση ή οποία δέχεται σαν παράμετρο μια ακέραια τιμή που αντιστοιχεί σε μια ημέρα της εβδομάδας και επιστρέφει το όνομα της αντίστοιχης ημέρας. if(day == 1) { grday = Deytera ; } else if(day == 2) { grday = Trith ; }

63 Στο σώμα της btnnext_click γίνεται έλεγχος αν η τιμή του μετρητή noday είναι μικρότερη από 7 και αν ναι τότε αποθηκεύει την τιμή της θερμοκρασίας στο πίνακα Week, αυξάνει το μετρητή κατά 1, καθαρίζει το πεδίο της θερμοκρασίας και εμφανίζει το όνομα της τρέχουσας ημέρας στο κουτί κειμένου txtday.

64

65

66 Βελτιστοποίηση του κώδικα

67 H C# - όπως και σχεδόν όλες οι γλώσσες προγραμματισμού - δεν επιτρέπει την μαζική απόδοση τιμών σε ένα πίνακα εκτός από την αρχικοποίηση του, όπου μέσα σε άγκιστρα δηλώνετε τις τιμές του πίνακα χωρίζοντας με κόμμα: Επιτρεπόμενη ενέργεια string []DayNames = new string[7];... DayNames[0] = "Δευτέρα"; DayNames[1] = "Τρίτη";... Μη Επιτρεπόμενη ενέργεια string []DayNames = new string[7];... DayNames = {"Δευτέρα","Τρίτη"};... Απόδοση τιμών μία προς μια στις θέσεις του πίνακα ΔΕΝ μπορείτε να κάνετε μαζική απόδοση τιμών εκτός από την στιγμή της αρχικοποίησης του πίνακα.

68 Δημιουργία πίνακα και μαζική απόδοση τιμών ΤύποςΔεδομένων [] ΟνομαΠίνακα = new ΤύποςΔεδομένων[ΠλήθοςΣτοιχείων] { τιμή_πρώτης_θέσης, τιμή_δεύτερης_θέσης,...};

69 Δημιουργία πίνακα και μαζική απόδοση τιμών Κατά την αρχικοποίηση του πίνακα με τιμές δεν είναι απαραίτητο να δηλώσετε το πλήθος των θέσεων αφού ηc# θα διαβάσει τις τιμές μέσα στα άγκιστρα και θα δημιουργήσει τις αντίστοιχες θέσεις στο πίνακα. ΤύποςΔεδομένων [] ΟνομαΠίνακα = { τιμή_πρώτης_θέσης, τιμή_δεύτερης_θέσης,...};

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

71 Οι εντολές για τον υπολογισμό της μικρότερης, της μεγαλύτερης καθώς και του μέσου όρου των τιμών του πίνακα. εμπεριέχονται μέσα στη btncalculate_click και επιπλέον αναφέρονται συγκεκριμένα μόνο στο πίνακα Week οπότε δεν είναι δυνατόν ηεπαναχρησιμοποίηση του κώδικα για τον υπολογισμό αυτών των μεγεθών σε ένα άλλο πίνακα με πραγματικές τιμές. Θα ήταν καλύτερα να δημιουργήσετε συναρτήσεις για τον υπολογισμό τους.

72 Πρώτη Πρακτική Θα μπορούσατε να κατασκευάσετε τρεις ξεχωριστές συναρτήσεις μια για τον υπολογισμό της μικρότερης τιμής, μια για τον υπολογισμό της μεγαλύτερης τιμής και μια για τον υπολογισμό του μέσου όρου των τιμών του πίνακα. Για την κατασκευή τους θα πρέπει να σκεφτείτε με τον ίδιο τρόπο αφού η υλοποίηση τους ομοιάζει αρκετά : 1. Το όνομα της συνάρτησης που θα χρησιμοποιήσετε για τον υπολογισμό της κάθε εργασίας. Για παράδειγμα τα ονόματα CalcMin, CalcMax και CalcAvg δηλώνουν με σαφήνεια τους υπολογισμούς που επιτελούνται στις αντίστοιχες συναρτήσεις. 2. Το πλήθος των παραμέτρων που χρειάζεται για να λειτουργήσει ομηχανισμός και στην προκειμένη περίπτωση είναι μόνο οπίνακας με τις τιμές των θερμοκρασιών.

73 3. Το είδος των παραμέτρων όπου στη συγκεκριμένη περίπτωση είναι ένας πίνακας με πραγματικές τιμές. 4. Το είδος του αποτελέσματος όπου και για τις τρεις συναρτήσεις είναι ένας πραγματικός αριθμός. Δεν χρειάζεται να γνωρίζετε το μέγεθος του πίνακα αφού η μέθοδος Length επιστρέφει το πλήθος των στοιχείων του πίνακα.

74

75 Η δημιουργία των συναρτήσεων CalcMin, CalcMax και CalcAvg μπορούν να χρησιμοποιηθούν σε οποιοδήποτε σημείο του προγράμματος και με οποιοδήποτε πίνακα πραγματικών αριθμών.... float [] pin = new float[50]; pin[0] = float.parse(textbox1.text);.. pin[49] = 67; float f = CalcMin(pin); Δήλωση πίνακα Αποθήκευση τιμών στο πίνακα Κάλεσμα της CalcMin με παράμετρο το πίνακα pin

76 Δεύτερη Πρακτική Θα μπορούσατε να κατασκευάσετε μία συνάρτηση για τον υπολογισμό της μικρότερης τιμής, της μεγαλύτερης τιμής και του μέσου όρου των τιμών του πίνακα, ταυτόχρονα. Όπως γνωρίζετε μέχρι τώρα, μια συνάρτηση μπορεί να επιστρέφει (με την return) ή όχι (είναι void) μια τιμή. Για να επιστρέψετε περισσότερες τιμές θα πρέπει να τις βάλετε στις παραμέτρους εισόδου με το πρόθεμα out ή ref

77 H δήλωση οut στις παραμέτρους εισόδου σημαίνει ότι οι συγκεκριμένες μεταβλητές θα πάρουν υποχρεωτικά τιμή μέσα στο σώμα της συνάρτησης και ότι αυτές τις τιμές θα τις διατηρήσουν και με το πέρας της εκτέλεσης της συνάρτησης.

78 Στις συναρτήσεις διακρίνουμε δύο τρόπους με τις οποίες τις καλούμε : Κλήση με τιμή (call by value) void CallByValue(int x) { x = 34; } private void button1_click(object sender, EventArgs e) { int y; Στο σώμα της CallByValue ητιμή για την x θα είναι 34 αλλά με το πέρας αυτής για την y = 5; y δεν έχει καμία επίπτωση αφού παραμένει 5 όπως και πριν από την κλήση της CallByValue(y); συνάρτησης. Άρα οι αλλαγές των μεταβλητών στο σώμα της συνάρτησης textbox1.text = y.tostring(); δεν έχουν επίπτωση για τις μεταβλητές } του προγράμματος που κάλεσε την συνάρτηση.

79 Κλήση με αναφορά (call by reference) void CallByRef(ref int x) { x = 34; } Τα ονόματα των μεταβλητών δεν έχουν καμία σημασία. Εκείνο που πρέπει να προσέχουμε είναι αν υπάρχει η λέξη ref ή out πριν από το όνομα της μεταβλητής. private void button1_click(object sender, EventArgs e) { int y; y = 5; CallByRef(ref y); } textbox1.text = y.tostring(); Προσοχή η λέξη ref πρέπει να υπάρχει και στη συνάρτηση και στην κλήση.

80 Κλήση με αναφορά (call by reference) Εναλλακτικά void CallByRef(out int x) { x = 34; } Ηδιαφορά με την ref είναι ότι : α) στην out δεν χρειάζεται ημεταβλητή να έχει πάρει τιμή και β) θα πρέπει υποχρεωτικά να πάρει τιμή μέσα στο σώμα της συνάρτησης. private void button1_click(object sender, EventArgs e) { int y; y = 5; CallByRef(out y); } textbox1.text = y.tostring(); Προσοχή η λέξη out πρέπει να υπάρχει και στη συνάρτηση και στην κλήση.

81 Αφού μπορείτε να αλλάξετε τις τιμές των μεταβλητών μετά την κλήση μιας συνάρτησης - με την χρήση των λέξεων ref ή out έχετε κατά συνέπεια την δυνατότητα από μια συνάρτηση να επιστρέψετε πολλά αποτελέσματα μόνο που οι μεταβλητές που θα αποθηκεύσουν το αποτέλεσμα θα πρέπει να περάσουν σαν είσοδοι στην συνάρτηση.

82 Δημιουργείστε μια συνάρτηση για τον υπολογισμό του αθροίσματος δύο ακεραίων αριθμών. Τοκάλεσμα της συνάρτησης θα πρέπει να γίνει voidcalcsumα(intx, inty, out intapot) { apot = x + y; } int CalcSumΒ(int x, int y) { return (x + y); } int apot; x = 3; CalcSumA(2,3,out apot); H apot έχει τιμή 5 Το κάλεσμα της συνάρτησης θα πρέπει να γίνει int apot; apot = CalcSumΒ(2,3); H apot έχει τιμή 5

83 Δημιουργείστε μια συνάρτηση για τον υπολογισμό της πρόσθεσης, αφαίρεσης και πολλαπλασιασμού μεταξύ δύο ακεραίων αριθμών. void CalcSumΑ(int x, int y, out int apot1, out int apot2, out int apot3) { } apot1 = x + y; apot2 = x - y; apot3 = x * y; Το κάλεσμα της συνάρτησης θα πρέπει να γίνει int x, y, z; CalcSumA(2,3,x, y, z); H x έχει τιμή 5, η y έχει -1, η z έχει 6

84 Στους πίνακες που έχουν στοιχεία δεν έχει σημασία αν χρησιμοποιήσουμε ref ή out γιατί πάντα η κλήση τους γίνεται με αναφορά : void CallByValue(int [] x) { x[0] = 34; x[1] = 23; } private void button1_click(object sender, EventArgs e) { int[] y = { 3, 7 }; CallByValue(y); } textbox1.text = y[0].tostring() + " " + y[1].tostring();

85 Στους πίνακες που δεν έχουν δημιουργηθεί τότε έχει σημασία αν χρησιμοποιήσουμε ref ή out. Για παράδειγμα να δημιουργήσετε μια συνάρτηση που δημιουργεί θέσεις για ένα πίνακα και τους αρχικοποιεί με συγκεκριμένη τιμή. void CallByValue(out int [] x, int n, int val) { x = new int[n]; for (int i = 0; i < n; i++) { x[i] = val; } } private void button1_click(object sender, EventArgs e) { int[] y; CallByValue(out y, 2, 104); } textbox1.text = y[0].tostring() + " " + y[1].tostring();

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να καταλάβουν την διαφορά ανάμεσα σε τοπικές και καθολικές μεταβλητές. Nα κάνουν αποσφαλμάτωση

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να καταλάβουν την διαφορά ανάμεσα σε τοπικές και καθολικές μεταβλητές. Nα κατασκευάσουν πίνακες

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να αναπτύξουν ένα πρόγραμμα όπου θα επαναλάβουν τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής.

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Nα κατασκευάσουν πίνακες από δεδομένα. Να κατασκευάσουν συναρτήσεις με πίνακες. Να κάνουν χρήση

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

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να αναπτύξουν ένα πρόγραμμα όπου θα επαναλάβουν τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής.

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

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Σύντομες εισαγωγικές σημειώσεις για την. Matlab Σύντομες εισαγωγικές σημειώσεις για την Matlab Δήλωση Μεταβλητών Για να εισάγει κανείς δεδομένα στη Matlab υπάρχουν πολλοί τρόποι. Ο πιο απλός είναι στη γραμμή εντολών να εισάγουμε αυτό που θέλουμε και

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

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ 1 Τύποι δεδομένων Η γλώσσα προγραμματισμού C++ υποστηρίζει τους παρακάτω τύπους δεδομένων: 1) Ακέραιοι αριθμοί (int). 2) Πραγματικοί αριθμοί διπλής ακρίβειας

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

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

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

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

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΡΑΞΕΙΣ. Παράδειγμα #1. Πράξεις μεταξύ ακεραίων αριθμών

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΡΑΞΕΙΣ. Παράδειγμα #1. Πράξεις μεταξύ ακεραίων αριθμών ΥΠΟΛΟΓΙΣΤΕΣ Ι ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΡΑΞΕΙΣ Τύποι δεδομένων Οι παρακάτω τύποι δεδομένων υποστηρίζονται από τη γλώσσα προγραμματισμού Fortran: 1) Ακέραιοι αριθμοί (INTEGER). 2) Πραγματικοί αριθμοί απλής ακρίβειας

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

ΣΥΝΑΡΤΗΣΕΙΣ. Η σύνταξη μιας συνάρτησης σ ένα κελί έχει την γενική μορφή: =όνομα_συνάρτησης(όρισμα1; όρισμα2;.)

ΣΥΝΑΡΤΗΣΕΙΣ. Η σύνταξη μιας συνάρτησης σ ένα κελί έχει την γενική μορφή: =όνομα_συνάρτησης(όρισμα1; όρισμα2;.) ΣΥΝΑΡΤΗΣΕΙΣ Συνάρτηση είναι ένας έτοιμος τύπος ο οποίος δέχεται σαν είσοδο τιμές ή συνθήκες και επιστρέφει ένα αποτέλεσμα, το οποίο μπορεί να είναι μια τιμή αριθμητική, αλφαριθμητική, λογική, ημερομηνίας

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Nα κατασκευάσουν λίστες από δεδομένα. Να κατασκευάσουν συναρτήσεις με λίστες. Να διαβάσουν και

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

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

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Συναρτήσεις θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

Δομημένος Προγραμματισμός Δομημένος Προγραμματισμός ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΙΑΣ Διάλεξη 2 Νικόλαος Ζ. Ζάχαρης 2007 Σκοπός της διάλεξης Θα αναπτύξουμε ένα πρόγραμμα όπου θα επαναλάβουμε τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής. Θα

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

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

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

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

Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ

Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ Λογικός τύπος ( ) Ο τύπος είναι κατάλληλoς για την αναπαράσταση ποσοτήτων που μπορούν να πάρουν δύο μόνο τιμές (π.χ. ναι/όχι, αληθές/ψευδές, ). Τιμές ή Δήλωση Εκχώρηση Ισοδυναμία με ακέραιους

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

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

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

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

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

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

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να αναπτύξουν ένα πρόγραμμα όπου θα επαναλάβουν τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής.

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

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

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

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

Τα αλφαριθμητικά αποτελούνται από γράμματα, λέξεις ή άλλους χαρακτήρες (π.χ. μήλο, Ιούλιος 2009, You win!).

Τα αλφαριθμητικά αποτελούνται από γράμματα, λέξεις ή άλλους χαρακτήρες (π.χ. μήλο, Ιούλιος 2009, You win!). ΑΛΦΑΡΙΘΜΗΤΙΚΑ Τα αλφαριθμητικά αποτελούνται από γράμματα, λέξεις ή άλλους χαρακτήρες (π.χ. μήλο, Ιούλιος 2009, You win!). Αποθηκεύονται σε μεταβλητές ή σε λίστες (όπως ή ). Μπορείτε να ενώσετε δυο αλφαριθμητικά

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

Ρητή μετατροπή αριθμητικής τιμής σε άλλο τύπο. Τι θα τυπωθεί στον παρακάτω κώδικα;

Ρητή μετατροπή αριθμητικής τιμής σε άλλο τύπο. Τι θα τυπωθεί στον παρακάτω κώδικα; Ρητή μετατροπή αριθμητικής τιμής σε άλλο τύπο Τι θα τυπωθεί στον παρακάτω κώδικα; Ρητή μετατροπή αριθμητικής τιμής σε άλλο τύπο Τι θα τυπωθεί στον παρακάτω κώδικα; Χωρίς να αλλάξουμε τον τύπο των a,b,

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να αναπτύξουν ένα πρόγραμμα όπου θα επαναλάβουν τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής.

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

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

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

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

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

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

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

Κεφάλαιο 1. Τι θα μάθουμε σήμερα: -AND, OR, NOT. -Ενσωματωμένες συναρτήσεις. -Μαθηματικοί τελεστές -ΤΕΛΕΣΤΕΣ DIV ΚΑΙ MOD. -Προτεραιότητα πράξεων

Κεφάλαιο 1. Τι θα μάθουμε σήμερα: -AND, OR, NOT. -Ενσωματωμένες συναρτήσεις. -Μαθηματικοί τελεστές -ΤΕΛΕΣΤΕΣ DIV ΚΑΙ MOD. -Προτεραιότητα πράξεων Κεφάλαιο 1 Αρχή ήμισυ παντός. Πλάτων, 427-347 π.χ., Φιλόσοφος Τι θα μάθουμε σήμερα: -AND, OR, NOT -Ενσωματωμένες συναρτήσεις -Μαθηματικοί τελεστές -ΤΕΛΕΣΤΕΣ DIV ΚΑΙ MOD -Προτεραιότητα πράξεων 1 Λογικές

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

6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ

6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ 6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ 6.1 Η Έννοια του Πίνακα Συχνά είναι προτιμότερο να αντιμετωπίζουμε ένα σύνολο μεταβλητών σαν ενότητα για να απλοποιούμε το χειρισμό τους. Έτσι οργανώνουμε σύνθετα δεδομένα σε

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

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

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

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

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές τύπων, δημιουργία τυχαίων αριθμών, λήψη εισόδου από χρήστη Λογικά λάθη public class ShowLogicErrors

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

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

ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

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

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python Σκοπός της 1ης άσκησης είναι η εξοικείωση με τη γλώσσα προγραμματισμού Python, την οποία και θα χρησιμοποιήσουμε και στις υπόλοιπες εργαστηριακές ασκήσεις.

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

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

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

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

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές τύπων, δημιουργία τυχαίων αριθμών, λήψη εισόδου από χρήστη Γαβαλάς Δαμιανός dgavalas@aegean.gr Λογικά

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στην Αριθμητική Ανάλυση

Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στη MATLAB ΔΙΔΑΣΚΩΝ: ΓΕΩΡΓΙΟΣ ΑΚΡΙΒΗΣ ΒΟΗΘΟΙ: ΔΗΜΗΤΡΙΑΔΗΣ ΣΩΚΡΑΤΗΣ, ΣΚΟΡΔΑ ΕΛΕΝΗ E-MAIL: SDIMITRIADIS@CS.UOI.GR, ESKORDA@CS.UOI.GR Τι είναι Matlab Είναι ένα περιβάλλον

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

! Δεν μπορούν να λυθούν όλα τα προβλήματα κάνοντας χρήση του παρ/λου προγ/σμου ΑΡΧΗ ΝΑΙ Διάβα σε a Εκτύπ ωσε a > a 0 ΟΧΙ ΤΕΛΟΣ Σύμβολα διαγράμματος ροής 1 Ακέραιος τύπος 14 0-67 2 Πραγματικός τύπος

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

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

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

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

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΟΜΑΘΕΙΑ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΟΜΑΘΕΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΟΜΑΘΕΙΑ Καλλιόπη Μαγδαληνού ΕΠΙΚΕΦΑΛΙΔΑ ΠΡΟΓΡΑΜΜΑΤΟΣ ΔΗΛΩΣΕΙΣ ΣΤΑΘΕΡΩΝ ΔΗΛΩΣΕΙΣ ΜΕΤΑΒΛΗΤΩΝ ΕΝΤΟΛΕΣ πρόγραμμα τεστ σταθερές π = 3.14 μεταβλητές πραγματικές : εμβαδό, ακτίνα αρχή

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

Πως θα κατασκευάσω το πρώτο πρόγραμμα;

Πως θα κατασκευάσω το πρώτο πρόγραμμα; Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να γίνει εξοικείωση το μαθητών με τον ΗΥ και το λειτουργικό σύστημα. - Επίδειξη του My Computer

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

Σχήµα 5.1: Εισαγωγή της δοµής formula node στο Block Diagram.

Σχήµα 5.1: Εισαγωγή της δοµής formula node στο Block Diagram. Η δοµή Formula Node 1. Η δοµή Formula Node επιτρέπει την εισαγωγή αναλυτικών σχέσεων στο Block Diagram µε πληκτρολόγηση, αποφεύγοντας έτσι την εισαγωγή των εικονίδιων συναρτήσεων απλών αλγεβρικών πράξεων

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

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΚΕΦΑΛΑΙΟ 10 Όπως είδαμε και σε προηγούμενο κεφάλαιο μια από τις βασικότερες τεχνικές στον Δομημένο Προγραμματισμό είναι ο Τμηματικός Προγραμματισμός. Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης

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

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

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

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

ΣΚΗΝΙΚΟ ΥΠΟΒΑΘΡΑ ΑΡΧΙΚΗ

ΣΚΗΝΙΚΟ ΥΠΟΒΑΘΡΑ ΑΡΧΙΚΗ Scratch 1. Σκηνικό (Αρχική Έχασες Κέρδισες). Η πρώτη μου δουλειά όταν φτιάχνω ένα παιχνίδι είναι πάω στο ΣΚΗΝΙΚΟ - ΥΠΟΒΑΘΡΑ και να σχεδιάσω (ή να αντιγράψω μια εικόνα από το διαδίκτυο ή από οπουδήποτε

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

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ Ενότητα 2 : Ζωγραφίζοντας με το ΒΥΟΒ -1- Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα α. Θέση και προσανατολισμός της μορφής Η θέση της κάθε μορφής στο σκηνικό προσδιορίζεται

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να καταλάβουν την διαφορά ανάμεσα σε τοπικές και καθολικές μεταβλητές. Nα κατασκευάσουν πίνακες

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

Υπολογισμός αθροισμάτων

Υπολογισμός αθροισμάτων Υπολογισμός αθροισμάτων Τα αθροίσματα θα τα δημιουργούμε σαν συναρτήσεις και θα τα αποθηκεύουμε σε αρχείο (m-file) με την ίδια ονομασία με τη συνάρτηση. Για να δημιουργήσουμε ένα άθροισμα ξεκινάμε μηδενίζοντας

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

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

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

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

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

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

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

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

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

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

ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ

ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ ΟΔΗΓΙΕΣ: ΝΑ ΑΠΑΝΤΗΣΕΤΕ ΣΕ ΟΛΕΣ ΤΙΣ ΕΡΩΤΗΣΕΙΣ. Το εξεταστικό δοκίμιο αποτελείται από δύο Ενότητες Α και Β. ΕΝΟΤΗΤΑ Α - Αποτελείται από δέκα (10) ερωτήσεις. Κάθε ορθή απάντηση

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

Εισαγωγή στη Matlab Βασικές Συναρτήσεις

Εισαγωγή στη Matlab Βασικές Συναρτήσεις Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών Τμήμα Πληροφορικής με Εφαρμογές στη Βιοϊατρική Εργαστήριο Γραμμικής Άλγεβρας Εισαγωγή στη Matlab Βασικές Συναρτήσεις 2016-2017 Εισαγωγή στη Matlab Matlab

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

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης Προγραμματισμός Υπολογιστών & Κ.Π. Γιαλούρης Στόχοι του σημερινού μαθήματος Εξοικείωση με τα περιβάλλοντα της Python Κατανόηση βασικών εννοιών & τεχνικών Τύπος δεδομένων Μεταβλητή Εντολή ανάθεση τιμής

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

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

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

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

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

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ 1) Πότε χρησιμοποιείται η δομή επανάληψης

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

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Στατικές μέθοδοι και μεταβλητές Εσωτερικές κλάσεις

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Στατικές μέθοδοι και μεταβλητές Εσωτερικές κλάσεις ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Στατικές μέθοδοι και μεταβλητές Εσωτερικές κλάσεις Στατικές μέθοδοι Τι σημαίνει το keyword static στον ορισμό της main μεθόδου? Τι είναι μια στατική μέθοδος?

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

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Εργαστήριο 3: 3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Η C++, όπως όλες οι γλώσσες προγραμματισμού, χρησιμοποιεί τελεστές για να εκτελέσει τις αριθμητικές και λογικές λειτουργίες.

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική

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

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

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

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

Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων

Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Γρήγορες προσθέσεις αριθμών Γρήγορες συγκρίσεις αριθμών Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων Σχετικά γρήγορη μετάδοση και πρόσληψη

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

8.4. Δραστηριότητες - ασκήσεις

8.4. Δραστηριότητες - ασκήσεις 8.4. Δραστηριότητες - ασκήσεις ΣΤΗΝ ΤΑΞΗ ΔΤ1. ΔΤ2. ΔΤ3. ΔΤ4. Αν η μεταβλητή Α έχει την τιμή 10, η μεταβλητή Β έχει την τιμή 5 και η μεταβλητή Γ έχει την τιμή 3, ποιες από τις παρακάτω εκφράσεις είναι αληθείς

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

Εαρινό. Ύλη εργαστηρίου, Ασκήσεις Java

Εαρινό. Ύλη εργαστηρίου, Ασκήσεις Java Εξάμηνο Μάθημα Τίτλος 2017 2018 Εαρινό Αντικειμενοστραφής Προγραμματισμός Ι Ύλη εργαστηρίου, Ασκήσεις Java Ημερομηνία Εργαστήριο 5 ο Α. Ύλη εργαστηρίου 5.1 Έννοιες αντικειμενοστραφούς προγραμματισμού,

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

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

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

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

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ

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

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

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

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

ΕΝΟΤΗΤΑ 12 ΣΕΙΡΙΑΚΗ ΔΙΕΠΑΦΗ

ΕΝΟΤΗΤΑ 12 ΣΕΙΡΙΑΚΗ ΔΙΕΠΑΦΗ ΕΝΟΤΗΤΑ 12 ΣΕΙΡΙΑΚΗ ΔΙΕΠΑΦΗ Στόχος και Περίγραμμα της Ενότητας 12 Στόχος της παρουσίασης Παρουσίαση της βασικής ιδέα και απλών παραδειγμάτων που δίνουν στο Arduino τη δυνατότητα να επικοινωνήσει με οποιαδήποτε

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

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

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

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

Γνωρίστε το Excel 2007

Γνωρίστε το Excel 2007 Εισαγωγή τύπων Γνωρίστε το Excel 2007 Πληκτρολογήστε το σύμβολο της ισότητας (=), χρησιμοποιήστε ένα μαθηματικό τελεστή (+,-,*,/) και πατήστε το πλήκτρο ENTER. Πρόσθεση, διαίρεση, πολλαπλασιασμός και αφαίρεση

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

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

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

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

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

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

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

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

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

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 2)

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 2) Τμήμα Μηχανικών Πληροφορικής Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 2) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Δρ. Δημήτρης Βαρσάμης Αριθμητικές Μέθοδοι (E 2) Σεπτέμβριος 2015

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

Ινστιτούτο Επαγγελµατική Κατάρτιση Κορυδαλλού "ΤΕΧΝΙΚΟΣ ΣΥΣΤΗΜΑΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ" (Ερωτήσεις Πιστοποίησης στην γλώσσα προγραµµατισµού C)

Ινστιτούτο Επαγγελµατική Κατάρτιση Κορυδαλλού ΤΕΧΝΙΚΟΣ ΣΥΣΤΗΜΑΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ (Ερωτήσεις Πιστοποίησης στην γλώσσα προγραµµατισµού C) Ινστιτούτο Επαγγελµατική Κατάρτιση Κορυδαλλού "ΤΕΧΝΙΚΟΣ ΣΥΣΤΗΜΑΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ" (Ερωτήσεις Πιστοποίησης στην γλώσσα προγραµµατισµού C) ΚΑΤΑΛΟΓΟΣ ΕΡΩΤΗΣΕΩΝ ΕΡΩΤΗΣΕΙΣ ΕΙ ΙΚΩΝ ΓΝΩΣΕΩΝ (γλώσσα προγραµµατισµού

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

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

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

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

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

Προγραμματισμός ΙI (Θ) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός ΙI (Θ) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2017 Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017

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

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

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

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

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

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

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

Πρόβλημα 29 / σελίδα 28

Πρόβλημα 29 / σελίδα 28 Πρόβλημα 29 / σελίδα 28 Πρόβλημα 30 / σελίδα 28 Αντιμετάθεση / σελίδα 10 Να γράψετε αλγόριθμο, οποίος θα διαβάζει τα περιεχόμενα δύο μεταβλητών Α και Β, στη συνέχεια να αντιμεταθέτει τα περιεχόμενά τους

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

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

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

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

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

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

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

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

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

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

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος Κεφάλαιο 10 Υποπρογράμματα 1 10.1 Τμηματικός προγραμματισμός Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης και ανάπτυξης των προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων.

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

επιµέλεια Θοδωρής Πιερράτος

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

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

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

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

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

Προβλήματα που αφορούν εντολές ελέγχου της ροής ενός προγράμματος.

Προβλήματα που αφορούν εντολές ελέγχου της ροής ενός προγράμματος. Κεφάλαιο ΙΙ Προβλήματα που αφορούν εντολές ελέγχου της ροής ενός προγράμματος. Στο παρόν κεφάλαιο παρουσιάζονται προβλήματα τα οποία αφορούν κυρίως τις εντολές της C οι οποίες ελέγχουν την ροή εκτέλεσης

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

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

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

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

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

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

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

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

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

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

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

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

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

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ ) Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ. 147 159) Για τις γλώσσες προγραμματισμού πρέπει να έχουμε υπόψη ότι: Κάθε γλώσσα προγραμματισμού σχεδιάζεται για συγκεκριμένο σκοπό, δίνοντας ιδιαίτερη

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

Φύλλα εργασίας. MicroWorlds Pro. Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο. Β. Χ. Χρυσοχοΐδης

Φύλλα εργασίας. MicroWorlds Pro. Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο. Β. Χ. Χρυσοχοΐδης Φύλλα εργασίας MicroWorlds Pro Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο Β. Χ. Χρυσοχοΐδης Πρόεδρος Συλλόγου Εκπαιδευτικών Πληροφορικής Φλώρινας 2 «Σχεδίαση και ανάπτυξη δραστηριοτήτων

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