ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. Μερικές χρήσιμες οδηγίες

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

Download "ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. Μερικές χρήσιμες οδηγίες"

Transcript

1 ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Μερικές χρήσιμες οδηγίες Ιωάννινα-Κοζάνη, Ιανουάριος Α. Στάδια Ανάπτυξης Γενικά, διακρίνουμε τη φάση της ανάλυσης, του σχεδιασμού και της υλοποίησης. Για το κάθε ένα από αυτά υπάρχει πολλή θεωρία και σχολές για το πώς πρέπει να γίνονται όταν πρόκειται για κάποιο μεγάλο project. Εδώ θα περιοριστούμε βέβαια, σε απλές καιπρακτικές συμβουλές. Ανάλυση Πριν προχωρήσουμε στην υλοποίηση ενός προγράμματος για την επίλυση συγκεκριμένου προβλήματος, αναλύουμε αυτό το πρόβλημα. Όσο καλύτερη η ανάλυση τόσο περισσότερο κόπο γλιτώνουμε όταν αναπτύσσουμε και αργότερα αναβαθμίζουμε το πρόγραμμά μας. Σχεδιασμός Όταν σχεδιάζουμε ένα πρόγραμμα είναι καλό να αναρωτηθούμε: αν χρειαστεί να κάνω κάτι ελαφρά διαφορετικό από αυτό που θέλω τώρα, πόσο εύκολα θα μπορέσω να τροποποιήσω το πρόγραμμά μου για να το πετύχω αυτό; Θα μπορώ να το προσαρμόσω με όσο το δυνατό πιο λίγες αλλαγές σε όσο το δυνατό πιο λίγα σημεία; Ή μήπως θα χρειαστεί να το ξαναγράψω από την αρχή; Πρακτικά, αυτό επιτυγχάνεται με το να επιδιώκουμε να βρούμε τουλάχιστον δύο τρόπους για την υλοποίηση μιας ενέργειας και να διαλέγουμε αυτόν που έχει λιγότερα στοιχεία τα οποία ενδέχεται να αλλάξουν στο μέλλον. Υλοποίηση Αυτό είναι πολύ απλά ο καθαυτό προγραμματισμός. Σε αυτό το σημείο θα πρέπει να πούμε ότι είναι χρήσιμο να σπάζουμε το πρόγραμμά μας σε επιμέρους αρχεία με συναρτήσεις που μπορεί να χρησιμοποιήσουμε και σε άλλα έργα. Όσο μεγαλώνει ένα project και γίνεται πιο πολύπλοκο, με περισσότερα ιεραρχικά επίπεδα, αυξάνεται η ανάγκη να χρησιμοποιούμε αρχεία επικεφαλίδας για να περιλαμβάνουμε συναρτήσεις και άλλα στοιχεία που έχουμε ορίσει, όπου χρειάζεται. Σε ένα αρχείο επικεφαλίδας μπορώ να περιλάβω τα εξής: ορισμούς συμβολικών σταθερών άλλες οδηγίες #include δηλώσεις δομών και ενώσεων δεδομένων που θα μου χρειαστούν στις συναρτήσεις μου δηλώσεις τύπων απαρίθμησης δηλώσεις νέων τύπων (απλών και παραγώγων) με struct και typedef δηλώσεις πρωτότυπων συναρτήσεων εξωτερικές μεταβλητές κλπ. Τα αρχεία επικεφαλίδας είναι καλό να έχουν και το κατάλληλο περιτύλιγμα που τα προφυλάσσει από πολλαπλή συμπερίληψη: #ifndef MYHEADER_H #define MYHEADER_H... (περιεχόμενα του αρχείου)... #endif Όσο πιο μεγάλο το πρόγραμμα τόσο πιο χρήσιμη είναι αυτή η πρακτική. Μερικά πρακτικά θέματα Κρατάμε ένα ημερολόγιο της ανάπτυξης του λογισμικού. Επίσης, καθώς αναπτύσσουμε τις συναρτήσεις μας, καλό είναι να γράφουμε κάπου πώς λειτουργούν και τι κάνουν αυτές, είτε για προσωπική μας χρήση είτε για να βοηθήσουμε όποιον άλλον βασιστεί στο πρόγραμμά μας. Όταν θέλουμε να κάνουμε κάτι πολυσύνθετο, γράφουτε στο χαρτί ή στον ΗΥ με λόγια ένα-ένα τα βήματα που θα κάνουμε 1) πρώτα αυτό 2) μετά εκείνο και τα ακολουθούμε πιστά. Κρατάμε αντίγραφα ασφαλείας του κώδικα που αναπτύσσετε! Δεν είναι αδύνατο να σβήσουμε

