ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ. Προγραμματισμός Ι.

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

Download "ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ. Προγραμματισμός Ι."

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ Προγραμματισμός Ι Εισαγωγικά Θέματα Α. Θεοδωρόπουλος, Γ. Λέπουρας Ιανουάριος 2013

2 Πίνακας περιεχομένων 1. Η ΕΝΝΟΙΑ ΤΟΥ ΠΡΟΒΛΗΜΑΤΟΣ- ΑΛΓΟΡΙΘΜΟΙ... 3 Πρόβλημα - Επίλυση ενός προβλήματος... 3 Δεδομένα Επεξεργασία Πληροφορία... 3 Στάδια αντιμετώπισης ενός προβλήματος... 3 Επίλυση ενός προβλήματος στον υπολογιστή... 4 Τι ονομάζεται αλγόριθμος;... 4 Κριτήρια που πρέπει να ικανοποιεί ένας αλγόριθμος... 4 Τρόποι αναπαράστασης και περιγραφής ενός αλγορίθμου... 5 Τι ορίζουμε ως δομή δεδομένων;... 5 Τι είναι πρόγραμμα και τι προγραμματισμός;... 5 Γλώσσες μηχανής... 6 Στοιχειώδεις ενέργειες που μπορεί να κάνει ένας υπολογιστής;... 6 Γλώσσες συμβολομετάφρασης (χαμηλού επιπέδου)... 6 Γλώσσες υψηλού επιπέδου... 6 Επιλογή μιας γλώσσας προγραμματισμού;... 6 Από τι προσδιορίζεται μια γλώσσα προγραμματισμού; ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ (ΔΡΔ)... 8 Σύμβολα ΔΡΔ... 8 Δομές ΔΡΔ (δομές ελέγχου)... 9 Παραδείγματα δομημένων και μη δομημένων ΔΡΔ Κανόνες για το σχηματισμό δομημένων ΔΡΔ Παραδείγματα ΔΡΔ Παράδειγμα 1_Απλή πρόσθεση δύο αριθμών Παράδειγμα 2_Άθροισμα N ακέραιων αριθμών Παράδειγμα 3_Άθροισμα N ακέραιων αριθμών μόνο θετικών Παράδειγμα 4_Άθροισμα αγνώστου αριθμού θετικών, τερματίζει με το Παράδειγμα 5_Εύρεση μεγαλύτερου από 3 αριθμούς Παράδειγμα 6_Εύρεση μεγαλύτερου από σειρά αριθμών Παράδειγμα 7_Εύρεση μέσου όρου Ν αριθμών Παράδειγμα 8_Επίλυση πρωτοβάθμιας εξίσωσης Παράδειγμα 9_Επίλυση δευτεροβάθμιας εξίσωσης Παράδειγμα 10_Μενού επιλογών, τερματισμός με Παράδειγμα 11_Διαβάζει βαθμολογία και τυπώνει αντίστοιχο αποτέλεσμα [1]

3 Παράδειγμα 12_Διάβασμα μονοδιάστατου πίνακα Παράδειγμα 13_Διάβασμα μονοδιάστατου πίνακα θετικών Παράδειγμα 14_Μονοδιάστατος πίνακας, εκτύπωση άρτιων Παράδειγμα 15_Πολλαπλασιασμός ακεραίου με διάνυσμα Ασκήσεις για εξάσκηση [Οι σημειώσεις αυτές αποτελούν ένα βοήθημα του μαθήματος Προγραμματισμός Ι, στοχεύοντας να καλύψουν τυχόν κενά σε φοιτητές χωρίς προηγούμενη εμπειρία στον προγραμματισμό (π.χ. θετική κατεύθυνση Δευτεροβάθμιας εκπαίδευσης). Παρουσιάζονται βασικές έννοιες αλγορίθμων και δίνεται έμφαση στις διαγραμματικές τεχνικές.] [2]

4 1. Η ΕΝΝΟΙΑ ΤΟΥ ΠΡΟΒΛΗΜΑΤΟΣ- ΑΛΓΟΡΙΘΜΟΙ Πρόβλημα - Επίλυση ενός προβλήματος Με τον όρο πρόβλημα εννοούμε μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή ούτε προφανής. Η επίλυση ενός προβλήματος είναι η διαδικασία μέσω της οποίας βρίσκουμε το ζητούμενο, δηλαδή το σημείο στο οποίο πρέπει να φτάσουμε για να βγούμε από την «προβληματική» κατάσταση στην οποία βρισκόμαστε. Η κατανόηση ενός προβλήματος αποτελεί συνάρτηση δύο παραγόντων, της σωστής διατύπωσης εκ μέρους του δημιουργού του και της αντίστοιχα σωστής ερμηνείας από τη μεριά εκείνου που καλείται να το αντιμετωπίσει. Όσον αφορά τη διατύπωση η άστοχη χρήση ορολογίας και η λανθασμένη σύνταξη είναι δύο στοιχεία που μπορούν να προκαλέσουν παρερμηνείες και παραπλανήσεις. Όσον αφορά τη σωστή ερμηνεία, σημαντικό ρόλο παίζει το επίπεδο της γνώσης και της αντίληψης του λύτη, το οποίο καθορίζεται από τις γενικές και τις ειδικές γνώσεις του πάνω στο αντικείμενο του προβλήματος, καθώς επίσης η εμπειρία, το ενδιαφέρον και η ευφυΐα του. Δεδομένα Επεξεργασία Πληροφορία Δεδομένα είναι οποιαδήποτε στοιχεία μπορούν να γίνουν αντιληπτά από έναν παρατηρητή με μια από τις πέντε αισθήσεις του. Τα δεδομένα είναι τα στοιχεία πάνω στα οποία μπορούμε να στηριχτούμε για να λύσουμε ένα πρόβλημα. Επεξεργασία δεδομένων είναι η διαδικασία κατά την οποία ένας «μηχανισμός» δέχεται δεδομένα, τα επεξεργάζεται σύμφωνα με έναν προκαθορισμένο τρόπο και αποδίδει πληροφορίες. Πληροφορία αποτελεί οποιοδήποτε γνωσιακό στοιχείο προέρχεται από επεξεργασία δεδομένων. Δεδομένα Επεξεργασία δεδομένων Πληροφορία Στάδια αντιμετώπισης ενός προβλήματος o Κατανόηση o Ανάλυση o Επίλυση Πρόβλημα Αλγόριθμος Προγραμματισμός [3]

5 Επίλυση ενός προβλήματος στον υπολογιστή Οι λόγοι για τους οποίους αναθέτουμε την επίλυση ενός προβλήματος στον υπολογιστή σχετίζονται με: την πολυπλοκότητα των υπολογισμών, την επαναληπτικότητα των διαδικασιών, την ταχύτητα εκτέλεσης πράξεων, το μεγάλο πλήθος δεδομένων. Τι ονομάζεται αλγόριθμος; Αλγόριθμος είναι μια πεπερασμένη ακολουθία αυστηρά καθορισμένων εντολών, καθεμία από τις οποίες είναι εκτελέσιμη σε πεπερασμένο χρόνο, που στοχεύει στην επίλυση ενός συγκεκριμένου προβλήματος. παραδείγματα αλγορίθμων: Ο υπολογισμός της σχολικής βαθμολογίας. Βήμα 1. Πάρε τη βαθμολογία που έχει ο μαθητής στα γραπτά. Βήμα 2. Πάρε επίσης τη βαθμολογία που έχει ο μαθητής στα προφορικά. Βήμα 3. Πρόσθεσε τις δύο αυτές βαθμολογίες. Βήμα 4. Υπολόγισε το μέσο όρο διαιρώντας το προηγούμενο αποτέλεσμα με 2. Βήμα 5. Αν ο μέσος όρος είναι μεγαλύτερος του 9.5, τότε εμφάνισε το μήνυμα ότι ο μαθητής περνάει την τάξη, διαφορετικά εμφάνισε το μήνυμα ότι ο μαθητής δεν περνάει την τάξη. Η αγαπημένη σου συνταγή μαγειρικής. Βήμα 1. Άνοιξε το μάτι της κουζίνας στο 2. Βήμα 2. Βάλε 3 λίτρα νερό σε μια κατσαρόλα χωρητικότητας 4 λίτρων. Βήμα 3. Τοποθέτησε την κατσαρόλα στο μάτι που έχεις ήδη ανάψει. Βήμα 4. Πρόσθεσε στην κατσαρόλα μια κουταλιά αλάτι. Βήμα 5. Περίμενε μέχρι να βράσει το νερό. Βήμα 6. Βάλε τα μακαρόνια στην κατσαρόλα. Βήμα 7. Ανακάτευε τα μακαρόνια για 10 λεπτά. Κριτήρια που πρέπει να ικανοποιεί ένας αλγόριθμος Κάθε αλγόριθμος πρέπει να ικανοποιεί τα επόμενα κριτήρια: o Είσοδος (input): Το σύνολο των τιμών που δέχεται ο αλγόριθμος ως δεδομένα για την επίλυση του προβλήματος. Ως είσοδος μπορεί να είναι το κενό σύνολο, όταν για παράδειγμα ο αλγόριθμος επεξεργάζεται δεδομένα που είτε τα παράγει ο ίδιος (π.χ. τυχαίους αριθμούς), είτε αποτελούν γνωστές τιμές από τη διατύπωση του ίδιου του προβλήματος. [4]

