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

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

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

Transcript

1 ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Δεύτερη Διάλεξη Βασικά στοιχεία της γλώσσας προγραμματισμού C Μία γλώσσα προγραμματισμού όπως και μια ανθρώπινη γλώσσα μπορεί να μελετηθεί ως προς το αλφάβητό της, το λεξιλόγιό της και ως προς τη γραμματική και συντακτικό της. Με αυτή την έννοια, μπορούμε να διακρίνουμε τρεις τομείς στους οποίους θα εστιάσουμε το ενδιαφέρον μας: 1. το καθαυτό λεξιλόγιο της C, δηλαδή έναν αριθμό από λέξεις-κλειδιά (keywords) που έχουν ειδική σημασία για τη γλώσσα. Αυτές οι λέξεις λέμε ότι είναι δεσμευμένες (reserved), δηλαδή ανήκουν στη γλώσσα, χρησιμοποιούνται με συγκεκριμένο τρόπο και έννοια και για συγκεκριμένους σκοπούς και δεν πρέπει να τις χρησιμοποιούμε με άλλο τρόπο σε ένα πρόγραμμα. Σε αυτό τον τομέα μπορούμε επίσης να περιλάβουμε και το αλφάβητο της γλώσσας, δηλαδή τα ίδια τα σύμβολα (γράμματα, αριθμούς, σημεία στίξης, σύμβολα πράξεων και άλλα σύμβολα που υποδηλώνουν συγκεκριμένες λειτουργίες στα πλαίσια της γλώσσας C) τα οποία μπορούμε να συνδυάσουμε σύμφωνα με ορισμένους κανόνες για διάφορους σκοπούς, πέρα από το σχηματισμό των ίδιων των δεσμευμένων λέξεων. 2. τις λέξεις ή ονόματα που επινοούμε για να υποδηλώσουμε τόσο τα δεδομένα που θέλουμε να επεξεργαστούμε όσο και τις διαδικασίες που καταστρώνουμε για τον σκοπό αυτό. Αυτές οι λέξεις φτιάχνονται με τα προαναφερθέντα σύμβολα, όχι αυθαίρετα, αλλά σύμφωνα με συγκεκριμένους κανόνες, αρκετά χαλαρούς, πάντως όμως, συγκεκριμένους. 3. το συνδυασμό των παραπάνω στοιχείων, δεσμευμένων λέξεων, συμβόλων και λέξεων που ορίσαμε, σύμφωνα με συγκεκριμένους συντακτικούς κανόνες ώστε σχηματίσουμε προτάσεις ή εντολές για να διατυπώσουμε συμβολικά συγκεκριμένες ενέργειες που πρέπει να γίνουν ώστε να υλοποιηθεί ένας αλγόριθμος ή διαδικασία επεξεργασίας των δεδομένων μας. Τα παραπάνω γίνονται κατανοητά με το παράδειγμα ενός απλού προγράμματος: #include <stdio.h> void dosomething( void ) { printf( \nthis is a message ); } void dosomething( void ) { int m, n; printf( \ngive a number: ); scanf( %d,&n ); m = n+1; printf( \n %d + 1 is %d\n, n, m); } void main ( void ) { dosomething( ); dosomething1( ); } 1 Όσον αφορά το αλφάβητο βλέπουμε χρήση γραμμάτων, αριθμητικών ψηφίων (που χρησιμοποιούνται τόσο ως χαρακτήρες όσο και ως αριθμοί), σημείων στίξης (, ;,,, (, ),), συμβόλων αριθμητικών πράξεων και άλλων συμβόλων και χαρακτήρων με ειδική σημασία και λειτουργία ({, }, <, >, %, #). 2 Από την άποψη του λεξιλογίου διακρίνουμε: 2.1.δεσμευμένες λέξεις (void, int)