2 κατά λάθος το αποτέλεσμα δουλειάς πολλών ημερών! Η C μας δίνει μεγάλη ελευθερία στο στυλ γραφής. Δεν πρέπει να κάνουμε κακή χρήση αυτής της ελευθερίας. Να υιοθετήσουμε ένα ευανάγνωστο ύφος και με αυτό να γράφουμε πάντα τα δικά μας προγράμματα. Επίσης, προσθέτουμε διευκρινιστικά σχόλια σε διάφορα σημεία. Σαν ένας πρακτικός ορισμός μπορεί να ειπωθεί ότι το ιδανικό δομημένο πρόγραμμα είναι αυτό που μπορούμε να το διαβάσουμε από την αρχή μέχρι το τέλος χωρίς το μάτι να πηδήσει σε προηγούμενες ή επόμενες σειρές ούτε μία φορά και στο τέλος να έχουμε καταλάβει 100% τι κάνει. Το να επιτύχουμε πλήρως αυτό το στόχο είναι πρακτικά ανέφικτο, επιδιώκουμε όμως να τείνουμε όσο το δυνατό πιο κοντά στο ιδανικό. Μια συνοπτική παρουσίαση των σταδίων ανάπτυξης μπορεί να είναι και η εξής: ξεκινάμε από απαιτήσεις εισόδου και εξόδου κάνουμε διάγραμμα ροής δεδομένων και καθορίζουμε τις συναρτήσεις Σπάμε το πρόγραμμα σε υποπρογράμματα και αυτά σε μικρότερα, αν χρειαστεί. Αυτά καλό είναι να κυμαίνονται από 20 ως 50 γραμμές κώδικα (περίπου μία οθόνη). Ανάλυση από πάνω προς τα κάτω, υλοποίηση (γράψιμο κώδικα) από κάτω προς τα πάνω. Δηλαδή, αφού έχουμε σχεδιάσει το πρόγραμμα, αρχίζουμε να γράφουμε τις θεμελιωδέστερες συναρτήσεις και μετά αυτές που τις καλούν κ.ο.κ. μέχρι να φτάσουμε στην κορυφή που είναι η main. Μετά, ακολουθεί το στάδιο των διορθώσεων (εδώ μπορεί και να διαπιστώσουμε ότι πρέπει να αλλάξουν διάφορα στοιχεία του σχεδιασμού επειδή δεν είχαμε προβλέψει όσα μπορεί να πάνε στραβά). Β. Δοκιμές και διορθώσεις Αυτό είναι ίσως και το κομμάτι που φοβίζει περισσότερο και φαίνεται σαν η πιο μεγάλη ταλαιπωρία (ίσως όχι άδικα). Γι' αυτό και δίνουμε μεγαλύτερη έκταση σε αυτό το μέρος. Συνηθισμένα λάθη και ύποπτα σημεία Μερικά λάθη είναι τόσο συνηθισμένα (και όχι μόνο μεταξύ των αρχάριων!) ώστε αξίζει να τα καταγράψουμε και να τα ελέγχουμε ως συνήθεις ύποπτους κάθε φορά που κάτι πάει στραβά ακόμη κι όταν δεν πάει κάτι φανερά στραβά! Τα περισσότερα από αυτά θα εκδηλωθούν είτε κατά τη μεταγλώττιση είτε κατά την εκτέλεση, αλλά υπάρχουν και μερικά που θα περάσουν και τα δύο αυτά στάδια και θέλουν ιδιαίτερη προσοχή. Αν κάθε φορά που έχουμε σφάλμα ψάχνουμε πρώτα ανάμεσα σε αυτά, τα συνήθη λάθη, σύντομα θα συνηθίσουμε και θα τα βρίσκουμε κατευθείαν. Ας κάνουμε λοιπόν στον εαυτό μας τις παρακάτω ερωτήσεις: 1. βάλαμε ελληνικό ερωτηματικά (;) στο τέλος κάθε απλής εντολής; μήπως λείπει από καμία; 2. βάλαμε ελληνικό ερωτηματικό στο τέλος της do...while; μήπως λείπει από καμία τέτοια; 3. μήπως κατά λάθος βάλαμε και κανένα παραπανήσιο ελληνικό ερωτηματικό σε καμία σύνθετη εντολή if, for, while; (π.χ. έπρεπε να γράψουμε while(x>0){...διάφορες εντολές...} και γράψαμε while(x>0) ; {...διάφορες εντολές...} που είναι συντακτικά σωστό αλλά τελείως διαφορετικό από εκείνο που θέλαμε! 4. κλείσαμε όλα τα άγκιστρα { και } ; Τα άγκιστρα πάνε πάντα σε ζευγάρια` όποιος ξέρει να βάζει σωστά τα άγκιστρα ξέρει το 50% του δομημένου προγραμματισμού! 5. κλείσαμε όλες τις παρενθέσεις ( και ) ; 6. κλείσαμε όλα τα διπλά εισαγωγικά και ; 7. βάλαμε τη σωστή προδιαγραφή μορφοποίησης στις εντολές printf και scanf (%d για ακέραιους, %f για πραγματικούς, %c για χαρακτήρες, %s για αλφαριθμητικά) ; 8. γράψαμε με τον ίδιο συνδυασμό μικρών και κεφαλαίων ένα όνομα μεταβλητής ή συνάρτησης σε όλη του την εμβέλεια (κύριο πρόγραμμα ή συνάρτηση όπου εμφανίζεται); Όπως δηλώσαμε ένα όνομα, έτσι πρέπει και να εμφανίζεται παντού. Άλλο το abc, άλλο το Abc και άλλο το ABC. 9. μήπως μπερδέψαμε κάπου το 0 (μηδέν) με το Ο (κεφαλαίο όμικρον); 10. έχουμε μία και μόνο μία συνάρτηση main στο πρόγραμμά μας ή κάνοντας copy-paste από εδώ κι από εκεί προσθέσαμε και... διεκδικητή για την αρχηγία του προγράμματος; 11. έχουμε κάνει include το αρχείο επικεφαλίδας που χρειάζεται για τη δουλειά μας; 12. μήπως έχουμε μπερδέψει τα σημεία στίξης (τελεία αντί για κόμμα, κόμμα αντί για τελεία,

3 κόμμα ή τελεία αντί για ελληνικό ερωτηματικό μέσα σε ένα for κλπ) ; 13. μήπως μπερδέψαμε κάποιο άγκιστρο με παρένθεση ή το ανάποδο; 14. μήπως αντί για αγκύλες [ ] στα στοιχεία ενός πίνακα βάλαμε παρενθέσεις ( και ); (συνηθισμένο σφάλμα του διδάσκοντα που επί χρόνια προγραμμάτιζε σε Fortran όπου δεν υπάρχουν αγκύλες!) Σε αυτή την περίπτωση ο μεταγλωττιστής θα νομίσει ότι πρόκειται για κάποια συνάρτηση και πιθανότατα δε θα πει τίποτε! 15. Μήπως έχουμε ξεχάσει να δηλώσουμε κάποια συνάρτηση ή την ορίζουμε μετά τη main χωρίς να προηγείται έστω το πρωτότυπο ή έχουμε ξεχάσει κάποιο δικό μας header file όπου δηλώνουμε τις συναρτήσεις μας; 16. Μήπως έχουμε βάλει τελεστή ανάθεσης (απλό ίσον, =) αντί για τελεστή ελέγχου ισότητας (διπλό ίσον, = =); Π.χ. το if(x == y) και το if(x = y) είναι και τα δύο συντακτικά σωστά και ο μεταγλωττιστής δε θα παραπονεθεί καθόλου! Αλλά το πρώτο σημαίνει: αν το x είναι ίσο με το y, τότε.... Ενώ το δεύτερο σημαίνει: θέσε x ίσο με το y αν τώρα, το x είναι διαφορετικό από μηδέν, τότε.... Καμία σχέση το ένα με το άλλο! 17. Μήπως περνάμε σε μια συνάρτηση ορίσματα κατά τιμή ενώ θέλαμε να τα περάσουμε κατά διεύθυνση; ή το αντίστροφο; 18. Μήπως το όνομα μιας εξωτερικής μεταβλητής είναι ακριβώς ίδιο με αυτό μιας τοπικής; Θυμηθείτε ότι σε μια τέτοια περίπτωση, η τοπική υπερισχύει (overrides) πάνω στην εξωτερική. Οσο πιο τοπική τόσο περισσότερο υπερισχύει και είναι σα να μην υπάρχει η πιο εξωτερική. 19. Μήπως οι αριθμοδείκτες ενός πίνακα έγιναν μεγαλύτεροι από το μέγεθός του ή μικρότεροι από το μηδέν; 20. Μήπως ζητάμε το περιεχόμενο (κάνουμε dereference) ενός δείκτη που δε δείχνει κάπου; Ένα συνηθισμένο σφάλμα εκτέλεσης είναι το λεγόμενο segmentation fault: αυτό οφείλεται σε αναφορά σε περιοχή της μνήμης που δεν έχει δεσμευτεί, π.χ. όταν ένας αριθμοδείκτης ξεπερνά τα όρια ενός πίνακα, για παράδειγμα, έχουμε έναν πίνακα με 5 στοιχεία, example[5] και ζητάμε το έκτο: i = 5;...; x = example[i]; Αλλη συχνή περίπτωση που οδηγεί σε τέτοιο σφάλμα είναι κακή χρήση των δεικτών. Οι δείκτες πρέπει να δείχνουν κάπου (εκτός από NULL) αν θέλουμε να πάρουμε το περιεχόμενό τους. Αν ένας δείκτης δεν έχει οριστεί να δείχνει σε κάποια μεταβλητή θα πάρουμε τέτοιο σφάλμα. Ιδιαίτερα πονηρό σφάλμα είναι εκείνο κατά το οποίο ένας δείκτης έχει τεθεί ίσος με τη διεύθυνση κάποιου άλλου ο οποίος σε κάποια στιγμή γίνεται NULL. Παράδειγμα: int x, **p, *q;... q = &x; p = &q;... q = NULL;... printf( έχουμε και λέμε: %d \n, **p); /* segmentation fault! */ Ενέργειες και πρωτοβουλίες για διόρθωση σφαλμάτων Αφού τελειώσουμε με τα συντακτικά σφάλματα απομένουν τα σφάλματα εκτέλεσης και τα λογικά σφάλματα. Για να τα βρούμε, αν αποτύχει ο έλεγχος με βάση τις ερωτήσεις που δώσαμε πιο πάνω, θα πρέπει να δοκιμάσουμε το πρόγραμμα βάζοντάς του δεδομένα για τα οποία ξέρουμε το αποτέλεσμα (π.χ. από υπολογισμό με το χέρι, από τη θεωρία τη σχετική με το πρόβλημα, από άλλα προγράμματα που ξέρουμε ότι δουλεύουν σωστά για το συγκεκριμένο πρόβλημα και τα συγκεκριμένα δεδομένα κλπ). Αν υποθέσουμε ότι βγαίνει ένα λάθος αποτέλεσμα ή ακόμη και ένα σφάλμα εκτέλεσης και δεν ξέρουμε πού ακριβώς προκύπτει τότε, για να βρούμε την πηγή του, εφαρμόζουμε τη μέθοδο της διχοτόμησης. Αυτή συνίσταται στα εξής βήματα: α) βεβαιωνόμαστε ότι τα δεδομένα εισόδου είναι εν τάξει (π.χ. δεν έχουμε βάλει χαρακτήρα αντί για ακέραιο, τιμή μιας μεταβλητής στη θέση μιας άλλη κλπ). β) τότε το λάθος προφανώς βρίσκεται κάπου μεταξύ της ανάγνωσης δεδομένων και του τέλους του προγράμματος. Βάζουμε κάπου στη μέση του προγράμματος μια εντολή printf για την εκτύπωση μιας ή περισσότερων μεταβλητών που έχουν σχέση με το λάθος που αντιμετωπίζουμε. Έτσι το