6 o Έξοδος (output): Είναι το σύνολο των τιμών που δημιουργεί ο αλγόριθμος ως αποτέλεσμα (δεν μπορεί να είναι το κενό σύνολο). o Καθοριστικότητα (definiteness): Κάθε εντολή ενός αλγορίθμου θα πρέπει να είναι επακριβώς και αυστηρώς καθορισμένη, έτσι που η εκτέλεσή τους να γίνεται χωρίς καμία αμφιβολία (π.χ. μια εντολή διαίρεσης δεν πρέπει να γίνει στην περίπτωση που ο διαιρέτης λαμβάνει μηδενική τιμή). o Περατότητα (finiteness): Ο αλγόριθμος να τερματίζει έπειτα από πεπερασμένα βήματα εκτέλεσης των εντολών του. o Αποτελεσματικότητα (effectiveness): Κάθε μεμονωμένη εντολή ενός αλγορίθμου πρέπει να είναι απλή. Αυτό σημαίνει ότι δεν πρέπει απλά να έχει ορισθεί, αλλά πρέπει να είναι και εκτελέσιμη. Τρόποι αναπαράστασης και περιγραφής ενός αλγορίθμου o Ελεύθερο κείμενο o Φυσική γλώσσα o Διαγραμματικές τεχνικές (diagrammatic techniques) * o Κωδικοποίηση (coding) ψευδογλώσσα Τι ορίζουμε ως δομή δεδομένων; Δομή δεδομένων είναι ένα σύνολο αποθηκευμένων δεδομένων που υφίσταται επεξεργασία από ένα σύνολο λειτουργιών (π.χ. ένας πίνακας). Αλγόριθμοι + Δομές Δεδομένων = Προγράμματα Τι είναι πρόγραμμα και τι προγραμματισμός; Πρόγραμμα είναι το σύνολο των εντολών που πρέπει να δοθούν στον υπολογιστή ώστε να υλοποιηθεί ο αλγόριθμος για την επίλυση του προβλήματος. Το πρόγραμμα, το οποίο γράφεται σε κάποια γλώσσα προγραμματισμού, δεν είναι απλώς η υλοποίηση του αλγορίθμου, αλλά βασικό στοιχείο του είναι τα δεδομένα και οι δομές δεδομένων επί των οποίων ενεργεί. Προγραμματισμός είναι η διεργασία που γίνεται για τη δημιουργία ενός προγράμματος. Οι γλώσσες προγραμματισμού αναπτύχθηκαν με σκοπό την επικοινωνία του ανθρώπου (προγραμματιστή) με τη μηχανή (υπολογιστής). * Tο παρόν εγχειρίδιο ασχολείται με διαγραμματικές τεχνικές και συγκεκριμένα με Διαγράμματα Ροής Δεδομένων (ΔΡΔ). [5]

7 Γλώσσες μηχανής Οι γλώσσες μηχανής είναι οι πρώτες γλώσσες προγραμματισμού στις οποίες οι εντολές για την υλοποίηση ενός προγράμματος έπρεπε να δοθούν από τον προγραμματιστή σε ακολουθίες 0 και 1, δηλαδή σε μορφή κατανοητή από τον υπολογιστή. Ακόμα και στις σύγχρονες γλώσσες προγραμματισμού οι εντολές κάθε προγράμματος μετατρέπονται σε ακολουθίες 0 και 1, δηλαδή σε εντολές σε γλώσσα μηχανής. Στοιχειώδεις ενέργειες που μπορεί να κάνει ένας υπολογιστής; Το μόνο που κάνει ένας υπολογιστής είναι στοιχειώδεις ενέργειες σε ακολουθίες 0 και 1 με ασύλληπτη ταχύτητα: αποθηκεύει στη μνήμη ανακτά από τη μνήμη, κάνει στοιχειώδεις αριθμητικές πράξεις και συγκρίνει. Γλώσσες συμβολομετάφρασης (χαμηλού επιπέδου) Οι γλώσσες αυτές είναι αποτέλεσμα προσπαθειών για τη δημιουργία μιας συμβολικής γλώσσας που θα ήταν πιο προσιτή στον άνθρωπο από τις ακολουθίες 0 και 1. Ο συμβολομεταφραστής (assembler) είναι ένα ειδικό πρόγραμμα που μεταφράζει τη συμβολική γλώσσα σε γλώσσα μηχανής. πρόγραμμα σε συμβολική γλώσσα assembler πρόγραμμα σε γλώσσα μηχανής Γλώσσες υψηλού επιπέδου Με τη ραγδαία χρήση των υπολογιστών αναπτύχθηκαν οι γλώσσες υψηλού επιπέδου. Χρησιμοποιούν προγράμματα μετάφρασης που μετατρέπουν τα προγράμματα σε γλώσσα μηχανής και ονομάζονται μεταγλωττιστές (compilers). Π.χ. Fortran, Cobol, Algol, Lisp, Prolog, Basic, Pascal, C, C++, Java. Επιλογή μιας γλώσσας προγραμματισμού; Μπορούμε να ισχυριστούμε με βεβαιότητα ότι μια γλώσσα προγραμματισμού που να είναι αντικειμενικά καλύτερη από όλες τις άλλες δεν υπάρχει ούτε πρόκειται να υπάρξει. Η επιλογή της γλώσσας για την ανάπτυξη μιας εφαρμογής εξαρτάται: από το είδος της εφαρμογής, [6]

8 το υπολογιστικό περιβάλλον στο οποίο θα εκτελεστεί, τα προγραμματιστικά περιβάλλοντα που διαθέτουμε και κυρίως τις γνώσεις και προτιμήσεις του προγραμματιστή. Από τι προσδιορίζεται μια γλώσσα προγραμματισμού; Το αλφάβητο: το σύνολο των στοιχείων που χρησιμοποιείται από τη γλώσσα. Το λεξιλόγιο: ένα υποσύνολο όλων των ακολουθιών που δημιουργούνται από τα στοιχεία του αλφαβήτου (τις λέξεις) που είναι δεκτές από τη γλώσσα. Τη γραμματική: αποτελείται από το τυπικό και το συντακτικό. Το τυπικό είναι το σύνολο των κανόνων που ορίζει τις μορφές που μια λέξη είναι αποδεκτή και το συντακτικό είναι το σύνολο των κανόνων που καθορίζει τη νομιμότητα της διάταξης και της σύνθεσης των λέξεων της γλώσσας για τη δημιουργία εντολών. Τη σημασιολογία: το σύνολο των κανόνων που καθορίζει το νόημα των λέξεων και κατ επέκταση των εκφράσεων που χρησιμοποιούνται σε μια γλώσσα. [7]