2 2.2.λέξεις κατασκευασμένες από αυτόν που έγραψε το πρόγραμμα, οι οποίες χρησιμεύουν ως ονόματα (n, dosomething, dosomething1, αλλά και printf, scanf που δεν είναι δεσμευμένες λέξεις της C αλλά ονόματα συναρτήσεων βιβλιοθήκης για ανάγνωση και εκτύπωση δεδομένων). 2.3.Συνδυασμό αυτών των λέξεων με διάφορα σύμβολα για τη διατύπωση προτάσεων ή εντολών 2.4.`Υπάρχουν ακόμη και συνδυασμοί των γραμμάτων για να σχηματιστούν μηνύματα που θα τυπωθούν στην οθόνη. 3 Από την πλευρά της δομής διακρίνουμε τα εξής στοιχεία: 3.1.υπάρχει μια διαδοχή προτάσεων που έχουν συγκεκριμένο νόημα. Πρώτα υπάρχει μία ή περισσότερες οδηγίες (directives) προς τον προεπεξεργαστή. Αυτές είναι στην αρχή ενός αρχείου που περιέχει το πρόγραμμά μας και αρχίζουν με το σύμβολο #. Ακολουθεί μία λέξη που είναι κατανοητή από τον προεπεξεργαστή και στη συγκεκριμένη περίπτωση η οδηγία είναι να συμπεριληφθεί (include) ένα αρχείο βιβλιοθήκης, του οποίου το όνομα περικλείεται σε σύμβολα ανισότητας. Αυτά τα αρχεία λέγονται αρχεία επικεφαλίδας (header files, εξ ου και η κατάληξη.h). Αργότερα θα δούμε ότι μπορούμε να περιλάβουμε στο πρόγραμμά μας και δικά μας αρχεία επικεφαλίδας, των οποίων το όνομα θα περικλείεται σε αντί για < >. 3.2.Υπάρχουν προτάσεις ή εντολές που επιτελούν κάποια λειτουργία. Π.χ. υπάρχει η εντολή int n, m; που υποδηλώνει δέσμευση δύο θέσεων μνήμης για αποθήκευση ακέραιων αριθμών. Επίσης, υπάρχει η εντολή m = n+1; που είναι προφανές ότι σημαίνει την αποθήκευση στη μία θέση μνήμης του αριθμού που υπάρχει στην άλλη, αυξημένου κατά 1. Όπως γίνεται με τις προτάσεις στις γραπτές ανθρώπινες γλώσσες, οι εντολές τελειώνουν με ένα σημείο στίξης που είναι το ελληνικό ερωτηματικό. 3.3.παρατηρούμε μια ομαδοποίηση των περισσότερων προτάσεων την οποία υποδηλώνουμε με τα άγκιστρα, { και }, για να δείξουμε που αρχίζει και που τελειώνει μια τέτοια ομάδα προτάσεων ή εντολών. Αυτό είναι ένα χαρακτηριστικό γνώρισμα της C και χρησιμοποιείται εκτενώς για να επιτύχουμε αυτό που λέγεται αρθρωτός προγραμματισμός (modular programming) που συνδέεται στενά με την έννοια του Δομημένου Προγραμματισμού. 3.4.Στο συγκεκριμένο παράδειγμα παρατηρούμε ότι υπάρχουν τρεις τέτοιες ομάδες. Αυτές οι ομάδες είναι συναρτήσεις, δηλαδή αυτοτελείς προγραμματιστικές ενότητες που μπορεί να έχουν μία είσοδο δεδομένων (αλλά όχι απαραίτητα) καθώς και να δίνουν μία έξοδο (αλλά όχι απαραίτητα) ενώ εν τω μεταξύ, επιτελούν κάποια λειτουργία. Η λειτουργία αυτή εκφράζεται με την κλήση είτε άλλων συναρτήσεων είτε συγκεκριμένων προτάσεων-εντολών της γλώσσας. Οι συναρτήσεις χαρακτηρίζονται από ένα όνομα, γραμμένο πριν το εισαγωγικό άγκιστρο, {, που επιτρέπει να τις καλέσουμε μέσα από άλλες συναρτήσεις για να κάνουμε αυτό που θέλουμε με τη βοήθειά τους. Έχουν επίσης έναν τύπο πριν το όνομά τους, καθώς και μία λίστα τυπικών ορισμάτων ή παραμέτρων μέσα σε παρενθέσεις μεταξύ του ονόματός τους και του εισαγωγικού άγκιστρου. Αυτή η λίστα μπορεί να είναι κενή. Για τον τύπο των συναρτήσεων περισσότερα σε λίγο. 3.5.Πρέπει να πούμε ότι ομάδες εντολών δεν είναι μόνο οι συναρτήσεις. Αντίθετα, μία συνάρτηση μπορεί να έχει στο εσωτερικό της μία οι περισσότερες εντολές που περικλείονται από άγκιστρα. Συνήθως, αυτό γίνεται σε συνδυασμό με εντολές που υλοποιούν κάποια από τις βασικές αλγοριθμικές δομές, δηλαδή την επιλογή ή την επανάληψη, όπως θα δούμε στη συνέχεια. Αυτές τις ομάδες εντολών θα τις ονομάσουμε σύνθετες εντολές. 3.6.Τέλος, όσον αφορά τις συναρτήσεις, παρατηρούμε ότι τελευταία είναι μία συνάρτηση με το όνομα main. Αυτή η συνάρτηση είναι το λεγόμενο κύριο πρόγραμμα που καλείται από το σύστημα και καλεί όλες τις υπόλοιπες συναρτήσεις του προγράμματός μας. Κάθε πρόγραμμα που αναπτύσσουμε πρέπει να έχει τουλάχιστον μία συνάρτηση main, ακόμη και αν δεν έχει άλλη. Η συνάρτηση main είναι και η μόνη της οποίας το όνομα δεν μπορούμε να αλλάξουμε, αλλοιώς ο υπολογιστής δε θα ήξερε από πού να αρχίσει την

3 εκτέλεση του προγράμματος. 3.7.Εφαρμόζονται ορισμένοι κανόνες: οι οδηγίες include είναι στην αρχή (ώστε τα περιεχόμενα των αρχείων που συμπεριλαμβάνονται να είναι γνωστά στις συναρτήσεις που ακολουθούν και που χρησιμοποιούν αυτά τα περιεχόμενα), υπάρχει υποχρεωτικά μία κύρια συνάρτηση με το όνομα main, οι εντολές τελειώνουν με ελληνικό ερωτηματικό, οι οντότητες, (αριθμητικές ποσότητες ή και άλλου είδους), που χειριζόμαστε στο πρόγραμμα πρέπει να δηλωθούν με ονόματα και τι τύπου είναι στην αρχή της συνάρτησης όπου χρησιμοποιούνται. Μετά από τα παραπάνω, μπορούμε να εξετάσουμε πιο αναλυτικά τα δομικά στοιχεία με τα οποία μπορούμε να γράψουμε ένα οποιοδήποτε πρόγραμμα και τους κανόνες που διέπουν τη χρήση τους. Σύνταξη: ελεύθερο format Πολύ λίγοι περιορισμοί υπάρχουν όσον αφορά τη διάταξη των εντολών και άλλων στοιχείων που αποτελούν ένα πρόγραμμα της C. Ειδικότερα, μπορούμε να βάζουμε όσα κενά θέλουμε, ακόμη και tabs και αλλαγές γραμμής χωρίς να υπάρχει πρόβλημα, αρκεί να μη σπάζουμε, τις δεσμευμένες λέξεις και τα διάφορα ονόματα μεταβλητών, συναρτήσεων κλπ ή συμβολικών σταθερών που έχουμε ορίσει μέσα στο πρόγραμμα. Πρέπει όμως να χρησιμοποιούμε ένα ευανάγνωστο και ομοιόμορφο στυλ γραφής αν θέλουμε να μην έχουμε προβλήματα κατανόησης των προγραμμάτων μας. Σταθερές Εδώ περιλαμβάνονται οι διάφοραι αριθμοί: ακέραιοι (π.χ. 1, 2, 3 κλπ), πραγματικοί (π.χ. 1.0, 2.33, κλπ). Αυτοί μπορεί να γράφονται και με τη λεγόμενη επιστημονική σήμανση, π.χ. 1.23e+3 που δεν είναι παρά 1.23 Χ Υπάρχουν επίσης σταθερές τύπου χαρακτήρα,που δεν είναι παρά σύμβολα από το αλφάβητο της C (γράμματα ή άλλοι χαρακτήρες) μέσα σε απλά εισαγωγικά, π.χ. 'a', 'A', 'b', '1', '0', '+' κλπ. Μπορεί κανείς να ορίσει συμβολικές σταθερές μέσω κατάλληλων προεπεξεργαστικών οδηγιών. Ας υποθέσουμε ότι σε ένα πρόγραμμα εμφανίζεται συχνά η ποσότητα (το γνωστό π της γεωμετρίας). Αντί να γράφουμε αυτό τον αριθμό, μπορούμε στην αρχή του προγράμματος να γράψουμε #define PI και μετά μπορούμε να γράφουμε μέσα στο πρόγραμμα το ΡΙ αντί για Όταν μεταγλωττιστεί το πρόγραμμα, η λέξη ΡΙ θα αντικατασταθεί παντού από το σα να το είχαμε γράψει εμείς. απαριθμητές) Μεταβλητές 1. από πρακτικής άποψης είναι ο,τι περίπου και οι μεταβλητές στα μαθηματικά. 2. Από την άποψη του υπολογιστή είναι ονόματα για περιοχές μνήμης όπου αποθηκεύονται δεδομένα Τύποι μεταβλητών και κανόνες ονομασίας Από την άποψη του υπολογιστή, ο τύπος μιας μεταβλητής είναι υπενθύμιση για το πόση μνήμη πρέπει να κρατηθεί για μια μεταβλητή και πώς θα κωδικοποιηθεί η πληροφορία που θα αποθηκευτεί εκεί. Το όνομα κάθε μεταβλητής επιτρέπεται να έχει το πολύ 31 γράμματα. Επιτρέπονται επίσης και αριθμητικά ψηφία αρκεί το όνομα να αρχίζει από γράμμα. Τέλος επιτρέπεται να χρησιμοποιείται και ο χαρακτήρας υπογράμμισης ( _ ). Τα κεφαλαία διακρίνονται από τα μικρά οπότε τα ονόματα abc, Abc και ABC είναι διαφορετικά και υποδηλώνουν τρεις διαφορετικές μεταβλητές. Οι τύποι έχουν κάποιες βασικές κατηγορίες (int, float, char) και για κάθε κατηγορία υπάρχουν παραλλαγές: int (signed, unsigned / short int, int, long int). Αυτός ο τύπος αποθηκεύει ακέραιες τιμές. Αυτές μπορεί να είναι απρόσημες (δηλαδή παίρνουν μόνο θετικές τιμές) αν προσδιοριστούν ως unsigned. Το default είναι signed (δηλαδή με πρόσημο). Το μέγεθος σε

4 απαιτούμενη μνήμη αυτών των μεταβλητών είναι από 2 bytes και πάνω και προφανώς όσο μεγαλύτερο τόσο πιο μεγάλες και οι τιμές που μπορούν να αποθηκεύσουν. Τώρα, αυτό ποικίλει από compiler σε compiler αλλά γενικά short int < int < long int και οι ακέραιοι τύπου short int θα είναι σχεδόν πάντα 2 bytes. float (float, double, long double). Αυτός ο τύπος χρησιμεύει στην αποθήκευση πραγματικών αριθμών. Αξίζει να σημειώσουμε ότι αν θέλουμε να κυριολεκτούμε, οι αριθμοί αυτοί είναι αποκλειστικά και μόνο ρητοί αφού στον υπολογιστή δε μπορούμε να αποθηκεύσουμε αριθμούς με άπειρα ψηφία. Συνήθως πιάνουν τουλάχιστον 4 bytes και ισχύει float < double < long double. Σε μαθηματικές εφαρμογές που έχει μεγάλη σημασία η ακρίβεια των υπολογισμών και χρειαζόμαστε περισσότερα δεκαδικά ψηφία προτιμούμε τις μεταβλητές τύπου double ή και long double. char (char, signed char, unsigned char). Αυτό τον τύπο τον χρησιμοποιούμε για την αποθήκευση χαρακτήρων. Στην πραγματικότητα, πρόκειται για μικρούς ακέραιους αριθμούς με μέγεθος απαιτούμενης μνήμης ίσο με 1 byte, γι' αυτό μπορούμε να δηλώσουμε και μεταβλητές signed char αλλά το default και πιο σύνηθες είναι unsigned και οι αντίστοιχες τιμές κυμαίνονται από 0 ως 255. Κάθε τέτοια τιμή αντιστοιχεί σε ένα χαρακτήρα σύμφωνα με κάποιο πρότυπο κωδικοποίησης (από τα οποία το πιο συνηθισμένο είναι το ASCII). προσδιορισμοί const και volatile. Μπορεί για κάποιο λόγο να θέλουμε μία μεταβλητή να μην αλλάζει τιμή στο πρόγραμμα ή τη συνάρτηση που αναπτύσσουμε. Τότε, μπροστά από τον τύπο της μεταβλητής βάζουμε τον προσδιορισμό const. Αν στο πρόγραμμά μας βάλουμε μία εντολή που αλλάζει την τιμή αυτής της μεταβλητής, τότε θα πάρουμε λάθος (μεταγλώττισης ή εκτέλεσης ανάλογα με το μεταγλωττιστή). Επίσης, κάποιες μεταβλητές μπορεί να αλλάζουν από διαδικασίες που δεν υπάρχουν μέσα στο ίδιο το πρόγραμμα (π.χ. το λειτουργικό σύστημα ή άλλα προγράμματα). Αυτές οι μεταβλητές δηλώνονται με τον προσδιορισμό volatile. Δηλώσεις μεταβλητών Σε κάθε πρόγραμμα μπορεί να υπάρχουν μεταβλητές. Αυτές πρέπει να δηλωθούν, με κατάλληλη λέξη-κλειδί από τις πιο πάνω (int, float κλπ) για να προσδιοριστεί ο τύπος τους, η ποσότητα μνήμης και ο τρόπος κωδικοποίησης που τους αναλογεί σύμφωνα με τις ανάγκες μας. Δηλώσεις τύπου γίνονται επίσης και για τις συναρτήσεις, επειδή αυτές μπορεί να επιστρέφουν στο σημείο από όπου τις καλέσαμε ένα αποτέλεσμα για παραπέρα επεξεργασία, το οποίο προφανώς έχει και αυτό κάποιον τύπο. Όμως, για τις συναρτήσεις υπάρχει και άλλος ένας τύπος που δεν υπάρχει για τις συνηθισμένες μεταβλητές, ο τύπος void (κενό) που σημαίνει απλούστατα ότι η συνάρτηση, αφού κάνει ο,τι κάνει, δεν επιστρέφει κάποιο αποτέλεσμα, γιατί προφανώς όταν αναπτύσσαμε την εφαρμογή μας κρίναμε ότι δε χρειάζεται. Ο τύπος αυτός εκτός από τις συναρτήσεις, μπορεί να χρησιμοποιηθεί και για μια ειδική κατηγορία μεταβλητών που λέγονται δείκτες (pointers). Σημειωτέον ότι μπορεί κανείς να ορίσει και νέους, παράγωγους τύπους, συνδυάζοντας τους ήδη υπάρχοντες, για την καλύτερη και πρακτικότερη αναπαράσταση των δεδομένων και της συσχέτισής τους. Λέξεις κλειδιά ή δεσμευμένες λέξεις Οι λέξεις-κλειδιά έχουν συγκεκριμένη σημασία για τη C και δεν επιτρέπεται να χρησιμοποιούνται με άλλη έννοια. Έχει ενδιαφέρον να παρατηρήσουμε ότι οι δεσμευμένες λέξεις της C είναι πολύ λίγες στο σύνολό τους. Ακόμη και λέξεις όπως οι printf και main, δεν περιλαμβάνονται στις δεσμευμένες λέξεις επειδή δεν πρόκειται παρά για ονόματα συναρτήσεων. Ωστόσο, δεν ενδείκνυται να χρησιμοποιούμε ούτε αυτές τις λέξεις με άλλη έννοια εκτός από τη συνήθη καθώς αυτό προκαλεί σύγχυση και αυξάνει τον κίνδυνο προγραμματιστικών λαθών. Τελεστές +,,*,/,%,++,,! κλπ. Είναι σύμβολα που επιδρούν στα δεδομένα (σταθερές ή μεταβλητές) και σε συνδυασμό με αυτά σχηματίζουν ένα αποτέλεσμα που μπορεί να χρησιμοποιηθεί σε μια εντολή. Άλλοι τελεστές χρησιμεύουν στο να συνδυάζουν δύο διαφορετικές οντότητες, σταθερές ή μεταβλητές, ενώ άλλοι είναι μοναδιαίοι ή ενικοί

5 (unary), δηλαδή επιδρούν σε μία μεταβλητή. Π.χ. οι τελεστές αύξησης και μείωσης, ++ και, αντιστοίχως, αυξάνουν ή μειώνουν έναν αριθμό κατά 1. Το πώς χρησιμοποιούνται οι τελεστές δε μπορούμε να το δούμε διαφορετικά παρά αν εισάγουμε την έννοια της παράστασης και περιγράψουμε τη χρήση της μέσα σε διαφόρων ειδών εντολές. Εκτός από τους παραπάνω, μπορούμε να διακρίνουμε επίσης και τους ακόλουθους συνήθεις τελεστές: +,,*,/,% για τις αριθμητικές πράξεις και με προφανές νόημα (Το % δίνει το υπόλοιπο διαίρεσης). ++,,+=, =, *=, /= Τελεστές μεταβολής και σύνθετοι τελεστές. Για τα ++ και μιλήσαμε ήδη. Οι τελεστές που προκύπτουν αν προσθέσουμε σε έναν απλό τελεστή το = σημαίνουν μεταβολή της μεταβλητής που προηγείται (με την έννοια που υποδηλώνει ο τελεστής πριν από το =) κατά την ποσότητα που ακολουθεί το =. Περισσότερα, στις εντολές ανάθεσης, στις επόμενες παραγράφους. >, <, >=, <=, ==,!= για τη σύγκριση ποσοτήτων και με προφανές νόημα. Προσοχή στο ότι ο τελεστής για τον έλεγχο της ισότητας γράφεται == (με δύο ίσον και όχι μόνο ένα). Ο τελεστής!= σημαίνει διάφορο.!, &&, (λογικοί τελεστές άρνησης, σύζευξης και διάζευξης) -Παραστάσεις Κάθε αποδεκτός συνδυασμός τελεστών με μεταβλητές και σταθερές. Οι παραστάσεις έχουν και αυτές τύπο όπως και οι μεταβλητές, καθώς επίσης και τιμή που προκύπτει ως αποτέλεσμα των πράξεων που περιεχουν αλλά επίσης και λογική τιμή (όταν τιμή της παράστασης είναι 0 τότε λογική τιμή = ψευδής, όταν τιμή της παράστασης διαφορετική από μηδέν, τότε λογική τιμή = αληθής). -Προτεραιότητα τελεστών και παρενθέσεις για την ομαδοποίηση που μας ενδιαφέρει. Οι πράξεις σε μία παράσταση δεν εκτελούνται με αυθαίρετη σειρά αλλά σύμφωνα με κανόνες προτεραιότητας. Η προτεραιότητα εξαρτάται από τα εξής: τη φύση των τελεστών (π.χ. πολλαπλασιασμός και διαίρεση προηγούνται της πρόσθεσης και αφαίρεσης) τη θέση των τελεστών (γενικά, όταν έχουμε τελεστές ίδιας προτεραιότητας εκτελούμε τις πράξεις από τα αριστερά προς τα δεξιά) ύπαρξη παρενθέσεων (μπορούμε να ομαδοποίησουμε τα μέρη μιας παράστασης αλλάζοντας την προτεραιότητα που ορίζουν οι προηγούμενοι δύο κανόνες. Πρώτα γίνονται οι πράξεις στις πιο εσωτερικές παρενθέσεις και μετά πάμε προς τις εξωτερικές). ΠΡΟΣΟΧΗ στις πράξεις μεταξύ ακεραίων! Δίνουν ακέραιο, άρα αποκόπτονται τα δεκαδικά όταν κάνουμε διαίρεση! Όταν έχουμε μίξη τύπων επικρατεί ο ανώτερος Εντολές Σε αντιστοιχία με τις βασικές αλγοριθμικές δομές έχουμε 1. εντολές ανάθεσης ή απόδοσης τιμής, 2. εντολές επιλογής ή απόφασης και 3. εντολές επανάληψης υπό συνθήκη. Eντολές ανάθεσης ή αντικατάστασης ή εκχώρησης (assignment) Η γενική μορφή βασίζεται στον τελεστή απόδοσης τιμής = και είναι η εξής: μεταβλητή = παράσταση; όπου η παράσταση μπορεί να είναι και μόνο μία μεταβλητή ή σταθερά, αλλά μπορεί να είναι και πιο πολύπλοκη ή ακόμη μπορεί να είναι μία συνάρτηση που επιστρέφει κάποια τιμή. Παίρνουμε ο,τι βρίσκεται στο δεξί μέλος και ο,τι αποτέλεσμα έχει, το τοποθετούμε στη διεύθυνση μνήμης που αντιπροσωπεύει το αριστερό. Γι αυτό δεξιά μπορούν να υπάρχουν ολόκληρες παραστάσεις ενώ αριστερά μόνο μια μεταβλητή. Οι εντολές ανάθεσης δεν πρέπει να συγχέονται με τη μαθηματική ισότητα!!!

6 Παράδειγμα 1: i = 1; Παράδειγμα 2: i = i+10; Στο δεύτερο παράδειγμα έχουμε την εξής διαδικασία: ο υπολογιστής πάει σε μια διεύθυνση Χ και αντιγράφει την τιμή της i. Μετά, με το κατάλληλο κύκλωμα του επεξεργαστή προσθέτει και τον αριθμό 10. Τέλος, αντικαθιστά με το αποτέλεσμα, την τιμή που υπήρχε στην i. Μερικές από τις πιο συνηθισμένες εντολές ανάθεσης αφορούν την αύξηση ή μείωση μιας μεταβλητής κατά 1 ή γενικότερα κατά μία ορισμένη ποσότητα. Αυτές οι εντολές μπορούν να αντικατασταθούν από απλούστερες παραστάσεις μεταβολής που γράφονται με τη βοήθεια των τελεστών μεταβολής και των σύνθετων τελεστών. Για παράδειγμα: α/α Εντολή Ανάθεσης Παράσταση Μεταβολής 1 x = x + 1; x++; ή ++x; 2 x = x - 1; x--; ή --x; 3 x = x + y; x += y; 4 x = x - y; x -= y; 5 x = x * y; x *= y; 6 x = x / y; x /= y; 7 x = x % y; x %= y; 8 x = ++y; y = y + 1; x = y; 9 x = y++; x = y; y = y + 1; 10 x = --y; y = y - 1; x = y; 11 x = y--; x = y; y = y - 1; Οι τελευταίες περιπτώσεις 8 έως 11 αξίζουν ιδιαίτερη προσοχή επειδή δείχνουν ότι ο τελεστής αύξησης ++ και ο τελεστής μείωσης -- μπορούν να χρησιμοποιηθούν με δύο διαφορετικούς τρόπους: προθεματικά (prefix) και επιθηματικά (postfix). Στην πρώτη περίπτωση, πρώτα ο τελεστής αύξησης (ή μείωσης) επιδρά στη μεταβλητή και μετά αυτή με την αυξημένη (ή μειωμένη) τιμή. Στη δεύτερη περίπτωση, πρώτα χρησιμοποιείται η μεταβλητή και μετά γίνεται η αύξηση (ή η μείωση). -Το αριστερό σκέλος μιας εντολής ανάθσης αναφέρεται συχνά και ως lvalue και το δεξί ως rvalue (δηλαδή αριστερή τιμή και δεξιά τιμή ). Ιδιαίτερα σημαντικό είναι το εξής: μία εντολή ανάθεσης λειτουργεί και σαν συνάρτηση που επιστρέφει το αριστερό της σκέλος! Με άλλα λόγια, μπορούμε να δούμε την εντολή lvalue = rvalue και ως παράσταση με τιμή ίση με lvalue. Εντολές επιλογής και εντολές επανάληψης: Αυτές έχουν τα εξής κοινά χαρακτηριστικά: η εκτέλεσή τους ελέγχεται από μία συνθήκη ή παράσταση ελέγχου και μπορούν να είναι σύνθετες, δηλαδή συχνά η συνθήκη ελέγχου ορίζει αν θα εκτελεστεί ή όχι μια ολόκληρη ομάδα εντολών. Οι εντολές επανάληψης είναι οι while( συνθήκη ) {ομάδα εντολών }, do {ομάδα εντολών } while ( συνθήκη ) και

7 for ( αρχική συνθήκη; παράσταση ελέγχου; παράσταση μεταβολής) { ομάδα εντολών }. Οι εντολές επιλογής είναι οι if( συνθήκη ) { ομάδα εντολών } και switch (παράσταση) { τιμή: {ομάδα εντολών} τιμή: {ομάδα εντολών}... } ΠΡΟΣΟΧΗ στο == που δεν πρέπει να συγχέεται με το = αλλοιώς θα υπάρξουν απρόβλεπτα αποτελέσματα! Πράγματι, η εντολή if (a = 2) θα είναι πάντα αληθής. Κι αυτό γιατί μέσα στις παρενθέσεις δε βρίσκεται μία συνθήκη a == 2 όπως μάλλον θα θέλαμε, αλλά μία εντολή ανάθεσης που όπως είπαμε, λειτουργεί σα συνάρτηση η οποία επιστρέφει το αριστερό της σκέλος, a. Αλλά τότε έχουμε να κάνουμε με μια παράσταση, την a που όσο απλή κι αν είναι δεν παύει να είναι μια παράσταση και άρα, έχει μια λογική τιμή. Αυτή βέβαια είναι η αληθής τιμή διότι το a έχει πάρει την τιμή 2 διάφορη του μηδενός. Άρα, το if πάντα θα επαληθεύεται και όχι μόνο αυτό, αλλά στη συνέχεια του προγράμματος το a θα έχει πάρει την τιμή 2 που μάλλον δεν είναι αυτό που θα θέλαμε. Συμπέρασμα: ΠΡΟΣΟΧΗ στη διάκριση μεταξύ == (ελέγχου ισότητας) και = (τελεστή ανάθεσης)!!! Συναρτήσεις Εδώ διακρίνουμε τις εξής έννοιες (που θα αναπτυχθούν λεπτομερέστερα στην αντίστοιχη ενότητα): -δήλωση συνάρτησης (πρωτότυπο συνάρτησης ή επικεφαλίδα απαραιτήτως πριν τη main). Η δήλωση περιέχει τον τύπο της συνάρτησης (δηλαδή τον τύπο του αποτελέσματος που επιστρέφει ή void αν δεν επιστρέφει τίποτα), το όνομά της που υπακούει στους ίδιους κανόνες με τα ονόματα των μεταβλητών και παρενθέσεις μέσα στις οποίες γράφονται οι τύποι (υποχρεωτικά) και τα ονόματα (προαιρετικά) των παραμέτρων που περνάνε μέσα στη συνάρτηση. -ορισμός συνάρτησης (περιέχει και το σώμα, δηλαδή τις εντολές που καθορίζουν τι ακριβώς κάνει η συνάρτηση αν υπάρχει δήλωση, ο ορισμός μπορεί και να έπεται της main). Στον ορισμό της συνάρτησης, στη λίστα παραμέτρων που είναι μέσα στις παρενθέσεις πρέπει να γράφονται και τα ονόματα των παραμέτρων. Μετά ακολουθούν άγκιστρα { και } όπου μπαίνει το σώμα της συνάρτησης, δηλαδή οι εντολές που την αποτελούν. Προσοχή! Δεν επιτρέπεται ορισμός συνάρτησης μέσα σε άλλη συνάρτηση!!! -Εμβέλεια μεταβλητών, πέρασμα κατά τιμή και κατά αναφορά (διεύθυνση). Στην αρχή μιας συνάρτησης μπορούμε να ορίσουμε και άλλες μεταβλητές εκτός από τις παραμέτρους που έρχονται απ' έξω. Αυτές οι μεταβλητές λέγονται τοπικές ή τοπικής εμβέλειας και δεν φαίνονται στις άλλες συναρτήσεις και δεν τις επηρεάζουν, γι' αυτό μπορούμε να χρησιμοποιήσουμε το ίδιο όνομα για τοπικές μεταβλητές διαφορετικών συναρτήσεων. Όσον αφορά τις παραμέτρους, αυτές περνιούνται κατά τιμή ή κατά διεύθυνση. Στην πρώτη περίπτωση το όρισμα αντιγράφεται σε μια ομώνυμη, τοπικής εμβέλειας, μεταβλητή, ενώ στη δεύτερη, περνάει η ίδια η μεταβλητή, αν και με έμμεσο τρόπο, μέσω της διεύθυνσής της. Το πώς γίνεται αυτό προϋποθέτει γνώση της έννοιας των μεταβλητών-δεικτών που παρουσιάζονται σε επόμενη ενότητα. Οδηγίες προς τον προεπεξεργαστή: include, define, undef, ifdef, ifndef Έχουμε ήδη μιλήσει για τις οδηγίες include και define που είναι και οι πιο συνηθισμένες. Όσον σφορά τις σταθερές που ορίζονται μέσω της define, για τα ονόματά τους συνηθίζονται κεφαλαία, χωρίς αυτό να είναι υποχρεωτικό. Για τη define δεν χρειάζεται τελεστής ανάθεσης = ούτε και ελληνικό ερωτηματικό στο τέλος οι οδηγίες δεν είναι εντολές της C. Πρότυπες συναρτήσεις: Η γλώσσα C αυτή καθαυτή είναι πολύ μικρή και για να μπορέσουμε να χρησιμοποιήσουμε μέσω αυτής τον υπολογιστή για στοιχειώδεις λειτουργίες όπως ανάγνωση, εμφάνιση και εκτύπωση δεδομένων, μορφοποίηση εξόδου κλπ πρέπει να γράψουμε συναρτήσεις που χειρίζονται τις διάφορες περιφερειακές συσκευές. Για το σκοπό αυτό και για να διευκολυνθεί η ανάπτυξη των προγραμμάτων με ομοιόμορφο τρόπο που να εξασφαλίζει τη φορητότητα του λογισμικού, υπάρχει μία βιβλιοθήκη συναρτήσεων, η λεγόμενη πρότυπη βιβλιοθήκη που αποτελείται από συναρτήσεις τις οποίες καλούμε για να διαβάσουμε ή εμφανίσουμε δεδομένα και για πολλούς άλλους σκοπούς. Αυτή η βιβλιοθήκη

8 συνοδεύει όλους τους σύγχρονους μεταγλωττιστές της C. Για να χρησιμοποιήσουμε αυτές τις συναρτήσεις χρειάζεται να υπάρχουν στο πρόγραμμά μας οι αντίστοιχες δηλώσεις και αυτό γίνεται αν περιλάβουμε τα κατάλληλα αρχεία επικεφαλίδας. Οι πιο συνηθισμένες συναρτήσεις είναι ασφαλώς η printf και scanf για την εμφάνιση ή ανάγνωση μορφοποιημένων δεδομένων. Η δήλωσή τους βρίσκεται στο αρχείο stdio.h, γι' αυτό σχεδόν κάθε πρόγραμμα στην αρχή θα έχει την παρακάτω προεπεξεργαστική οδηγία: #include <stdio.h>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 23 ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Μάθημα 2ο Τμήμα Διοίκησης Επιχειρήσεων α εξάμηνο Β. Φερεντίνος I/O 24 Βασική βιβλιοθήκη συναρτήσεων εισόδου/εξόδου #include Η συνάρτηση εξόδου printf printf("συμβολοσειρά

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

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 2ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΣΦΑΛΜΑΤΑ ΜΕΤΑΓΛΩΤΤΙΣΗΣ Η γλώσσα C κάνει αυστηρή διάκριση μεταξύ πεζών

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

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

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

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

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή Στόχοι και αντικείμενο ενότητας Η έννοια του Τελεστή #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Εκφράσεις Προτεραιότητα Προσεταιριστικότητα Χρήση παρενθέσεων Μετατροπές Τύπων Υπονοούμενες και ρητές μετατροπές

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

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

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ Κεφαλαία και μικρά γράμματα ελληνικού αλφαβήτου: Α Ω και α ω Κεφαλαία και μικρά γράμματα λατινικού αλφαβήτου: A Z και a z Αριθμητικά ψηφία: 0 9 Ειδικοί χαρακτήρες: + - * / =. ( ),! & κενός

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

Οικονόμου Βαγγέλησ Διάλεξη Νο 2. Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2

Οικονόμου Βαγγέλησ Διάλεξη Νο 2. Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2 Οικονόμου Βαγγέλησ Διάλεξη Νο 2 Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2 1 Η έννοια τησ μεταβλητήσ έδωςε λύςη ςτο πρόβλημα τησ αναφοράσ ςτην κύρια μνήμη του υπολογιςτή. Οι γλώςςεσ προγραμματιςμού υποςτηρίζουν

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

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

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

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

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 4: Τελεστές Τελεστές: Τελεστής Ανάθεσης 2 Το σύμβολο της ανάθεσης είναι το = Προσοχή: το σύμβολο ελέγχου ισότητας είναι το ==. Η μορφή των προτάσεων ανάθεσης είναι:

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

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

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

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

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

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

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

ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1

ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1 Γλώσσα Προγραμματισμού C++ ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1 Τα δεδομένα Οι σταθερές Τα δεδομένα (πληροφορίες-data) είναι απαραίτητα στοιχεία ενός προγράμματος, καθώς οι βασικές λειτουργίες ενός προγράμματος είναι

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

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

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

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

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

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

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

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

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

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

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 ΙΣΤΟΡΙΚΑ Παρουσιάστηκε το 1970 από το Niklaus Wirth Προγενέστερη γλώσσα ήταν η Algol 60 Είναι δομημένη γλώσσα προγραμματισμού υψηλού

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 3ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΕΚΤΥΠΩΣΗ ΚΕΙΜΕΝΟΥ Ένα κείμενο μπορεί να εκχωρηθεί ως τιμή μιας μεταβλητής

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

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

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

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

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

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

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

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

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

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

Προγραμματισμό για ΗΜΥ

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

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

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

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

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

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

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Εκφράσεις και Λίγες Εντολές Οι εκφράσεις της C Τελεστές Απλές και σύνθετες εντολές Εντολές ελέγχου (επιλογής) Εισαγωγή σε

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

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών Χαρακτήρες Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Προγραμματισμός Δ. Τσελίκας Ι Χαρακτήρες - Εισαγωγή Έως τώρα έχουμε κατά κύριο λόγο χρησιμοποιήσει τους αριθμητικούς τύπους

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

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

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

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

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Εργαστήριο 4: 4.1 Η Δομή Ελέγχου if Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Γενική Μορφή: Παρατηρήσεις:

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

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

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

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

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

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

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

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

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

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

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 2.4 Βασικές συνιστώσες/εντολές ενός αλγορίθμου 2.4.1 Δομή ακολουθίας ΚΕΦΑΛΑΙΟ 7 7.1 7.9 Σταθερές (constants): Προκαθορισμένες τιμές που παραμένουν

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

Φυσικές και τεχνητές γλώσσες. Το αλφάβητο της ΓΛΩΣΣΑΣ, Τύποι Δεδομένων. Σταθερές, Μεταβλητές, Τελεστές, Συναρτήσεις, Δομή Προγράμματος

Φυσικές και τεχνητές γλώσσες. Το αλφάβητο της ΓΛΩΣΣΑΣ, Τύποι Δεδομένων. Σταθερές, Μεταβλητές, Τελεστές, Συναρτήσεις, Δομή Προγράμματος Φυσικές και τεχνητές γλώσσες. Το αλφάβητο της ΓΛΩΣΣΑΣ, Τύποι Δεδομένων. Σταθερές, Μεταβλητές, Τελεστές, Συναρτήσεις, Δομή Προγράμματος Ενότητες βιβλίου: 6.3, 7.1-7.6, 7.10, 8.1 Ώρες διδασκαλίας: 2 Φυσικές

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

Πίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα "Αλφαριθμητικά"

Πίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα Αλφαριθμητικά Πίνακες: μια σύντομη εισαγωγή Πίνακες χαρακτήρων: τα "Αλφαριθμητικά" Πίνακες(Arrays): έννοιες και ορισμοί Ορισμός: Πίνακας (array) = σύνολο μεταβλητών του ιδίου τύπου (int, float, char,...) με ένα κοινό

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

Βασικές Αρχές Προγραμματισμού

Βασικές Αρχές Προγραμματισμού Βασικές Αρχές Προγραμματισμού Κεφάλαιο 2 ΗγλώσσαC Ιστορική Αναδρομή ΗανάπτυξητηςC ξεκίνησε το 1972 στα εργαστήρια Bell από τον Dennis Ritchie με σκοπό την ανάπτυξη ενός λειτουργικού συστήματος για τον

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

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

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

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

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

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

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

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

Δομημένος Προγραμματισμός Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Δομημένος Προγραμματισμός Ενότητα 2: Τύποι μεταβλητών Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 3: Είσοδος / Έξοδος, Βασικοί Τύποι, Δήλωση Μεταβλητών Ένα Ακόμα Παράδειγμα #include int main(int argc, char* argv[]) { } putchar('h'); putchar('e'); putchar('l');

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

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

Προγραμματισμός Ι. Εγγραφές. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Εγγραφές Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Η Ανάγκη Ομαδοποίησης Πολλές φορές έχουμε πληροφορίες διαφορετικού τύπου οι οποίες όμως έχουν μεγάλη

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

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

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

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

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

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

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

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

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

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

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

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

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 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 στην

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

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

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

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

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

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

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

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 ο Τελεστές Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Ο τελεστής εκχώρησης = Ο τελεστής = χρησιµοποιείται για την απόδοση τιµής (ή αλλιώς ανάθεση τιµής) σε µία µεταβλητή Π.χ.

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

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

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

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

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος http://www.teiser.gr/icd/staff/lantzos lantzos@teiser.gr Κανόνες Ομαλής Λειτουργίας Ερχόμαστε στην ώρα μας Δεν καπνίζουμε και τρώμε εντός της αίθουσας

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

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

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

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στον προγραμματισμό. Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2

Εισαγωγή στον προγραμματισμό. Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2 Εισαγωγή στον προγραμματισμό Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2 Δομή Προγράμματος Όλα τα προγράμματα που γράψαμε έχουν λίγο πολύ την ακόλουθη μορφή: Κάποιος κώδικας εδώ main( ) {

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

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Η ΓΛΩΣΣΑ PASCAL ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Απλοί ή στοιχειώδης Τ.Δ. Ακέραιος τύπος Πραγματικός τύπος Λογικός τύπος Χαρακτήρας Σύνθετοι Τ.Δ. Αλφαριθμητικός 1. Ακέραιος (integer) Εύρος: -32768 έως 32767 Δήλωση

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

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

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

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

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

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Τελεστές - Κατηγορίες Εκφράσεις - Κατηγορίες Υπολογισμός εκφράσεων Προτάσεις - Κατηγορίες

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

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

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

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

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

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

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

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

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

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

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

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

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

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος http://www.teiser.gr/icd/staff/lantzos lantzos@teiser.gr 1 Πώς δημιουργούμε πρόγραμμα Η/Υ; 1. Ανάλυση του προβλήματος 2. Επινόηση & Σχεδιασμός

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

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

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 3: Είσοδος / Έξοδος, Βασικοί Τύποι, Δήλωση Μεταβλητών Βασικοί τύποι της C 2 Όνομα Τύπος / Κωδικοποίηση Μέγεθος (bytes) char Χαρακτήρας 1 int Ακέραιος 2 ή 4 (*) float Πραγματικός

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

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

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εργαστήριο 1η εβδομάδα. Κοζάνη, 5 Οκτωβρίου 2007. Βασικά στοιχεία γραφής προγραμμάτων με τη C: α) Case Sensitive!!! β) Δυνατότητα εισαγωγής σχολίων με /*

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

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

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

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

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

Η γλώσσα προγραμματισμού Strange Προγραμματιστική άσκηση: Η γλώσσα προγραμματισμού Strange Η Strange είναι μια μικρή γλώσσα προγραμματισμού. Παρόλο που οι προγραμματιστικές της ικανότητες είναι μικρές, η εκπαιδευτική αυτή γλώσσα περιέχει

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

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

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

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

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

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

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

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

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

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

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

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

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

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος 2012-13 Κων/νος Φλώρος Απλοί τύποι δεδομένων Οι τύποι δεδομένων προσδιορίζουν τον τρόπο παράστασης των

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

ΑΣΚΗΣΗ 2: ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΣΤΗ C

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

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

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

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 4: Τελεστές Τελεστές: Τελεστής Ανάθεσης 2 Το σύμβολο της ανάθεσης είναι το = Προσοχή: το σύμβολο ελέγχου ισότητας είναι το ==. Η μορφή των προτάσεων ανάθεσης είναι:

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

Διαδικασία Ανάπτυξης Λογισμικού

Διαδικασία Ανάπτυξης Λογισμικού Διαδικασία Ανάπτυξης Λογισμικού Ανάλυση Απαιτήσεων (προϋποθέτει κατανόηση του προβλήματος και τη συλλογή πληροφοριών και των απαιτήσεων από το σύστημα) Σχεδιασμός (ορισμός διεργασιών για να ικανοποιηθούν

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

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

Περιεχόμενα. Πρόλογος... 21 Περιεχόμενα Πρόλογος... 21 Κεφάλαιο 1: Εισαγωγή στον προγραμματισμό... 25 Εισαγωγή...27 Πώς να διαβάσετε αυτό το βιβλίο...27 Η δομή των κεφαλαίων...28 Γιατί να μάθω προγραμματισμό;...31 Γιατί να μάθω C;...31

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

TMHMA TEXNΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛ/ΝΙΩΝ Προγραμματισμός Ι ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ , Α ΕΞΑΜΗΝΟ Βασίλης Μποζαντζής. Βασίλης Μποζαντζής

TMHMA TEXNΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛ/ΝΙΩΝ Προγραμματισμός Ι ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ , Α ΕΞΑΜΗΝΟ Βασίλης Μποζαντζής. Βασίλης Μποζαντζής TMHMA TEXNΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛ/ΝΙΩΝ Προγραμματισμός Ι ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2010 2011, Α ΕΞΑΜΗΝΟ Βασίλης Μποζαντζής Βασίλης Μποζαντζής Εισαγωγικά Οι 32 δεσμευμένες λέξεις σύμφωνα με το πρότυπο ANSI

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

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13)

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13) Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις Επανάληψη για την ενδιάμεση εξέταση (Διάλεξη 13) 13-1 Πρόβλημα 1 Γράψετε τον ορισμό μίας συνάρτησης η οποία υπολογίζει το μέγιστο 2 ακεραίων αριθμών και

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1

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

ΑΣΚΗΣΗ 6: ΔΕΙΚΤΕΣ. Σκοπός της Άσκησης. 1. Εισαγωγικά στοιχεία για τους Δείκτες

ΑΣΚΗΣΗ 6: ΔΕΙΚΤΕΣ. Σκοπός της Άσκησης. 1. Εισαγωγικά στοιχεία για τους Δείκτες Σκοπός της Άσκησης ΑΣΚΗΣΗ 6: ΔΕΙΚΤΕΣ Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η εξοικείωση με τη χρήση των δεικτών (pointers). Οι δείκτες δίνουν την δυνατότητα σε προγράμματα να προσομοιώνουν τη

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές. Δρ. Γιώργος Λαμπρινίδης 23/10/2015 Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές. Δρ. Γιώργος Λαμπρινίδης 23/10/2015 Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1 Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές Δρ. Γιώργος Λαμπρινίδης amprinidis@pharm.uoa.gr 1 Αριθμητικοί Τελεστές + πρόσθεση - αφαίρεση * πολλαπλασιασμός / διαίρεση Προσοχή! Διαίρεση

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

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

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

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

ΕΡΓΑΣΤΗΡΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Τµήµα Πληροφορικής και Τηλεπικοινωνιών

ΕΡΓΑΣΤΗΡΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Τµήµα Πληροφορικής και Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΗ C Τµήµα Πληροφορικής και Τηλεπικοινωνιών Περιεχόµενα Εισαγωγή Πρόγραµµα Φάσεις Υλοποίησης µε χρήση του εργαλείου DEV C + + οµή Προγράµµατος Η συνάρτηση main Μεταβλητές Τι είναι

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

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

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

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

1. Τι ονομάζουμε αλγόριθμο; Δώστε παράδειγμα.

1. Τι ονομάζουμε αλγόριθμο; Δώστε παράδειγμα. 1. Τι ονομάζουμε αλγόριθμο; Δώστε παράδειγμα. ΑΠΑΝΤΗΣΗ Ορισμός: Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός

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

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

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

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

Δομές Δεδομένων (Εργ.) Ακ. Έτος Διδάσκων: Ευάγγελος Σπύρου. Εργαστήριο 3 Επανάληψη Γ μέρος

Δομές Δεδομένων (Εργ.) Ακ. Έτος Διδάσκων: Ευάγγελος Σπύρου. Εργαστήριο 3 Επανάληψη Γ μέρος ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ Δομές Δεδομένων (Εργ.) Ακ. Έτος 2017-18 Διδάσκων: Ευάγγελος Σπύρου Εργαστήριο 3 Επανάληψη Γ μέρος 1. Στόχος του εργαστηρίου Στόχος του τρίτου εργαστηρίου είναι

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