4 πρόγραμμα χωρίστηκε σε δύο μέρη. Αν παίρνουμε λογικές και αναμενόμενες τιμές τότε το λάθος βρίσκεται στο δεύτερο μέρος, μετά από την printf, αλλιώς το πρόβλημα βρίσκεται στο πρώτο μέρος, πριν από την printf. γ) Στο μέρος του προγράμματος που εντοπίσαμε εφαρμόζουμε και πάλι την ίδια διαδικασία, δηλαδή βάζουμε μία printf κάπου στη μέση και με τη βοήθειά της διαπιστώνουμε σε ποια υποπεριοχή του προγράμματος εντοπίζεται το λάθος. δ) Συνεχίζοντας έτσι και μπαίνοντας σε καλούμενα υποπρογράμματα αν χρειαστεί, εντοπίζουμε ακριβώς το σημείο όπου παρουσιάζεται το λάθος. Ειδικά στην περίπτωση που εντοπίζουμε λάθος στην κλήση μιας συνάρτησης, πριν μπούμε στο εσωτερικό της, πρέπει να ελέγξουμε αν τα ορίσματα περνάνε μέσω τιμής ή μέσω διεύθυνσης και να βεβαιωθούμε αν είναι αυτό που θέλουμε. Τώρα, έστω ότι εντοπίσαμε πού ακριβώς υπάρχει σφάλμα αλλά δεν καταλαβαίνουμε τι φταίει. Μία λύση είναι να τροποποιήσουμε το πρόγραμμα και να δοκιμάσουμε να κάνουμε αυτό που γίνεται εκεί με κάποιον άλλο ισοδύναμο τρόπο. Αν το λάθος διορθώθηκε τότε είμαστε εν τάξει και επίσης, μπορεί να γίνει φανερό τι έφταιγε. Αν δε διορθώθηκε μπορεί τουλάχιστον να γίνει πιο σαφής η προέλευσή του. Μία άλλη ενέργεια που πρέπει να κάνουμε είναι να ψάξουμε όχι μόνο αυτό που υπάρχει αλλά και αυτό που δεν υπάρχει. Συγκεκριμένα, ας δώσουμε ένα παράδειγμα από πραγματική εμπειρία με τις σειρές ασκήσεων του μαθήματος. Στην έκτη σειρά ασκήσεων υπήρχε η παρακάτω εντολή: vector vec = newvector( ); Η συνάρτηση newvector αρχικοποιούσε μια μεταβλητή τύπου vector όπου vector ήταν μια δομή δεδομένων για την αναπαράσταση διανυσμάτων στο επίπεδο. Ενώ όλο το υποπρόγραμμα ήταν ακριβώς ίδιο με αυτό που δινόταν στο φυλλάδιο (το οποίο ήταν δοκιμασμένο), σε κάποια δοκιμή το πρόγραμμα δεν μεταγλωττιζόταν αλλά σταματούσε με το μήνυμα invalid initializer με αριθμό γραμμής αυτόν της παραπάνω εντολής. Αυτό που είχε συμβεί ήταν ότι στο αντίστοιχο header file έλειπε η δήλωση της συνάρτησης newvector, δηλαδή η παρακάτω γραμμή vector newvector( void ); η οποία είχε σβηστεί κατά λάθος σε κάποιο copy-paste. Εξ αιτίας αυτού του τυχαίου σβησίματος δεν πάει αμέσως το μυαλό στο να ελέγξουμε το αντίστοιχο αρχείο, ωστόσο τέτοια λάθη συμβαίνουν αρκετά συχνά, με πιο συνηθισμένη περίπτωση το να ξεχάσουμε μια προσωρινή, δοκιμαστική αλλαγή που κάναμε προηγουμένως. Τα παραπάνω μας οδηγούν να διατυπώσουμε τους εξής κανόνες: α) όταν εμφανίζεται ένα ακατανόητο πρόβλημα σε μια εντολή, ελέγχουμε αν όλα είναι εν τάξει με τις μεταβλητές, συναρτήσεις κλπ που εμφανίζονται σε αυτή την εντολή (π.χ. οι συναρτήσεις είναι δηλωμένες στα header files, οι μεταβλητές είναι του τύπου που θέλουμε κλπ). β) προσοχή στα copy-paste! γ) ο,τι αλλάζουμε, αφαιρούμε ή προσθέτουμε προσωρινά, θυμόμαστε να το επαναφέρουμε ή διαγράψουμε όταν τελειώσουμε με τις δοκιμές! Άλλες πρακτικές οδηγίες Όταν το πρόγραμμα τυπώνει λάθος αποτελέσματα, πρώτα κυττάζουμε μήπως έχουμε λάθος κωδικό μορφοποίησης σε κάποια εντολή printf ή fprintf, π.χ. θέλουμε να τυπώσουμε ένα float και αντί για %d βάζουμε %f ή θέλουμε να το αλλάξουμε και να τυπώσουμε ένα double αλλά ξεχνάμε να αλλάξουμε το %f σε %lf. Η πρόσθεση δεικτών δεν είναι αποδεκτή πράξη. Αλλά η αφαίρεση είναι αποδεκτή κι έτσι π.χ. μπορούμε να βρούμε τη μεσαία θέση μεταξύ δύο δεικτών ως εξής: mid = low+(high-low)/2; (ενώ το mid = (low+high)/2 θα ήταν λάθος). Έστω ένας πίνακας Α[n]. Τότε τα στοιχεία Α[-1] και Α[n] είναι έξω από τα όρια του πίνακα. Ωστόσο, οι αριθμητικές πράξεις δεικτών που περιλαμβάνουν το πρώτο στοιχείο μετά το τέλος του πίνακα, δηλαδή το A[n], επιτρέπονται και θα λειτουργήσουν σωστά. Γ. Οι μεταγλωττιστές στην πράξη Windows, πρόγραμμα Dev-C++ Οι οδηγίες αυτές βασίστηκαν στην έκδοση , αλλά λίγο-πολύ ισχύουν και για την παλιότερη έκδοση που χρησιμοποιήθηκε στο μάθημα.