9 2. ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ (ΔΡΔ) Σύμβολα ΔΡΔ Ένα διάγραμμα ροής δεδομένων αποτελείται από ένα σύνολο γεωμετρικών σχημάτων, όπου το καθένα δηλώνει μια συγκεκριμένη ενέργεια ή λειτουργία. Τα κυριότερα γεωμετρικά σχήματα είναι τα εξής: σύμβολο επεξήγηση έλλειψη, που δηλώνει την αρχή και το τέλος του κάθε αλγορίθμου πλάγιο παραλληλόγραμμο, που δηλώνει είσοδο ή έξοδο * στοιχείων ορθογώνιο, που δηλώνει την εκτέλεση μίας ή περισσοτέρων πράξεων ρόμβος, που δηλώνει ότι πρόκειται να ληφθεί μια απόφαση βέλη, που δείχνουν τη ροή ελέγχου * Είσοδος: πληκτρολόγιο, αρχείο. Έξοδος: οθόνη, εκτύπωση, αρχείο. [8]

10 Δομές ΔΡΔ (δομές ελέγχου) δομή if (μία επιλογή) Σειρά (SEQUENCE structure) δομή if else (διπλή επιλογή) δομή switch (πολλές επιλογές) [9]

11 δομή while δομή do while δομή for (II) δομή for (I) [10]

12 Παραδείγματα δομημένων και μη δομημένων ΔΡΔ Μη δομημένο (Unstructured) σύνδεση συμβόλων με αυθαίρετο τρόπο δομές ελέγχου με περισσότερες από μία είσοδο/έξοδο Δομημένο (Structured) Κανόνες για το σχηματισμό δομημένων ΔΡΔ Αρχίστε με το απλούστερο δυνατό διάγραμμα ροής. Οποιοδήποτε ορθογώνιο (ενέργεια) μπορεί να αντικατασταθεί με δύο ορθογώνια (ενέργειες) στη σειρά. Οποιοδήποτε ορθογώνιο (ενέργεια) μπορεί να αντικατασταθεί από οποιαδήποτε δομή ελέγχου (σειράς, if, if else, switch, while, do while ή for). [11]

13 Παραδείγματα ΔΡΔ Παράδειγμα 1_Απλή πρόσθεση δύο αριθμών #include <stdio.h> int main(void) int a,b; int sum = 0; printf("enter number a:"); scanf("%d", &a); printf("enter number b:"); scanf("%d", &b); sum = a + b; printf("the summary is: %d\n", sum); } return 0; Κώδικας σε C ΔΡΔ [12]

14 Παράδειγμα 2_Άθροισμα N ακέραιων αριθμών ΔΡΔ [13]

15 Κώδικας σε C (με 2 τρόπους) /* Παράδειγμα 2α (με while) Άθροισμα Ν ακέραιων αριθμών */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) int N, val; /* Ν: το πλήθος των αριθμών, val: η τιμή ενός αριθμού */ int count = 1, sum = 0; /* count: μετρητής, sum: συνολικό άθροισμα */ printf("how many numbers to add? "); scanf("%d", &N); while (count <= N) printf("enter number %d: ", count); scanf("%d", &val); sum += val; count +=1; } /* τέλος της while */ printf("\nsummary of the given numbers is: sum = %d\n", sum); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ /* Παράδειγμα 2b (με for) Άθροισμα Ν ακέραιων αριθμών */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) int N, val; /* Ν: το πλήθος των αριθμών, val: η τιμή ενός αριθμού */ int count, sum = 0; /* count: μετρητής, sum: συνολικό άθροισμα */ printf("how many numbers to add? "); scanf("%d", &N); for (count = 1; count <=N; count++) printf("enter number %d: ", count); scanf("%d", &val); sum += val; } /* end of for */ printf("\nsummary of the given numbers is: sum = %d\n", sum); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [14]

16 Παράδειγμα 3_Άθροισμα N ακέραιων αριθμών μόνο θετικών ΔΡΔ [15]

17 Κώδικας σε C /* Παράδειγμα 3 Άθροισμα N ακέραιων αριθμών μόνο θετικών */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) int N, val; /* Ν: το πλήθος των αριθμών, val: η τιμή ενός αριθμού */ int count = 1, sum = 0; /* count: μετρητής, sum: συνολικό άθροισμα */ int valid = 0; /* μεταβλητή για έλεγχο αρνητικού */ printf("how many numbers to add? "); scanf("%d", &N); while (count <= N) printf("enter number %d: ", count); scanf("%d", &val); if (val < 0) printf("number is negative. Please re-enter\n"); } /* τέλος if */ else sum += val; /* προσθέτει την τιμή του δοθέντος αριθμού στο συνολικό άθροισμα */ count +=1; /* αυξάνουμε το μετρητή κατά 1 για να διαβάσουμε τον επόμενο αριθμό */ } /* τέλος else */ } /* τέλος while */ printf("\nsummary of the given numbers is: sum = %d\n", sum); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [16]

18 Παράδειγμα 4_Άθροισμα αγνώστου αριθμού θετικών, τερματίζει με το 0 ΔΡΔ [17]

19 Κώδικας σε C /* Παράδειγμα 4 Άθροισμα N ακέραιων θετικών αριθμών, τερματισμός με 0 */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) int sum = 0, num; printf("enter a number (0 to end): "); scanf("%d", &num); /* το πρόγραμμα τερματίζει όταν ο χρήστης δώσει 0 */ while (num!= 0) if (num > 0) /* έλεγχος για θετικούς */ sum += num; /* πρόσθεσε τον αριθμό στη sum */ printf("enter a number (0 to end): "); /* δώσε επόμενο αριθμό */ scanf("%d", &num); } /* τέλος if */ else printf("only positive numbers are allowed!\n"); printf("enter a number (0 to end): "); scanf("%d", &num); } /* τέλος else */ } /* τέλος while */ printf("summary of given numbers is: %d\n", sum); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [18]

20 Παράδειγμα 5_Εύρεση μεγαλύτερου από 3 αριθμούς ΔΡΔ [19]

21 Κώδικας σε C /* Παράδειγμα 5 Εύρεση μεγαλύτερου από 3 αριθμούς */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) int a, b, c, max; printf("enter number a: "); scanf("%d", &a); printf("enter number b: "); scanf("%d", &b); printf("enter number c: "); scanf("%d", &c); max = a; /* ορίζουμε μέγιστο τον πρώτο */ if(b > max) max = b; if (c > max) max = c; printf("\nthe largest number is: %d\n", max); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [20]

22 Παράδειγμα 6_Εύρεση μεγαλύτερου από σειρά αριθμών ΔΡΔ [21]

23 Κώδικας σε C (με 2 τρόπους) /* Παράδειγμα 6α (με for) Εύρεση μεγαλύτερου από Ν αριθμούς */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) int N, val, count, max; printf("how many numbers to enter: "); scanf("%d", &N); printf("enter number 1: "); scanf("%d", &val); max = val; /* ορίζουμε μέγιστο τον πρώτο */ /* εισαγωγή Ν ακέραιων αριθμών και εύρεση μεγίστου με for */ for (count = 2; count <= N; count++) printf("enter the number %d: ", count); scanf("%d", &val); if(val > max) max = val; } /* τέλος for */ printf("the Largest Number is: %d\n", max); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ /* Παράδειγμα 6β (με while) Εύρεση μεγαλύτερου από Ν αριθμούς */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) int a, max; printf("enter a number: "); scanf("%d",&a); max = a; /* εισαγωγή Ν ακέραιων θετικών αριθμών και εύρεση μεγίστου με while */ while (a!= -1) printf("enter new number, (-1 to end): "); scanf("%d",&a); if(a > max) max = a; } /* end while */ printf("the largest number is: %d \n", max); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [22]

24 Παράδειγμα 7_Εύρεση μέσου όρου Ν αριθμών ΔΡΔ [23]

25 Κώδικας σε C /* Παράδειγμα 7 Εύρεση μέσου όρου Ν ακέραιων αριθμών */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) int N, count; float sum = 0, num, avg; /* τύπου float για πραγματικούς */ printf("enter How Many Numbers: "); scanf("%d", &N); for (count = 1; count <= N; count++) printf("enter number %d: ", count); scanf("%f", &num); sum += num; } /* τέλος for */ avg = sum / N; printf("the Average of Numbers is : %0.2f\n", avg); /* το προσδιοριστικό 0.2f θα τυπώσει τα 2 πρώτα δεκαδικά ψηφιά */ return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [24]

26 Παράδειγμα 8_Επίλυση πρωτοβάθμιας εξίσωσης y = bx + c ΔΡΔ [25]

27 Κώδικας σε C /* Παράδειγμα 8 Επίλυση Πρωτοβάθμιας Εξίσωσης */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) float x, c, b; /* τύπου float για πραγματικούς */ printf("the primary equation is b*x + c = 0\n"); printf("enter number for b: "); scanf("%f", &b); printf("enter number for c: "); scanf("%f", &c); if (b == 0) if (c == 0) printf("indeterminate equation: x can take any value\n"); else printf("equation is impossible: There in no solution\n"); }/* τέλος if */ else x = -c / b; printf("the solution is: x = %.2f\n", x); } /* τέλος else */ return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [26]

28 Παράδειγμα 9_Επίλυση δευτεροβάθμιας εξίσωσης y = ax 2 + bx + c ΔΡΔ [27]

29 Κώδικας σε C (με 2 τρόπους) /* Παράδειγμα 9α Δευτεροβάθμια Εξίσωση */ #include <stdio.h> #include <math.h> /* ενσωμάτωση της βιβλιοθήκης math */ /* έναρξη συνάρτησης main */ int main(void) /* μεταβλητές που θα χρησιμοποιηθούν στην εξίσωση */ int a, b, c; float x, x1, x2, disc; /* x,x1,x2: οι λύσεις και disc: η Διακρίνουσα*/ printf("the Quadratic equation is (a*x^2 + b*x + c = 0)\n"); printf("enter numbers for a, b, c (separated by commas): "); scanf("%d, %d, %d", &a, &b, &c); if(a == 0) /* όμοια με Πρωτοβάθμια εξίσωση (b*x + c = 0)*/ if(b == 0) if(c == 0) printf("indeterminate equation: x can take any\ value\n"); else printf("equation is impossible: There in no\ solution\n"); } /* τέλος if b*/ else x = (-c) / b; printf("the solution is: x = %.2f\n", x); } /* τέλος else */ } /* τέλος if a*/ else disc = (b*b) - (4*a*c); /* υπολογισμός Διακρίνουσας */ if(disc > 0) /* ρίζες της Διακρίνουσας */ x1 = ((-b) + sqrt(disc)) / (2*a); x2 = ((-b) - sqrt(disc)) / (2*a); printf("there are two possible solutions: x1 = %.2f and\ x2 = %.2f\n", x1, x2); } /* τέλος if */ else if(disc == 0) /* Διακρίνουσα ίση με 0 */ x = (-b)/(2*a); printf("the solution is: x = %.2f\n", x); } else /* Διακρίνουσα < 0 */ printf("equation is impossible: There in no\ solution\n"); } /* τέλος else */ } /* τέλος εξωτερικού else */ return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [28]

30 /* Παράδειγμα 9β Δευτεροβάθμια εξίσωση Υπολογισμός Ριζών με Διακρίνουσα */ #include <stdio.h> #include <math.h>/* ενσωμάτωση της βιβλιοθήκης math */ /* έναρξη συνάρτησης main */ int main(void) int a, b, c; float x1, x2, disc; /* x1,x2: οι λύσεις και disc: η Διακρίνουσα*/ printf("enter value of a : "); scanf("%d", &a); printf("enter value of b : "); scanf("%d", &b); printf("enter value of c : "); scanf("%d", &c); disc=(b * b) - (4 * a * c); /* υπολογισμός Διακρίνουσας */ if(disc > 0) printf("\n ROOTS ARE REAL ROOTS\n"); x1 = ((-b) + sqrt(disc)) /(2*a); /* χρήση της συνάρτησης math */ x2 = ((-b) - sqrt(disc)) /(2*a); printf("\n ROOTS : %f, %f\n", x1, x2); } /* τέλος if */ else if(disc == 0) printf("\n ROOTS ARE EQUAL\n"); x1 = (-b/(2*a)); printf("\n ROOT IS...: %f\n", x1); } /* τέλος else if */ else printf("\n ROOTS ARE IMAGINARY ROOTS\n"); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [29]

31 Παράδειγμα 10_Μενού επιλογών, τερματισμός με 0 άθροισμα, αφαίρεση, πολλαπλασιασμός, διαίρεση, υπόλοιπο ακέραιας διαίρεσης [30]

32 Κώδικας σε C /* Παράδειγμα 10 Υπολογιστής τσέπης, με χρήση switch */ #include <stdio.h> #include <stdlib.h> /* ενσωμάτωση της βιβλιοθήκης stdlib */ /* έναρξη συνάρτησης main */ int main(void) int a,b,res,ch; /* Τελεστές +,-,*, /, % */ printf("\n\t********************"); printf("\n\tmenu\n"); printf("\n\t********************");; printf("\n\t(1)addition"); /* επιλογή για πρόσθεση */ printf("\n\t(2)subtraction"); /* επιλογή για αφαίρεση */ printf("\n\t(3)multiplication"); /* επιλογή για πολλαπλασιασμό */ printf("\n\t(4)division"); /* επιλογή για διαίρεση */ printf("\n\t(5)remainder"); /* επιλογή για υπόλοιπο ακέραιας διαίρεσης */ printf("\n\t(0)exit"); /* επιλογή για τερματισμό */ printf("\n\t********************"); printf("\n\n\tenter your choice: "); scanf("%d",&ch); if(ch <= 5 && ch > 0) printf("\n\tenter value for number 1: "); scanf("%d", &a); printf("\tenter value for number 2: "); scanf("%d", &b); } switch(ch) case 1: res= a + b; printf("\n\t Addition: %d\n",res); break; case 2: res= a - b; printf("\n\t Subtraction: %d\n",res); break; case 3: res= a * b; printf("\n\t Multiplication: %d\n",res); break; case 4: res= a / b; /* υπόθεση ότι b!= 0 */ printf("\n\t Division: %d\n",res); break; case 5: res= a % b; /* υπόθεση ότι b!= 0 */ printf("\n\t Remainder: %d\n",res); break; case 0: printf("\n\t Choice Terminated\n"); exit(1); /* χρήση της συνάρτησης exit της βιβλιοθήκης stdlib */ break; [31]

33 default: printf("\n\t Invalid Choice\n"); } /* end switch */ return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [32]

34 Παράδειγμα 11_Διαβάζει βαθμολογία και τυπώνει αντίστοιχο αποτέλεσμα εισάγει τον βαθμό μαθήματος (δεκαδικός αριθμός μεταξύ του 0.0 και του 10.0) Ν φοιτητών και χαρακτηρίζει ως εξής: a) Άριστα, εάν ο βαθμός είναι μεγαλύτερος ή ίσος του 8.50 b) Λίαν Καλώς, εάν ο βαθμός είναι μικρότερος του 8.50 και μεγαλύτερος ή ίσος του 6.50 c) Καλώς, εάν ο βαθμός είναι μικρότερος του 6.50 και μεγαλύτερος ή ίσος του 5.00 και d) Αποτυχία, εάν ο βαθμός είναι μικρότερος του Να τυπώνεται το πλήθος για κάθε περίπτωση. [33]