5 Έστω ότι θέλουμε να αναπτύξουμε ένα πρόγραμμα που αποτελείται από τρία αρχεία: το pmain.c, το plib.c και το plib.h. Το πρώτο περιέχει την κύρια συνάρτηση (main), το δεύτερο ορίζει κάποιες συναρτήσεις που θα αναπτύξουμε και το τρίτο έχει τις δηλώσεις αυτών των συναρτήσεων και άλλα στοιχεία (εξωτερικές μεταβλητές, ορισμούς συμβολικών σταθερών κλπ). Ακολουθούμε τα εξής βήματα: Αρχείο ---> Νέο > Έργο [Enter]: μας βγάζει σε ένα παράθυρο που έχει διάφορους τύπους εφαρμογών. Διαλέγουμε: Console Application και από κάτω επιλέγουμε C project (ή έργο C). Στο κουτάκι κάτω αριστερά γράφουμε ένα όνομα για το έργο, π.χ. ptest και πατάμε ΟΚ. Μας βγάζει το σχετικό πλαίσιο όπου ζητείται να διαλέξουμε πού θα σώσουμε το project. Αφού διαλέξουμε φάκελλο, μας ανοίγει το project με ένα αρχείο που έχει τα παρακάτω περιεχόμενα: #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { system("pause"); return 0; } (στην έκδοση που είχαμε στο μάθημα λείπουν το stdlib.h και το system( PAUSE )). Αριστερά, φαίνεται η δομή του project με τα αρχεία που περιέχει (προς το παρόν ένα με default όνομα main.c). Αυτό το αρχείο που έχει ήδη τη main (εμείς απλώς θα συμπληρώσουμε ο,τι μας χρειάζεται) θα το σώσουμε ως pmain.c Πάμε: Αρχείο ---> Αποθήκευση ως... [Enter] και στο σχετικό πλαίσιο γράφουμε όνομα pmain. Από κάτω από εκεί που βάζουμε το όνομα υπάρχει ο τύπος του αρχείου. Εκεί λέει C source files (*.c). Δεν το αλλάζουμε. Σώζουμε το αρχείο. Τώρα, θα προσθέσουμε το αρχείο plib.c που θα περιέχει τις συναρτήσεις μας. Πάμε: Αρχείο ---> Νέο > Πηγαίο Αρχείο [Enter] Μας βγάζει ερώτηση Να προστεθεί το νέο αρχείο στο έργο; Πατάμε Yes. Στο αριστερό πλαίσιο θα δούμε το νέο αρχείο στη δομή του project ως Ανώνυμο. Το αρχείο αυτό είναι στο προσκήνιο και είναι κενό. Θα το σώσουμε ως plib.c. Πάμε: Αρχείο ---> Αποθήκευση ως... [Enter] και στο σχετικό πλαίσιο γράφουμε όνομα plib. Από κάτω από εκεί που βάζουμε το όνομα υπάρχει ο τύπος του αρχείου. Εκεί λέει C source files (*.c). Δεν το αλλάζουμε. Σώζουμε το αρχείο. Τώρα, θα προσθέσουμε το αρχείο plib.h που θα περιέχει τις δηλώσεις των συναρτήσεων μας. Πάμε: Αρχείο ---> Νέο > Πηγαίο Αρχείο [Enter] Μας βγάζει ερώτηση Να προστεθεί το νέο αρχείο στο έργο; Πατάμε Yes. Στο αριστερό πλαίσιο θα δούμε το νέο αρχείο στη δομή του project ως Ανώνυμο. Το αρχείο αυτό είναι στο προσκήνιο και είναι κενό. Θα το σώσουμε ως plib.h. Πάμε: Αρχείο ---> Αποθήκευση ως... [Enter] και στο σχετικό πλαίσιο γράφουμε όνομα plib. Από κάτω από εκεί που βάζουμε το όνομα υπάρχει ο τύπος του αρχείου. Εκεί λέει C source files (*.c). Πατάμε το μικρό βελάκι για να ανοίξει το πτυσσόμενο μενού και διαλέγουμε Header files (*.h, *.hpp, *.rh, *.hh). Σώζουμε το αρχείο.

6 Προσθέτουμε στο αρχείο plib.h το παρακάτω περιεχόμενο: #ifndef PLIB_H #define PLIB_H #include <stdio.h> void myfunction( void ); #endif Παρατηρείστε ότι περιλάβαμε και το αρχείο stdio.h. Σώζουμε το αρχείο από Αρχείο ---> Αποθήκευση ή από το σχετικό εικονίδιο. Προσθέτουμε στο αρχείο plib.c το παρακάτω περιεχόμενο: #include "plib.h" void myfunction ( void ) { printf("\nthis is a function\n"); } Τώρα καταλαβαίνουμε ότι έπρεπε να μπει κάπου και το stdio.h αφού υπάρχει μία printf. Εμείς επιλέξαμε να το βάλουμε στο plib.h το οποίο μετά κάνουμε include εδώ. Σώζουμε το αρχείο από Αρχείο ---> Αποθήκευση ή από το σχετικό εικονίδιο. Προσθέτουμε στο αρχείο pmain.c το παρακάτω περιεχόμενο (με έντονα γράμματα τα καινούρια στοιχεία που προσθέτουμε): #include <stdio.h> #include <stdlib.h> #include "plib.h" int main(int argc, char *argv[]) { myfunction(); system("pause"); return 0; } Σώζουμε το αρχείο από Αρχείο ---> Αποθήκευση ή από το σχετικό εικονίδιο. Μεταγλώττιση: Εκτέλεση ---> Δημιουργία. Διαβάζουμε τα μηνύματα στο κάτω μέρος. Αν υπάρχει κάποιο μήνυμα λάθους μπορούμε να μεταβούμε στο σημείο στο οποίο αναφέρεται κάνοντας διπλό κλικ στο μήνυμα. Τότε, η αντίστοιχη γραμμή στο πρόγραμμα θα τονιστεί. Εκτέλεση: Εκτέλεση ---> Εκτέλεση ή Εκτέλεση ---> Δημιουργία και Εκτέλεση. UNIX/Linux Για αρκετά μικρές εφαρμογές τα πράγματα είναι πολύ απλά αφού μπορούμε να βάλουμε όλα τα