35 /* Παράδειγμα 11 Χαρακτηρισμός Βαθμών */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) float grade; int counter1=0; /* μετρητής για "Άριστα" */ int counter2=0; /* μετρητής για "Λίαν Καλώς" */ int counter3=0; /* μετρητής για "Καλώς" */ int counter4=0; /* μετρητής για "Αποτυχία" */ int i, N; printf("enter # of students: "); scanf("%d", &N); for (i=1; i<=n; i++) printf("give me a grade for student %d (values between 0.00 and 10.00): ", i); scanf("%f",&grade); if (grade > 8.50) printf("arista\n"); counter1++; } /* τέλος if */ else if (grade > 6.50) printf("lian KALWS\n"); counter2++; } /* τέλος else if */ else if (grade > 5.00) printf("kalws\n"); counter3++; } /* τέλος else if */ else printf("apotyxia\n"); counter4++; } /* τέλος else */ } /* τέλος for */ printf("******************************************\n"); printf("%d students phran KALWS \n",counter1); printf("%d students phran LIAN KALWS \n",counter2); printf("%d students phran ARISTA \n",counter3); printf("%d students failed \n",counter4); printf("******************************************\n"); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [34]

36 Παράδειγμα 12_Διάβασμα μονοδιάστατου πίνακα γέμισμα μονοδιάστατου πίνακα ακεραίων και εκτύπωση αντίστροφα ΔΡΔ [35]

37 Κώδικας σε C /* Παράδειγμα 12 Απόδοση τιμών σε πίνακα από πληκτρολόγιο και εκτύπωση αντίστροφα */ #include <stdio.h> #define SIZE 10 /* δήλωση συμβολικής σταθεράς για μέγιστο μέγεθος πίνακα */ /* έναρξη συνάρτησης main */ int main(void) int a[size]; /* δήλωση πίνακα a ακεραίων με SIZE στοιχεία */ int i; /* μετρητής για τις επαναλήψεις στον πίνακα*/ /* ορισμός τιμών */ for (i = 0; i < SIZE; i++) printf("enter value for the %d element of the array: ", i); scanf("%d", &a[i]); } /* τέλος for */ /* εκτύπωση συμβολοσειρών για καλύτερη επισκόπηση πίνακα */ printf("\nreverse print of the array\n"); printf("%s%13s\n", "Element", "Value"); /* εκτύπωση αντίστροφα */ for(i = SIZE-1; i >= 0; i--) printf("%7d%13d\n", i, a[i]); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [36]

38 Παράδειγμα 13_Διάβασμα μονοδιάστατου πίνακα θετικών γέμισμα μονοδιάστατου πίνακα με θετικούς, τερματίζει στο 0 ή στο μέγιστο πλήθος και εκτύπωση αντίστροφα. [37]

39 Κώδικας σε C /* Παράδειγμα 13 Αρχικοποίηση στοιχείων πίνακα με θετικούς και εκτύπωση αντίστροφα */ #include <stdio.h> #define SIZE 10 /* μέγιστο μέγεθος πίνακα */ /* έναρξη συνάρτησης main */ int main(void) int a[size]; /* δήλωση πίνακα a ακεραίων με SIZE στοιχεία */ int i; /* μετρητής για τις επαναλήψεις στον πίνακα*/ /* ορισμός τιμών */ for (i = 0; i < SIZE; i++) printf("enter value for the %d element of the array: ", i); scanf("%d", &a[i]); if(a[i] < 0) printf("you entered a negative value, re-enter\n"); i -=1; } /* end if */ else if (a[i] == 0) /* όταν δοθεί 0 τερματίζει */ break; } /* τέλος for */ /* εκτύπωση συμβολοσειρών για καλύτερη επισκόπηση πίνακα */ printf("\nreverse print of the array\n"); printf("%s%13s\n", "Element", "Value"); /* εκτύπωση αντίστροφα */ for (i = SIZE-1; i >= 0; i--) printf("%7d%13d\n", i, a[i]); } /* τέλος for */ return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [38]

40 Παράδειγμα 14_Μονοδιάστατος πίνακας, εκτύπωση άρτιων γέμισμα μονοδιάστατου πίνακα 10 θέσεων ακεραίων έλεγχος για άρτιους και περιττούς και εκτύπωση των άρτιων τιμών αλλιώς -1. [39]

41 Κώδικας σε C /* Παράδειγμα 14 Γέμισμα πίνακα και εκτύπωση των άρτιων αλλιώς εκτύπωση -1*/ #include <stdio.h> #define SIZE 10 /* μέγιστο μέγεθος πίνακα */ /* έναρξη συνάρτησης main */ int main(void) int a[size]; /* δήλωση πίνακα a ακεραίων με SIZE στοιχεία */ int i; /* για τις επαναλήψεις στον πίνακα*/ int evens = 0, odds = 0; /* για τις επαναλήψεις στον πίνακα*/ /* ορισμός τιμών πίνακα */ for (i = 0; i < SIZE; i++) printf("enter value for the %d element of the array: ", i); scanf("%d", &a[i]); if (a[i] % 2 == 0) /* έλεγχος για άρτιο */ printf("the element is even number\n"); a[i] = a[i]; /* όταν άρτιος τύπωσε την τιμή του */ } /* τέλος if */ else printf("the element is odd number (replace with -1)\n"); a[i] = -1; /* όταν περιττός τύπωσε -1 */ } /* τέλος else */ } /* τέλος for */ /* εκτύπωση συμβολοσειρών για καλύτερη επισκόπηση πίνακα */ printf("%s%13s\n", "Element", "Value"); /* εκτύπωση πίνακα */ for(i = 0; i < SIZE; i++) printf("%7d%13d\n", i, a[i]); return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [40]

42 Παράδειγμα 15_Πολλαπλασιασμός ακεραίου με διάνυσμα απόδοση τιμών σε πίνακα από ορισμό και πολλαπλασιασμός ακεραίου αριθμού με μονοδιάστατο πίνακα και εκτύπωση [41]

43 Κώδικας σε C /* Παράδειγμα 15 Πολλαπλασιασμός αριθμού με διάνυσμα */ #include <stdio.h> /* έναρξη συνάρτησης main */ int main(void) int value, i; /* απόδοση αρχικών τιμών σε πίνακα με μια δήλωση */ int a[5] = 32, 24, 18, 9, 77}; printf("give a number: "); scanf("%d", &value); printf("%s%11s\n", "Element", "Vector"); /* πολλαπλασιασμός στοιχείων πίνακα με αριθμό */ for (i = 0; i < 5; i++) printf("%d", a[i]); /* εκτύπωση αρχικού πίνακα */ a[i] = a[i]*value; } printf("%13d\n", a[i]); /* εκτύπωση τελικού πίνακα */ return 0; /* για επιτυχή τερματισμό */ } /* τέλος συνάρτησης main */ [42]

44 Ασκήσεις για εξάσκηση 1. Διάβασμα δισδιάστατου πίνακα διάβασμα δισδιάστατου πίνακα ακεραίων MxM και εκτύπωση της κύριας διαγωνίου(i=j). 2. Πρόσθεση δισδιάστατου πίνακα πρόσθεση των στοιχείων δισδιάστατου πίνακα MxN και εκτύπωση πίνακα. 3. Πολλαπλασιασμός δισδιάστατου πίνακα πολλαπλασιασμός των στοιχείων δισδιάστατου πίνακα MxN ανά γραμμή. 4. Παιχνίδι ναυμαχία γέμισμα δισδιάστατου πίνακα MxM με 0 και 1 και να βρίσκει και να μετράει όλα τα Χ φοιτητές Υ μαθήματα Μ.Ο μαθημάτων, Μ.Ο φοιτητή να δίνει τους βαθμούς Υ μαθημάτων που έχουν πάρει Χ φοιτητές και να υπολογίζει το μέσο όρο του κάθε φοιτητή σε όλα τα μαθήματα καθώς και το μέσο όρο του κάθε μαθήματος από όλους τους φοιτητές. [43]

Μάριος Αγγελίδης Ενότητες βιβλίου: 2.1, 2.3, 6.1 (εκτός ύλης αλλά χρειάζεται για την συνέχεια) Ώρες διδασκαλίας: 1

Μάριος Αγγελίδης Ενότητες βιβλίου: 2.1, 2.3, 6.1 (εκτός ύλης αλλά χρειάζεται για την συνέχεια) Ώρες διδασκαλίας: 1 Ενότητα 1 Ενότητες βιβλίου: 2.1, 2.3, 6.1 (εκτός ύλης αλλά χρειάζεται για την συνέχεια) Ώρες διδασκαλίας: 1 Τι είναι αλγόριθμος Σύμφωνα με το σχολικό βιβλίο: Ορισμός: Μια πεπερασμένη σειρά ενεργειών, αυστηρά

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

Εισαγωγή - Βασικές έννοιες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο

Εισαγωγή - Βασικές έννοιες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο Εισαγωγή - Βασικές έννοιες Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος 2012-13 A Εξάμηνο Αλγόριθμος Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων

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

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Σκοπός του μαθήματος Σκοπός του παρόντος μαθήματος είναι να μάθετε να κάνετε εισαγωγή δεδομένων σε πίνακες και περαιτέρω επεξεργασία

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

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

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

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

ΑΕΠΠ Ερωτήσεις θεωρίας

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

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εντολές ελέγχου ροής προγράμματος (if-else & switch) Η εντολή if-else Η εντολή if-else υπάρχει σχεδόν σε όλες τις γλώσσες προγραμματισμού. Χρησιμοποιείται για τον έλεγχο της

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

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

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

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

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ ) Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ. 25 48) Τι είναι αλγόριθμος; Γ ΛΥΚΕΙΟΥ Αλγόριθμος είναι μία πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρονικό διάστημα,

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf("%u\n", x); Β. unsigned char

Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf(%u\n, x); Β. unsigned char ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εξετάσεις Β Περιόδου 2015 (8/9/2015) ΟΝΟΜΑΤΕΠΩΝΥΜΟ:................................................................................ Α.Μ.:...............................................

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

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

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

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

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

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

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

Εργαστήριο 5. Εντολή if και παραλλαγές: if-else, πολλαπλές if, πολλαπλές if-else. Απλές και σύνθετες εντολές. Εντολή switch.

Εργαστήριο 5. Εντολή if και παραλλαγές: if-else, πολλαπλές if, πολλαπλές if-else. Απλές και σύνθετες εντολές. Εντολή switch. Εργαστήριο 5 Εντολή if και παραλλαγές: if-else, πολλαπλές if, πολλαπλές if-else. Απλές και σύνθετες εντολές. Εντολή switch. Προτεραιότητα τελεστών (συνέχεια): () παρενθέσεις +, - (πρόσημα), ++, -- *, /,

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

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος. 1. Δώστε τον ορισμό του προβλήματος. 2. Σι εννοούμε με τον όρο επίλυση ενός προβλήματος; 3. Σο πρόβλημα του 2000. 4. Σι εννοούμε με τον όρο κατανόηση προβλήματος; 5. Σι ονομάζουμε χώρο προβλήματος; 6.

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

ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ

ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2017-2018 ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ ΜΑΘΗΜΑ: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Εισαγωγή ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ Ένα πρόγραμμα σε C περιλαμβάνει μια ή περισσότερες συναρτήσεις

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

C: Από τη Θεωρία στην Εφαρμογή

C: Από τη Θεωρία στην Εφαρμογή Δρ. Γ. Σ. Τσελίκης Δρ. Ν. Δ. Τσελίκας C: Από τη Θεωρία στην Εφαρμογή Ενδεικτικές Ασκήσεις από το Βιβλίο C: Από τη Θεωρία στην Εφαρμογή (Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας) Ενδεικτικές Ασκήσεις του Βιβλίου Ε.Α.1

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

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Pascal- Εισαγωγή Η έννοια του προγράμματος Η επίλυση ενός προβλήματος με τον υπολογιστή περιλαμβάνει, όπως έχει ήδη αναφερθεί, τρία εξίσου

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

Πρόβλημα είναι μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής.

Πρόβλημα είναι μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής. Κεφάλαιο 2 - Πρόβλημα 2.1.1. Η έννοια του προβλήματος Πρόβλημα είναι μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής. 2.1.2. Κατηγορίες προβλημάτων

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

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

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

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

Γλώσσα Προγραμματισμού C. Προγραμματισμός HY: Γλώσσα Προγραμματισμού C. Γρήγορος Πίνακας Αναφοράς Σύνταξης. Εισήγηση #4. Επαναληπτικές δομές:

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

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

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

Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά. AeppAcademy.com facebook.com/aeppacademy Γεια. Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά. Καλή Ανάγνωση & Καλή Επιτυχία

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

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

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

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

Υπολογισμός - Συλλογή Δεδομένων - Πίνακες

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΕΞΕΤΑΣΗ IOYNIOY 2018 ΘΕΜΑΤΑ Α ΟΝΟΜΑΤΕΠΩΝΥΜΟ:... ΑΕΜ: ΕΞΑΜΗΝΟ:

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΕΞΕΤΑΣΗ IOYNIOY 2018 ΘΕΜΑΤΑ Α ΟΝΟΜΑΤΕΠΩΝΥΜΟ:... ΑΕΜ: ΕΞΑΜΗΝΟ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΕΞΕΤΑΣΗ IOYNIOY 2018 ΘΕΜΑΤΑ Α ΟΝΟΜΑΤΕΠΩΝΥΜΟ:... ΑΕΜ: ΕΞΑΜΗΝΟ: ΘΕΜΑ 1: 2.5 μονάδες Τι εκτυπώνουν τα παρακάτω κομμάτια κώδικα θεωρώντας ότι πληκτρολογούμε

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

Υπολογισμός - Εντολές Ελέγχου

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

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εντολές ελέγχου ροής προγράμματος (if-else & switch) Η εντολή if-else Η εντολή if-else υπάρχει σχεδόν σε όλες τις γλώσσες προγραμματισμού. Χρησιμοποιείται για τον έλεγχο της

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

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

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

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

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

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

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

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

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

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

Θεωρία Προγραμματισμού

Θεωρία Προγραμματισμού Θεωρία Προγραμματισμού 1) Τι ονομάζουμε Αλγόριθμο; Ονομάζεται μια ακολουθία από πεπερασμένο αριθμό εντολών, που αν εκτελεστούν με ακρίβεια, οδηγούν στη πραγματοποίηση μιας εργασίας. 2) Τι ονομάζουμε ανάλυση

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

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Α2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών Α3. Ο αλγόριθμος

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

Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό. Η έννοια του προβλήματος

Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό. Η έννοια του προβλήματος Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό Η έννοια του προβλήματος Τι είναι πρόβλημα; ΠΡΟΒΛΗΜΑΤΑ ΟΡΙΣΜΟΣ ΠΡΟΒΛΗΜΑΤΟΣ Πρόβλημα είναι κάθε κατάσταση που μας απασχολεί και χρήζει αντιμετώπισης,

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

Περιεχόμενα. Ανάλυση προβλήματος. Δομή ακολουθίας. Δομή επιλογής. Δομή επανάληψης. Απαντήσεις. 1. Η έννοια πρόβλημα Επίλυση προβλημάτων...

Περιεχόμενα. Ανάλυση προβλήματος. Δομή ακολουθίας. Δομή επιλογής. Δομή επανάληψης. Απαντήσεις. 1. Η έννοια πρόβλημα Επίλυση προβλημάτων... Περιεχόμενα Ανάλυση προβλήματος 1. Η έννοια πρόβλημα...13 2. Επίλυση προβλημάτων...17 Δομή ακολουθίας 3. Βασικές έννοιες αλγορίθμων...27 4. Εισαγωγή στην ψευδογλώσσα...31 5. Οι πρώτοι μου αλγόριθμοι...54

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

ΠΡΟΓΡΜΜΑΤΑ ΣΕ C. Γράψτε σε γλώσσα προγραμματισμού C τη συνάρτηση:

ΠΡΟΓΡΜΜΑΤΑ ΣΕ C. Γράψτε σε γλώσσα προγραμματισμού C τη συνάρτηση: ΠΡΟΓΡΜΜΑΤΑ ΣΕ C Γράψτε σε γλώσσα προγραμματισμού C τη συνάρτηση: int b_to_d(int dyad[16]) που δέχεται ως είσοδο έναν θετικό ακέραιο δυαδικό αριθμό με τη μορφή πίνακα δυαδικών ψηφίων και επιστρέφει τον

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