7 αρχεία μας (πηγαία και επικεφαλίδας) σε ένα κατάλογο, να μεταβούμε εκεί από τη γραμμή εντολών και να τυπώσουμε cc pmain.c plib.c και να πατήσουμε Enter (δε χρειάζεται να περιλάβουμε το plib.h). Το εκτελέσιμο αρχείο θα έχει το όνομα a.out οπότε για να το τρέξουμε αρκεί να τυπώσουμε./a.out και να πατήσουμε Enter. Αν θέλουμε να δώσουμε άλλο όνομα στο αρχείο, π.χ. myprog, μπορούμε να τυπώσουμε: cc pmain.c plib.c -o myprog και μετά, για να το τρέξουμε:./myprog Για πιο μεγάλα projects με πολλά αρχεία πηγαίου κώδικα και επικεφαλίδας μπορούμε να χρησιμοποιήσουμε το make, ένα utility του UNIX/Linux που επιτρέπει να μεταγλωττίζονται μόνο τα αρχεία που τροποποιήσαμε και όχι όλο το πρόγραμμα από την αρχή. Για να τρέξει το make πρέπει να φτιάξουμε ένα αρχείο κειμένου το οποίο λέγεται makefile και περιέχει οδηγίες για το make ώστε να κάνει τη μεταγλώττιση. Το makefile πρέπει να βρίσκεται στον ίδιο κατάλογο με τα άλλα αρχεία μας. Ένα αρχείο makefile για το παράδειγμά μας θα μπορούσε να είναι το εξής:.c.o: cc -c -g $*.c OBJECTS = pmain.o plib.o CMD = test.exe $(CMD): $(OBJECTS) makefile cc -o $(CMD) $(OBJECTS) clean: /bin/rm *.o ## Dependencies pmain.o: plib.h plib.o: plib.h plib.h: Οι γραμμές που αρχίζουν με # είναι σχόλια (και όχι οδηγίες στον προεπεξεργαστή! - αυτό δεν είναι γραμμένο σε γλώσσα C!) Στην αρχή, δίνεται ο κανόνας που λέει οτι ο μεταγλωττιστής (cc) θα κάνει μεταγλώττιση κάθε πηγαίου αρχείου με κατάληξη c. Από αυτά θα προκύψουν τα αντικειμενικά αρχεία με κατάληξη o. Στα αρχεία αυτά δίνουμε συλλογικά το όνομα OBJECTS, ενώ το εκτελέσιμο αρχείο (CMD) θέλουμε να λέγεται test.exe. Οι επόμενες γραμμές λένε ότι ο μεταγλωττιστής (βασικά ο linker) θα πάρει τα εκτελέσιμα και θα τα ενώσει για να δώσει το εκτελέσιμο με το όνομα που ορίσαμε. Μπορούμε να ορίσουμε επίσης και πρόσθετες λειτουργίες όπως με το προσδιοριστικό clean που μπορούμε να το θέσουμε σαν επιλογή στο make και τότε αυτό θα έχει σαν αποτέλεσμα να σβηστούν τα αντικειμενικά αρχεία και να μείνουν μόνο τα πηγαία και το εκτελέσιμο. Τέλος, καθορίζονται και οι εξαρτήσεις, δηλαδή ποιο αρχείο σχετίζεται με ποια, ώστε αν αλλάξουν αυτά να μεταγλωττιστούν εκ νέου και όσα εξαρτώνται από αυτά. Παραδείγματα: Με έναν editor (όπως ο vi, emacs ή gedit) μπορούμε να γράψουμε τα τρία αρχεία pmain.c, plib.c και plib.h που περιγράψαμε πιο πάνω, καθώς και το makefile με τα παραπάνω περιεχόμενα. Αν γράψουμε απλά