Πρόβλημα 37 / σελίδα 207

Πρόβλημα 37 / σελίδα 207 Πρόβλημα 37 / σελίδα 207 2.5. Ôåóô áõôïáîéïëüãçóçò Δίνονται οι παρακάτω ομάδες προτάσεων. Σε κάθε μία από αυτές, να κάνετε τις απαραίτητες διορθώσεις ώστε να ισχύουν οι προτάσεις 1. Η αναπαράσταση

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο. Επικοινωνία:

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο. Επικοινωνία: Επικοινωνία: spzygouris@gmail.com Να δοθεί ο ορισμός του Αλγορίθμου. Αλγόριθμος, σύμφωνα με το βιβλίο, είναι μια πεπερασμένη σειρά ενεργειών (όχι άπειρες), αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο

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

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 1: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ - ΟΡΙΣΜΟΙ

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

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

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή ονάδα Δικτύων και Επικοινωνιών ΗΥ Τομέας Πληροφορικής, αθηματικών και Στατιστικής ΓΕΩΠΟΙΚΟ ΠΑΕΠΙΣΤΗΙΟ ΑΘΗΩ Εισαγωγή στην Επιστήμη των ΗΥ άθημα-4 url: http://openeclass.aua.gr (AOA0) Λογισμικό Υπολογιστή

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

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

Προγραμματισμός Ι (HY120) Προγραμματισμός Ι (HY120) #6 εκτέλεση σε επανάληψη 1 Σπύρος Λάλης Εκτέλεση σε επανάληψη: while while () lexpr body true false Όσο η λογική συνθήκη επανάληψης lexpr αποτιμάται σε μια τιμή

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

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

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

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

Στόχοι και αντικείμενο ενότητας. Προτάσεις επανάληψης. Έλεγχος ροής προγράμματος. #5.. Εντολές Επανάληψης

Στόχοι και αντικείμενο ενότητας. Προτάσεις επανάληψης. Έλεγχος ροής προγράμματος. #5.. Εντολές Επανάληψης Στόχοι και αντικείμενο ενότητας Έλεγχος ροής προγράμματος (βλ. ενότητα #4) Δομή επανάληψης #5.. Εντολές Επανάληψης Προτάσεις επανάληψης Εντολές while, do while Εντολή for Περί βρόχων (loops) Τελεστές,

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

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

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

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

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

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Κεφάλαιο 6ο Εισαγωγή στον Προγραµµατισµό Μέρος Πρώτο (6.1, 6.2 και 6.3) Α. Ερωτήσεις Σωστού Λάθους 1. Η γλώσσα µηχανής είναι µία γλώσσα υψηλού επιπέδου.

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

Διάλεξη 5η: Εντολές Επανάληψης

Διάλεξη 5η: Εντολές Επανάληψης Διάλεξη 5η: Εντολές Επανάληψης Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Εντολές Επανάληψης CS100, 2015-2016

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

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα Τελεστές συντομογραφίας Τελεστές σύντομης ανάθεσης += παράδειγμα: sum+=10; αντί για: sum = sum

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

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

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

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

ΕΡΩΤΗΣΕΙΣ ΔΙΑΦΟΡΩΝ ΤΥΠΩΝ ΣΤΟ ΚΕΦΑΛΑΙΟ 2.2

ΕΡΩΤΗΣΕΙΣ ΔΙΑΦΟΡΩΝ ΤΥΠΩΝ ΣΤΟ ΚΕΦΑΛΑΙΟ 2.2 1. 1-Σ, 2-Σ, 3-Λ, 4-Σ, 5-Σ 2. 1-α, 2-α, 3-β, 4-β, 5-α, 6-α, 7-α, 8-β, 9-β, 10-β 3. Τι ονομάζουμε αλγόριθμο; Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ' ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΥΠΗΡΕΣΙΩΝ 2005 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ' ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΥΠΗΡΕΣΙΩΝ 2005 ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ 1ο Α. 1. Να αναφέρετε ονοµαστικά τα κριτήρια που πρέπει απαραίτητα

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

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

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

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

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ 1 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ Αλγόριθμος είναι μία πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός συγκεκριμένου προβλήματος. Κάθε

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

Προγραμματισμός Ι. Θεματική ενότητα 8: Δημιουργία προγραμμάτων

Προγραμματισμός Ι. Θεματική ενότητα 8: Δημιουργία προγραμμάτων Θεματική ενότητα 8: Δημιουργία προγραμμάτων Παράδειγμα 1: Να γραφεί πρόγραμμα που να δέχεται ως είσοδο κείμενο, να απαριθμεί τις εμφανίσεις των ψηφίων 0-9, τα λευκά διαστήματα και τους υπόλοιπους χαρακτήρες

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

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

Επιµέλεια Θοδωρής Πιερράτος Εισαγωγή στον προγραµµατισµό Η έννοια του προγράµµατος Ο προγραµµατισµός ασχολείται µε τη δηµιουργία του προγράµµατος, δηλαδή του συνόλου εντολών που πρέπει να δοθούν στον υπολογιστή ώστε να υλοποιηθεί

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

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

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

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

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

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

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

Κεφάλαιο 1 Ανάλυση προβλήματος

Κεφάλαιο 1 Ανάλυση προβλήματος Κεφάλαιο 1 Ανάλυση προβλήματος 1.1 Η έννοια πρόβλημα Με τον όρο πρόβλημα εννοείται μια κατάσταση η οποία χρειάζεται αντιμετώπιση, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής. 1.2 Κατανόηση

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

ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ

ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΞΕΤΑΣΤΙΚΗ ΠΕΡΙΟ ΟΣ: ΣΕΠΤΕΜΒΡΙΟΥ 6 Ι ΑΣΚΩΝ: Ε. ΚΟΦΙ ΗΣ Όλα τα ερωτήµατα είναι ισοδύναµα. Καλή επιτυχία! ΘΕΜΑ ο a) Βρείτε την αναπαράσταση

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

Πληροφορική ΙΙ. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Πληροφορική ΙΙ. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Πληροφορική ΙΙ Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Πληροφορική ΙΙ», 2015-2016 Μάθημα 1: Εισαγωγή στους Αλγόριθμους Αλγόριθμος είναι μια πεπερασμένη

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

ΣΗΜΕΙΩΣΕΙΣ ΣΤΟ ΜΑΘΗΜΑ «ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΕ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ»

ΣΗΜΕΙΩΣΕΙΣ ΣΤΟ ΜΑΘΗΜΑ «ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΕ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ» 1 ΣΗΜΕΙΩΣΕΙΣ ΣΤΟ ΜΑΘΗΜΑ «ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΕ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ» Β Με τον όρο Πρόβλημα προσδιορίζεται μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής

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

Πανεπιστήμιο Πελοποννήσου. Σχολή Θετικών Επιστημών & Τεχνολογίας. Τμήμα Επιστήμης & Τεχνολογίας Υπολογιστών. Προγραμματισμός Ι Εργαστήριο

Πανεπιστήμιο Πελοποννήσου. Σχολή Θετικών Επιστημών & Τεχνολογίας. Τμήμα Επιστήμης & Τεχνολογίας Υπολογιστών. Προγραμματισμός Ι Εργαστήριο Πανεπιστήμιο Πελοποννήσου Σχολή Θετικών Επιστημών & Τεχνολογίας Τμήμα Επιστήμης & Τεχνολογίας Υπολογιστών Προγραμματισμός Ι Εργαστήριο 03-12-2012 1 η Εργαστηριακή Άσκηση Να δημιουργήσετε πρόγραμμα που

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

Γλώσσες υψηλού επιπέδου Περιέχουν περισσότερες εντολές για την εκτέλεση πολύπλοκων εργασιών Τα προγράµµατα µεταφράζονται σε γλώσσα µηχανής είτε από το

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

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

Ασκήσεις & παραδείγματα για επανάληψη

Ασκήσεις & παραδείγματα για επανάληψη Λυμένα παραδείγματα Ασκήσεις & παραδείγματα για επανάληψη Χρησιμοποιώντας την ρητή (cast) ανάθεση main () int x, y; x = 7; y = 5; printf("given x = %d, y = %d\n", x, y); printf("x / y produces: %d\n",

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

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

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

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

Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής

Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής Αλγόριθμος (algorithm) λέγεται μία πεπερασμένη διαδικασία καλά ορισμένων βημάτων που ακολουθείται για τη λύση ενός προβλήματος. Το διάγραμμα ροής

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

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

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

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

Ορισμός Κάθε ζήτημα που τίθεται προς επίλυση, κάθε δύσκολη κατάσταση που μας απασχολεί και πρέπει να αντιμετωπιστεί.

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

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

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Βασικές έννοιες αλγορίθμων Εισαγωγή Αρχικά εξηγείται ο όρος αλγόριθμος και παραθέτονται τα σπουδαιότερα κριτήρια που πρέπει να πληροί κάθε

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

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Προγραμματισμός

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

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

Εντολές ελέγχου ροής if, for, while, do-while

Εντολές ελέγχου ροής if, for, while, do-while Εντολές ελέγχου ροής if, for, while, do-while 1 Μαρτίου 014 1 Εντολές εκτέλεσης υπό συνθήκη Μπορούμε να εκτελέσουμε εντολές της γλώσσας σε περίπτωση που κάποια συνθήκη ισχύει χρησιμοποιώντας την εντολή

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

Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια

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

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

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

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

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

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

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

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

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

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

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

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

Αρχές Προγραμματισμού Αρχές Προγραμματισμού https://eclass.upatras.gr/courses/ee806/index.php Βασίλης Παλιουράς paliuras@ece.upatras.gr Μέχρι τώρα Μεθοδολογία Αυξητική ανάπτυξη Top-down Δομημένος προγραμματισμός Οργάνωση προγράμματος

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

Προγραμματισμός Η/Υ. Ενότητα 5: Εντολές Επανάληψης

Προγραμματισμός Η/Υ. Ενότητα 5: Εντολές Επανάληψης Προγραμματισμός Η/Υ Ενότητα 5: Νίκος Καρακαπιλίδης, Καθηγητής Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Έλεγχος της ροής του προγράμματος

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

ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ

ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ Α) Να γράψετε στο τετράδιό σας τον αριθμό κάθε πρότασης και δίπλα το γράμμα "Σ", αν είναι σωστή, ή το γράμμα "Λ", αν είναι λανθασμένη. (Μονάδες 25) 1. Ένα αδόμητο πρόβλημα είναι ταυτόχρονα και ανοικτό

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

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων Πληροφορικής 2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών 3. Ο αλγόριθμος

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

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

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

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

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

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

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Οι εντολές ελέγχου της ροής ενός προγράμματος. Κεφάλαιο ΙΙI: Οι εντολές ελέγχου της ροής ενός προγράμματος 31 Εντολές ελέγχου της ροής Στο παρόν κεφάλαιο ασχολούμαστε με την σύνταξη των εντολών της C οι οποίες εισάγουν λογική και ελέγχουν την ροή εκτέλεσης

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

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

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εργαστήριο 3η σειρά ασκήσεων. Κοζάνη, 26 Οκτωβρίου 2007. Πρόγραμμα p3-1 (υλοποίηση ψευδοκώδικα σε πρόγραμμα) Εύρεση του μέγιστου, ελάχιστου και μέσου όρου

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

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

Προγραμματισμός Ι (HY120) Προγραμματισμός Ι (HY120) #5 εκτέλεση υπό συνθήκη 1 Σπύρος Λάλης Ροή εκτέλεσης Μέχρι στιγμής η ροή εκτέλεσης του κώδικα είναι αυστηρά γραμμική Οι εντολές που γράφουμε στον κώδικα μας εκτελούνται μια προς

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

ΑΣΚΗΣΗ 4: ΟΜΕΣ ΒΑΣΙΚΩΝ ΒΡΟΧΩΝ

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

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

Εισαγωγή στον Προγραμματισμό (με. τη C)

Εισαγωγή στον Προγραμματισμό (με. τη C) Υποχρεωτικό Μάθημα 3 ου Εξαμήνου Χειμερινό Εξάμηνο Ακ. Έτους 20 Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Εισαγωγή στον Προγραμματισμό (με τη C) Διδάσκουσα: Φατούρου Παναγιώτα faturu [at] csd.uoc.gr

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

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

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

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

Προσέξτε πως η παράσταση μπορεί να περιλαμβάνει όχι μόνο μία τιμή ή μια άλλη μεταβλητή αλλά μια ολόκληρη μαθηματική παράσταση, όπως η εξής:

Προσέξτε πως η παράσταση μπορεί να περιλαμβάνει όχι μόνο μία τιμή ή μια άλλη μεταβλητή αλλά μια ολόκληρη μαθηματική παράσταση, όπως η εξής: Νικόλαος Μιχαλοδημητράκης Σημειώσεις C (Εργαστήριο) 3 ο Μέρος 3 ο Μέρος Παραστάσεις και Τελεστές Εντολή καταχώρησης Για να καταχωρήσουμε μία τιμή σε μια μεταβλητή χρησιμοποιούμε τον τελεστή καταχώρησης

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

Ασκηή σεις 12ο Μαά θημα - Λυύ σεις

Ασκηή σεις 12ο Μαά θημα - Λυύ σεις Ασκηή σεις 12ο Μαά θημα - Λυύ σεις Άσκηση 1: Γράψτε ένα πρόγραμμα που να δέχεται από το πληκτρολόγιο 21 ακέραιους αριθμούς (μεταξύ 0 και 100) και στη συνέχεια να υπολογίζει το πλήθος και το μέσο όρο, μόνο

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

ΛΟΓΙΚΑ ΔΙΑΓΡΑΜΜΑΤΑ. Γ Λυκείου Κατεύθυνσης Mike Trimos

ΛΟΓΙΚΑ ΔΙΑΓΡΑΜΜΑΤΑ. Γ Λυκείου Κατεύθυνσης Mike Trimos ΛΟΓΙΚΑ ΔΙΑΓΡΑΜΜΑΤΑ Γ Λυκείου Κατεύθυνσης Mike Trimos Βήματα Ανάπτυξης ενός Συστήματος 1.Ορισμός και κατανόηση του προβλήματος 2.Ανάλυση του προβλήματος 3.Σχεδιασμός Αλγοριθμικής Λύσης 4.Κωδικοποίηση 5.Διόρθωση

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

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ 032 2 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ Ενδιάμεση Εξέταση Ημερομηνία:08/03/10 Διάρκεια: 13:30 15:00 Διδάσκων: Παύλος Αντωνίου Ονοματεπώνυμο: Αριθμός Ταυτότητας: Η εξέταση

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

Ενότητα 4: «Εισαγωγή στον Προγραμματισμό. Τα πρώτα προγράμματα σε γλώσσα C»

Ενότητα 4: «Εισαγωγή στον Προγραμματισμό. Τα πρώτα προγράμματα σε γλώσσα C» Ενισχυτική διδασκαλία διδακτικές ενότητες αλγοριθμικής και εισαγωγής στον προγραμματισμό Ενότητα 4: «Εισαγωγή στον Προγραμματισμό. Τα πρώτα προγράμματα σε γλώσσα C» διδάσκων: χρήστος σκουρλάς, cskourlas@teiath.gr

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

Αλγόριθμοι. Βασικές έννοιες ΤΕΛΟΣ

Αλγόριθμοι. Βασικές έννοιες ΤΕΛΟΣ Αλγόριθμοι Βασικές έννοιες ΤΕΛΟΣ Κριτήρια πληρότητας Είσοδος Έξοδος Καθοριστικότητα Περατότητα Αποτελεσματικότητα 04/01/09 βασικές έννοιες Αλγορίθμων 2 Σκοπιές μελέτης αλγορίθμων Υλικού Η ταχύτητα εκτέλεσης

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

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

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

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

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