8 make και πατήσουμε Enter θα δούμε τα εξής: cc -c -g pmain.c cc -c -g plib.c cc -o test.exe pmain.o plib.o δηλαδή πρώτα μεταγλωττίστηκαν ένα-ένα τα αρχεία c και μετά ενώθηκαν. Η επιλογή -g επιτρέπει να ενσωματωθούν χρήσιμες πληροφορίες για τη χρήση προγραμμάτων αποσφαλμάτωσης (debugging). Η επιλογή -c εμποδίζει το linker να δράσει, δηλαδή να ενώσει το αντικειμενικό αρχείο με τις βιβλιοθήκες πριν μεταγλωττιστούν και τα υπόλοιπα, ώστε να μπορέσει να τα ενώσει όλα μαζί στο τέλος. Αν πάμε να αλλάξουμε ένα αρχείο, π.χ. το plib.c (π.χ. να προσθέσουμε ένα σχόλιο) και μετά ξαναγράψουμε make, θα δούμε το εξής: cc -c -g plib.c cc -o test.exe pmain.o plib.o δηλαδή μόνο το αλλαγμένο αρχείο μεταγλωττίστηκε ξανά. Αν ξανατρέξουμε το make, θα δούμε το εξής: make: `test.exe' is up to date. με προφανές νόημα. Μπορούμε να δοκιμάσουμε και την επιλογή clean: > make clean /bin/rm *.o και αν ξανατρέξουμε το make θα πάρουμε: cc -c -g pmain.c cc -c -g plib.c cc -o test.exe pmain.o plib.o αφού τώρα δεν υπάρχουν μεταγλωττισμένα αρχεία πηγαίου κώδικα (τα σβήσαμε όλα με το clean). Τέλος, αν αλλάξουμε το plib.h από το οποίο εξαρτώνται τα άλλα δύο, όπως περιγράφεται και στο makefile, και τρέξουμε το make θα πάρουμε το εξής: cc -c -g pmain.c cc -c -g plib.c cc -o test.exe pmain.o plib.o αφού λόγω της εξάρτησης πρέπει να ενημερωθούν και τα άλλα δύο αρχεία που έχουν κάνει include το plib.h

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

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

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

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή

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

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

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

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η

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

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

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

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

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

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

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

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εργαστήριο 9η εβδομάδα. Κοζάνη, 2 Δεκεμβρίου 2008. Δίνονται παραδείγματα που αποσαφηνίζουν και συμπληρώνουν όσα αναφέρθηκαν στο μάθημα σχετικά με τις δομές

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

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

Προγραμματισμός Ι. Πολλαπλά Αρχεία. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Πολλαπλά Αρχεία Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Πολλαπλά Αρχεία Όταν γράφουμε μεγάλα προγράμματα θέλουμε να έχουμε ανεξάρτητα κομμάτια κώδικα

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

Πώς γίνεται το debug? Το debug γίνεται με δύο τρόπους, ως επί το πλείστον. Τουλάχιστον, εγώ δύο έμαθα, και αυτούς αναφέρω.

Πώς γίνεται το debug? Το debug γίνεται με δύο τρόπους, ως επί το πλείστον. Τουλάχιστον, εγώ δύο έμαθα, και αυτούς αναφέρω. Τι είναι το debug μαμα? Με απλά λόγια, debug (αποσφαλμάτωση αλλά που να κάθεσαι να το πεις), είναι η διαδικασία εντοπισμού και διόρθωσης σφαλμάτων που υπάρχουν σε κώδικα (ασχέτως γλώσσας προγραμματισμού).

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

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

Προγραμματισμός Ι. Προεπεξεργαστής. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Προεπεξεργαστής Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Διαδικασία Μεταγλώττισης πρόγραµµα επεξεργασίας κειµένου if a

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

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

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

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

Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή

Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή Δημιουργία Νέου αρχείου Από το μενού προγραμμάτων ανοίγετε το DEV C++ Επιλέγετε File-> New-> Source File (συντόμευση πληκτρολογίου Ctrl+N)

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

ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++

ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++ ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++ Α. ΠΡΙΝ ΤΗΝ ΕΓΚΑΤΑΣΤΑΣΗ Το πρόγραμμα BloodShed Dev-C++ είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης* κώδικα για γλώσσες

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

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

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε

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

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

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

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

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

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

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

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

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

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

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

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

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

1.5 ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ μικρόκοσμου «Προγραμματισμός Η/Υ»

1.5 ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ μικρόκοσμου «Προγραμματισμός Η/Υ» 1.5 ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ μικρόκοσμου «Προγραμματισμός Η/Υ» 1. Πήγαινε στο μενού Αρχείο και επίλεξε Άνοιγμα. Άνοιξε το αρχείο sample.x. Ανοίγουν δυο παράθυρα. Παρατήρησε τα ονόματα τους: Πηγαίος κώδικας... και

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

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Βασικά Στοιχεία Το αλφάβητο της C Οι βασικοί τύποι της C Δηλώσεις μεταβλητών Είσοδος/Έξοδος Βασικές εντολές της C Αλφάβητο

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

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Εισαγωγή Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Βιβλιογραφία "C Προγραμματισμός", Deitel & Deitel, Πέμπτη Έκδοση, Εκδόσεις

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

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος 2009-2010. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος 2009-2010. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Είσοδος/Έξοδος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2009-2010 Είσοδος/Έξοδος Μέχρι τώρα όποτε θέλαμε να διαβάσουμε χρησιμοποιούσαμε πάντα

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

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

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

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

1. Τα τμήματα της επιφάνειας εργασίας των Windows

1. Τα τμήματα της επιφάνειας εργασίας των Windows 1. Τα τμήματα της επιφάνειας εργασίας των Windows Εικονίδια συντομεύσεων (αρχείου-φακέλου) Εικονίδια Ανενεργά Ενεργό Επιφάνεια (αρχείου-φακέλου) παράθυρα παράθυρο εργασίας Γραμμή μενού Γραμμή εργαλείων

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

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

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

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

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

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

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

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

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

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

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

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

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

Περιεχόμενα. Πρόλογος... 17

Περιεχόμενα. Πρόλογος... 17 Περιεχόμενα Πρόλογος... 17 Κεφάλαιο 1: Εισαγωγή... 19 Πώς να διαβάσετε αυτό το βιβλίο... 20 Η γλώσσα C Ιστορική αναδρομή... 22 Τα χαρακτηριστικά της C... 23 C Μια δομημένη γλώσσα... 23 C Μια γλώσσα για

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

Κεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων.

Κεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων. Κεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων. Έως τώρα σε ένα πρόγραμμα έχουμε μάθει να εισάγουμε δεδομένα από το πληκτρολόγιο χρησιμοποιώντας την συνάρτηση scanf() και να εκτυπώνουμε δεδομένα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο Στο φετινό εργαστήριο του μαθήματος, έχετε τη δυνατότητα να δουλέψετε σε 2 περιβάλλοντα. Ένα σε περιβάλλον UNIX μέσω απομακρυσμένης σύνδεσης σε

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

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5)

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5) ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ Τοποθετώ μια δισκέτα στον οδηγό τη δισκέτας του υπολογιστή. Τοποθετώ τη δισκέτα που έχει το αρχείο μου στον οδηγό τη δισκέτας του υπολογιστή.

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

ΕΠΛ 034: Εισαγωγήστον ΠρογραµµατισµόγιαΗΜΥ

ΕΠΛ 034: Εισαγωγήστον ΠρογραµµατισµόγιαΗΜΥ ΕΠΛ 034: Εισαγωγήστον ΠρογραµµατισµόγιαΗΜΥ Αχιλλέας Αχιλλέως, Τµήµα Πληροφορικής, Πανεπιστήµιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 2 ΠρογραµµατισµόςΗ/Υ Θέµατα ιάλεξης οµή Προγράµµατος C Μεθοδολογία

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

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

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

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

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

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

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

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Προχωρημένα Θέματα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανακατεύθυνση Εισόδου/Εξόδου Συνήθως η τυπική είσοδος ενός προγράμματος (stdin) προέρχεται

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

53 Χρόνια ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Σ Α Β Β Α Ϊ Δ Η Μ Α Ν Ω Λ Α Ρ Α Κ Η

53 Χρόνια ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Σ Α Β Β Α Ϊ Δ Η Μ Α Ν Ω Λ Α Ρ Α Κ Η 53 Χρόνια ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Σ Α Β Β Α Ϊ Δ Η Μ Α Ν Ω Λ Α Ρ Α Κ Η ΠΑΓΚΡΑΤΙ: Φιλολάου & Εκφαντίδου 26 : 210/76.01.470 210/76.00.179 ΘΕΜΑ Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

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

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

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΟ ΚΕΝΤΡΟ Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού Μάθημα 2ο Aντώνης Σπυρόπουλος v2_061015 Οροι που

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

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης Γλώσσες Προγραμματισμού Εργαστήριο 2ο Τύποι Δεδομένων - Είσοδος / Έξοδος Εργαστήριο 2ο Περίγραμμα Εργαστηριακής Άσκησης Εργαστήριο 2ο...1 Θεωρία εργαστηρίου...2 Τύποι δεδομένων...2 Η συνάρτηση printf()...3

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

Διάλεξη 18η: Διαχείρηση Αρχείων

Διάλεξη 18η: Διαχείρηση Αρχείων Διάλεξη 18η: Διαχείρηση Αρχείων Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Πρατικάκης (CSD) Αρχεία CS100, 2015-2016 1 / 24 Η βιβλιοθήκη Εισόδου/Εξόδου Στο stdioh

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

Ενώσεις δεδομένων Απαριθμητές Ψηφιακοί τελεστές Αναδρομικές συναρτήσεις

Ενώσεις δεδομένων Απαριθμητές Ψηφιακοί τελεστές Αναδρομικές συναρτήσεις Ενώσεις δεδομένων Απαριθμητές Ψηφιακοί τελεστές Αναδρομικές συναρτήσεις Ενώσεις δεδομένων (union) τι και γιατί Συσκευές με μικρή μνήμη => ανάγκη εξοικονόμησης πόρων Παρατήρηση: αχρησιμοποίητη μνήμη. Έστω

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στην FORTRAN Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 Fortran FORmula TRANslation: (Μία από τις πρώτες γλώσσες τρίτης γενιάς) Εκδόσεις FORTRAN (1957) FORTRAN II (1958) FORTRAN III

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

Εισαγωγή στο προγραμματιστικό περιβάλλον ANSI

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

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

Β.1. i. Να εξηγήσετε τι εννοούμε με τον όρο μεταφερσιμότητα των προγραμμάτων. Μονάδες 3

Β.1. i. Να εξηγήσετε τι εννοούμε με τον όρο μεταφερσιμότητα των προγραμμάτων. Μονάδες 3 ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΘΕΜΑ 1 ο ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΕΜΠΤΗ 31 MAΪΟΥ 2007 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΥ

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

III. Πως μετατρέπεται το πηγαίο πρόγραμμα σε εκτελέσιμο πρόγραμμα;

III. Πως μετατρέπεται το πηγαίο πρόγραμμα σε εκτελέσιμο πρόγραμμα; ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΙΑΓΩΝΙΣΜΑ ΟΝΟΜΑΤΕΠΩΝΥΜΟ: Θέμα 1ο I. Τι πρέπει να ικανοποιεί ένα κομμάτι κώδικα ώστε να χαρακτηριστεί ως υποπρόγραμμα; Τα υποπρογράμματα πρέπει

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Συναρτήσεις εισόδου/εξόδου, τελεστές Η συνάρτηση scanf() είσοδος δεδομένων Διαβάζει από το πληκτρολόγιο (stdin) μορφοποιημένες τιμές μεταβλητών. scanf (ΣΕΙΡΑ_ΕΛΕΓΧΟΥ, δείκτης_μεταβλητής-1,

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Γ ΛΥΚΕΙΟΥ ΘΕΜΑ 1 ο Α. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη Σωστό,

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

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19)

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19) Κεφάλαιο 8.7 Πολυδιάστατοι Πίνακες (Διάλεξη 19) Πολυδιάστατοι πίνακες Μέχρι τώρα μιλούσαμε για Μονοδιάστατους Πίνακες. ή π.χ. int age[5]= {31,28,31,30,31; για Παράλληλους πίνακες, π.χ. int id[5] = {1029,1132,1031,9991,1513;

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

4 ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ ΓΕΝΙΚΟΣ ΣΚΟΠΟΣ :

4 ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ ΓΕΝΙΚΟΣ ΣΚΟΠΟΣ : 4 ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ ΓΕΝΙΚΟΣ ΣΚΟΠΟΣ : Σκοπός του συγκεκριμένου φύλλου εργασίας είναι ο μαθητής να εξοικειωθεί με τις συναρτήσεις, τις αριθμητικές πράξεις καθώς και την επισήμανση κελιών υπό όρους με στόχο

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

Τυπικές χρήσεις της Matlab

Τυπικές χρήσεις της Matlab Matlab Μάθημα 1 Τι είναι η Matlab Ολοκληρωμένο Περιβάλλον Περιβάλλον ανάπτυξης Διερμηνευμένη γλώσσα Υψηλή επίδοση Ευρύτητα εφαρμογών Ευκολία διατύπωσης Cross platform (Wintel, Unix, Mac) Τυπικές χρήσεις

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

Κεφάλαιο 2.1-2.4: Εισαγωγή στην C: (Διαλέξεις 3-4)

Κεφάλαιο 2.1-2.4: Εισαγωγή στην C: (Διαλέξεις 3-4) Κεφάλαιο 2.1-2.4: Εισαγωγή στην C (Διαλέξεις 3-4) Περιεχόμενα Εισαγωγή στην C: Σύνταξη και Σημασιολογία σχόλια μεταβλητές και σταθερές τύποι δεδομένων Μετά αυτές τις δυο διαλέξεις θα μπορείτε να γράψετε

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

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

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

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Αλγόριθμοι και Προγράμματα

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

ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C

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

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

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

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

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

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0 Δομές Δεδομένων 5ο εξάμηνο Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse v1.0 Τις σημειώσεις κράτησαν και διαμόρφωσαν σε word οι: Κονδύλη Γαλήνη, ΑΜ 5576 Μάλλιου Χριστίνα, ΑΜ 5413

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

Μεταφερσιμότητα Τα προγράμματα μεταφέρονται εύκολα σε διαφορετικά λειτουργικά συστήματα

Μεταφερσιμότητα Τα προγράμματα μεταφέρονται εύκολα σε διαφορετικά λειτουργικά συστήματα Η ΓΛΩΣΣΑ C Η C είναι μια γλώσσα προγραμματισμού υψηλού επιπέδου η οποία αναπτύχθηκε στις αρχές της δεκαετίας του 70 από τον Dennis Ritchie στα Bell Labs. Η σημερινή μορφή της γλώσσας ακολουθεί το πρότυπο

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

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

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διαμόρφωση Ελέγχου Ροής Προγράμματος Δομημένος Προγραμματισμός Ο πιο απλός και συνηθισμένος

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Ερωτήσεις επανάληψης

ΕΙΣΑΓΩΓΗ ΣΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Ερωτήσεις επανάληψης ΕΙΣΑΓΩΓΗ ΣΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ 1. Τι είναι το λειτουργικό σύστημα; Λειτουργικό Σύστημα είναι ένα σύνολο προγραμμάτων που ελέγχει τη λειτουργία του υπολογιστή και προσφέρει υπηρεσίες στους χρήστες.

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

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

Εισαγωγή στις Συναρτήσεις Εισαγωγή στις Συναρτήσεις Η φιλοσοφία σχεδίασης της C βασίζεται στη χρήση των συναρτήσεων. Έχουμε ήδη δει και χρησιμοποιήσει πολλές συναρτήσεις που έχει το σύστημα, όπως είναι οι printf(), scanf(),αλλά

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

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008 Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word Βόλος, Νοέμβριος 2008 To Microsoft Word (έκδοση 2003) είναι ένας εξελιγμένος επεξεργαστής κειμένου, με τον οποίο μπορούμε να δημιουργήσουμε

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

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

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

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

Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy

Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy Σ ε λ ί δ α 1 Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy Περιεχόμενα 1. Download Arebas Easy... 2 2. Εγκατάσταση Arebas Easy... 3 3. Εγγραφή στον Arebas Server... 7 4. Παραμετροποίηση Arebas Easy...

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

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

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

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

Περιληπτικά, τα βήματα που ακολουθούμε γενικά είναι τα εξής:

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

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

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual MILE Simulator Version 1.0 User's Manual Νοέμβριος, 2011 Περιεχόμενα 1. Εισαγωγή στον προσομοιωτή...2 1.1 Εγκατάσταση...2 1.2 Βοήθεια Διευκρινήσεις...2 2. Ξεκινώντας με τον προσομοιωτή...3 2.1 Το memory

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

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Δοκιμή Έλεγχος Αλγορίθμου Για να

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

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β Καβακλή Χειμερινό Εξάμηνο 2001 Στόχοι του Μαθήματος! Ανάπτυξη αναλυτικής

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

Μελίσσια, 16 Ιουνίου 2010. Οδηγός Εξαγωγής Συγκεντρωτικών Καταστάσεων ΚΕΠΥΟ από InnovEra

Μελίσσια, 16 Ιουνίου 2010. Οδηγός Εξαγωγής Συγκεντρωτικών Καταστάσεων ΚΕΠΥΟ από InnovEra Μελίσσια, 16 Ιουνίου 2010 Οδηγός Εξαγωγής Συγκεντρωτικών Καταστάσεων ΚΕΠΥΟ από InnovEra Εισαγωγή Αρχείων-Objects για τη συγκεντρωτική ΚΕΠΥΟ (ΜΥΦ) Πριν προχωρήσετε στη διαδικασία της εξαγωγής των συγκεντρωτικών

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

ΣΕΛΙ Α 1 ΚΕΦΑΛΑΙΟ 1 - ΑΡΧΙΚΑ

ΣΕΛΙ Α 1 ΚΕΦΑΛΑΙΟ 1 - ΑΡΧΙΚΑ ΣΕΛΙ Α 1 ΚΕΦΑΛΑΙΟ 1 - ΑΡΧΙΚΑ Πως αλλάζω γλώσσα; 1 ος τρόπος Συνδυασµός πλήκτρων αριστερό Ctrl + Shift 2 ος τρόπος Από την ένδειξη γλώσσας στην γραµµή εργασιών Πως βάζω τον τόνο ; (Εφόσον βρίσκοµαι στα

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

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ 1ΗΣ ΣΕΛΙΔΑΣ ΘΕΜΑ Α ΑΝΑΚΕΦΑΛΑΙΩΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ Γ' ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΕΜΠΤΗ 26 ΑΠΡΙΛΙΟΥ 2012 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΥ

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

FPU EJ. Κατάλογος περιεχομένων

FPU EJ. Κατάλογος περιεχομένων FPU EJ Κατάλογος περιεχομένων FPU EJ...1 1. Μενού...2 2. Master Reset...3 3. Ώρα / Ημερομηνία...4 4. Τμήματα...6 5. Μηδενισμός Ζ & Μεταφορά στοιχείων...9 6. FORMAT προσωρινής μνήμης...10 7. Αλλαγή ταχύτητας...10

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

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

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

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

ΠαράδειγµαΠρογραµµατισµού

ΠαράδειγµαΠρογραµµατισµού Προγραµµατισµός Η/Υ Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Μεθοδολογία Προγραµµατισµού Αφαιρετικότητα Ροή Ελέγχου/ εδοµένων Βιβλίο µαθήµατος: Chapter 1,, Sec. 4-54 ΕΠΛ 131 Αρχές Προγραµµατισµού

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

Πώς να ; Πώς να γράψω ένα μήνυμα;

Πώς να ; Πώς να γράψω ένα μήνυμα; Πώς να ; Επειδή πολλοί αντιμετωπίζουν δυσκολίες στο να μπορέσουν να χρησιμοποιήσουν το forum έγινε αυτό ο οδηγός για αρχαρίους. Πώς να γράψω ένα μήνυμα; Μπαίνουμε στο forum σαν χρήστες και όχι σαν απλοί

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

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

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

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

Τα δεδομένα στη C++ χωρίζονται σε 3 κατηγορίες: τους αριθμούς (numbers), τους χαρακτήρες (characters) και τις συμβολοσειρές (strings).

Τα δεδομένα στη C++ χωρίζονται σε 3 κατηγορίες: τους αριθμούς (numbers), τους χαρακτήρες (characters) και τις συμβολοσειρές (strings). Για να λύσουμε ένα πρόβλημα στη C++ χρειαζόμαστε δυο βασικές έννοιες. Η μια είναι οι οδηγίες εντολές, ο αλγόριθμος δηλαδή, που πρέπει να ακολουθήσουμε για να λύσουμε το πρόβλημά μας και η άλλη είναι τα

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

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στο Λειτουργικό Σύστημα Windows XP. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στο Λειτουργικό Σύστημα Windows XP. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008 Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στο Λειτουργικό Σύστημα Windows XP Βόλος, Νοέμβριος 2008 Τα Windows είναι ένα Λειτουργικό Σύστημα που χρησιμοποιείται σε εκατομμύρια υπολογιστές στον κόσμο. Μας βοηθούν στο να

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

Παιχνιδάκια με τη LOGO

Παιχνιδάκια με τη LOGO Όταν σβήνει ο υπολογιστής ξεχνάω τα πάντα. Κάτι πρέπει να γίνει Κάθε φορά που δημιουργώ ένα πρόγραμμα στη Logo αυτό αποθηκεύεται προσωρινά στη μνήμη του υπολογιστή. Αν θέλω να διατηρηθούν τα προγράμματά

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

Παραδείγματα Χρήσης του DrJava

Παραδείγματα Χρήσης του DrJava Παραδείγματα Χρήσης του DrJava Version 1.1 Επιμέλεια: Κόγιας Δημήτρης, Χαράλαμπος Πατρικάκης, Εργαστήριο Αντικειμενοστραφούς προγραμματισμού [1] Πίνακας Περιεχομένων Κεφάλαιο 1. Προγράμματα για εξάσκηση...

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

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

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

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

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο Τετάρτη, 30 Οκτωβρίου 2013 Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο Λύστε στο Visual Basic Express 2010 τις παρακάτω ασκήσεις: 1. Να δημιουργήσετε ένα νέο Project του είδους Console

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07 Ακαδ έτος 2007-2008 ΠΛΗΡΟΦΟΡΙΚΗ Ι Φερεντίνος 22/11/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με ΑΜ σε 3, 7, 8 & 9 22/11/07 Παράδειγμα με if/else if και user input: import javautil*; public class Grades public

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

Movie Maker (Δημιουργία βίντεο)

Movie Maker (Δημιουργία βίντεο) Movie Maker (Δημιουργία βίντεο) - Με πόσους τρόπους μπορούμε να διηγηθούμε μια ιστορία; - Μπορούμε να την πούμε ο ένας στον άλλο. - Μπορούμε να την γράψουμε. - Μπορούμε να τη ζωγραφίσουμε κομμάτι-κομμάτι.

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

Βάσεις δεδομένων (Access)

Βάσεις δεδομένων (Access) Βάσεις δεδομένων (Access) Όταν εκκινούμε την Access εμφανίζεται το παρακάτω παράθυρο: Κουμπί Κενή βάση δεδομένων Κουμπί του Office Για να φτιάξουμε μια νέα ΒΔ κάνουμε κλικ στο κουμπί «Κενή βάση δεδομένων»

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

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Αλφαριθμητικά και Αρχεία Αλφαριθμητικά (strings) Αρχεία (files) τα βασικά στοιχεία Αλφαριθμητικά της C Συμβολοσειρές (= ακολουθίες

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

Οδηγίες για το CABRI - GEOMETRY II Μωυσιάδης Πολυχρόνης - Δόρτσιος Κώστας

Οδηγίες για το CABRI - GEOMETRY II Μωυσιάδης Πολυχρόνης - Δόρτσιος Κώστας Οδηγίες για το CABRI - GEOMETRY II Μωυσιάδης Πολυχρόνης - Δόρτσιος Κώστας Εκτελώντας το πρόγραμμα παίρνουμε ένα παράθυρο εργασίας Γεωμετρικών εφαρμογών. Τα βασικά κουμπιά και τα μενού έχουν την παρακάτω

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

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

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΔΟΜΗ ΕΠΙΛΟΓΗΣ 1) Ποιοι είναι οι τελεστές σύγκρισης και

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

«Αβάκιο» Οδηγός χρήσης Μικρόκοσμου που αποτελείται από τις ψηφίδες Καμβάς, Χελώνα, Γλώσσα, Μεταβολέας, Χρώματα.

«Αβάκιο» Οδηγός χρήσης Μικρόκοσμου που αποτελείται από τις ψηφίδες Καμβάς, Χελώνα, Γλώσσα, Μεταβολέας, Χρώματα. «Αβάκιο» Οδηγός χρήσης Μικρόκοσμου που αποτελείται από τις ψηφίδες Καμβάς, Χελώνα, Γλώσσα, Μεταβολέας, Χρώματα. Πώς θα δουλέψεις με το Χελωνόκοσμο την πρώτη φορά 1. Θα χρησιμοποιήσεις το αριστερό πλήκτρο

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

Διάλεξη 20: Χαμηλού Επιπέδου Προγραμματισμός II

Διάλεξη 20: Χαμηλού Επιπέδου Προγραμματισμός II Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 20: Χαμηλού Επιπέδου Προγραμματισμός II (Κεφάλαια 25.2, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕ ΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραµµατισµού C ΕΡΓΑΣΤΗΡΙΟ 1: Εισαγωγή στην C Βασικά στοιχεία 24 Απριλίου 2015 Το σηµερινό

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

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ C Προγραμματιστικές Ασκήσεις, Φυλλάδιο Εκφώνηση: 9/3/0 Παράδοση: 5/4/0,.59 Άσκηση 0 η : Το πρόβλημα της βελόνας του Buffon Θέμα της εργασίας

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

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

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Τηλ/νιών Τομέας Προγ/σμού & Τεχνολογίας Λογισμικού Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Δρ. Νικόλαος Θ. Λιόλιος Καθηγητής Φεβρουάριος 2012 1. Εισαγωγή Το Visual

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

ΤΟ MICROSOFT WORD XP. Ας ξεκινήσουμε λοιπόν!

ΤΟ MICROSOFT WORD XP. Ας ξεκινήσουμε λοιπόν! XP ΚΑΡΤΕΛΑ ΕΡΓΑΣΙΑΣ 1 Το Microsoft Word είναι ένα πρόγραμμα στον υπολογιστή που σας βοηθά να γράφετε όμορφα κείμενα στα οποία μπορείτε να προσθέσετε εικόνες, γραφικά ακόμα και ήχους. Aφού γράψετε ένα κείμενο,

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