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

Σχετικά έγγραφα
Προγραμματισμός Ι (ΗΥ120)

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

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

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

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

Βασικές Έννοιες. Προγραµµατισµός Ι 1

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

Κεφάλαιο 10 ο Υποπρογράµµατα

Χειµερινό Εξάµηνο 2013

Προγραμματισμός Χειμερινό Εξάμηνο 2014

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

Προγραμματισμός Χειμερινό Εξάμηνο 2017

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

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

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ' ΛΥΚΕΙΟΥ ΤΕΧΝ/ΚΗΣ ΚΑΤ/ΝΣΗΣ (Πλ. & Υπ.) 2006 ΕΚΦΩΝΗΣΕΙΣ ÈÅÌÅËÉÏ

Προγραμματισμός. Εαρινό Εξάμηνο 2011

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

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

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

6. Εισαγωγή στον προγραµµατισµό

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

Γ. ίνεται το παρακάτω πρόγραµµα και υποπρογράµµατα: ΠΡΟΓΡΑΜΜΑ Κύριο ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α, Β, Γ ΑΡΧΗ ΙΑΒΑΣΕ Α, Β, Γ ΚΑΛΕΣΕ ιαδ1(α, Β, Γ)

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

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.

Κεφάλαιο 6 ο Εισαγωγή στον Προγραμματισμό 1

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

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

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

Φρ. Κουτελιέρης. Επίκουρος Καθηγητής Παν/µίου Ιωαννίνων ΠΛΗΡΟΦΟΡΙΚΗ Ι

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

Υποπρογράµµατα Συναρτήσεις. Στόχοι Μαθήµατος. Οι µαθητές να µπορούν:

Ψευδοκώδικας. November 7, 2011

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ' ΛΥΚΕΙΟΥ ΤΕΧΝ/ΚΗΣ ΚΑΤ/ΝΣΗΣ (Πλ. & Υπ.) 2006 ΕΚΦΩΝΗΣΕΙΣ

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

Έντυπο αξιολόγησης µαθήµατος, διδάσκοντος, και υπεύθυνης εργαστηρίου από τους φοιτητές

Κεφάλαιο 6 Εισαγωγή στον Προγραμματισμό. 26-Jun-15 ΑΕΠΠ - Καραμαούνας Π. 1

Σύνοψη Θεωρίας ΟΡΙΣΜΟΣ ΚΑΙ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΑΛΓΟΡΙΘΜΩΝ

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

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

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

Α. Ερωτήσεις Ανάπτυξης

Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Ημερομηνία: Πέμπτη 12 Απριλίου 2018 Διάρκεια Εξέτασης: 3 ώρες ΕΚΦΩΝΗΣΕΙΣ

Επαναληπτικό ιαγώνισµα Πληροφορικής Γ Γυµνασίου Γιώργος Λιακέας Σχολικός Σύµβουλος Πληροφορικής Ερωτήσεις

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

ΠΕΡΙΓΡΑΜΜΑ ΜΑΘΗΜΑΤΟΣ

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

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ (ΝΕΟ ΣΥΣΤΗΜΑ) 27 ΜΑΪΟΥ 2016 ΕΚΦΩΝΗΣΕΙΣ ÊÁËÁÌÁÔÁ

Περιεχόµενα του µαθήµατος 1. στον προγραµµατισµό 2. Λογικά διαγράµµατα 3. Τα βασικά της FORTRAN 4. Μεταβλητές & παράµετροι 5. οµές επανάληψης 6. οµές


ΗΥ 134. Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 1. Εισαγωγή. Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

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

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

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω:

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

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

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

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

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

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

Τεχνικές σχεδίασης προγραμμάτων, Προγραμματιστικά Περιβάλλοντα

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

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

Διδακτική της Πληροφορικής ΙΙ

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 8/1/12, 22:00

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

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

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2013 ÅÐÉËÏÃÇ

ΒΙΒΛΙΑ ΒΙΒΛΙΑ

Απλοποιεί τα γεγονότα έτσι ώστε να περιγράφει τι έχει γίνει και όχι πως έχει γίνει.

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

Χρησιμοποιώντας συναρτήσεις

Παιδαγωγική προσέγγιση: Πρόταση για την διδασκαλία της έννοιας αλγόριθµός στο περιβάλλον MicroWorlds Pro

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

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Διαδικασίες και συναρτήσεις. 22 Νοε 2008 Ανάπτυξη εφαρμογών/ Υποπρογράμματα 1

Πληροφορική 2. Αλγόριθμοι

Άξονας ανάπτυξης του µαθήµατος 3. Γενικός σκοπός του µαθήµατος. Το µάθηµα της Πληροφορικής στο Γυµνάσιο

Διάλεξη 1η: Εισαγωγή

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ

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

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

Κεφάλαιο 12 : ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

Θέματα ΑΕΠΠ Πανελλήνιες Εξετάσεις 2006

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ (ΝΕΟ ΣΥΣΤΗΜΑ) 27 ΜΑΪΟΥ 2016 ΕΚΦΩΝΗΣΕΙΣ

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

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

ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Ορισµοί κεφαλαίου. Σηµαντικά σηµεία κεφαλαίου

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 3: Συναρτήσεις

Θέματα Προγραμματισμού Η/Υ

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

Ενδεικτικές λύσεις και στατιστικά

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

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΤΑΞΗ

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Transcript:

Προγραµµατισµός Ι (ΗΥ120) Διάλεξη 1: Εισαγωγή

ΑΝΑΚΟΙΝΩΣΗ 2 Το αυριανό µάθηµα θα πραγµατοποιηθεί στο αµφιθέατρο Σαράτση

Ποιος είµαι εγώ! 3 Ναύπλιο, 4/1976-9/1993 Πάτρα, 9/1993-6/2004 Williamsburg, VA, USA, 7/2004-7/2006 Μυτιλήνη, 10/2006-2/2007 Βόλος, 2/2007 -

H Υπεύθυνη των Εργαστηρίων Βάνα Ντουφεξή 4 Πάτρα Urbana-Champaign (UIUC) Chicago (Northwestern) Βόλος, 10/2007 -

Ποιοι είστε εσείς; 5 Υπόβαθρο; Έχετε δει υπολογιστή; Έχετε ανοίξει υπολογιστή; Έχετε «προγραµµατίσει» υπολογιστή; Τι φαντάζεστε για το µάθηµα; Τι περιµένετε να µάθετε; Τι απαιτήσεις φαντάζεστε ότι υπάρχουν;

Υπολογιστές, Υπολογιστές και Υπολογιστές 6

Χτίζοντας έναν Υπολογιστή 7 Transistor Λογικές Πύλες

Χτίζοντας έναν Υπολογιστή 8 Λογικά Κυκλώµατα Ολοκληρωµένα Κυκλώµατα (π.χ. Επεξεργαστές)

Χτίζοντας έναν Υπολογιστή 9 Δοµικές Μονάδες - Σύστηµα

Μερικά Μυστικά των Υπολογιστών Οι υπολογιστές είναι ισχυρά εργαλεία Μπορούν να κάνουν πράγµατα Που πριν λίγα χρόνια δεν µπορούσαµε καν να φανταστούµε Μας κάνουν τη ζωή εύκολη Μας κάνουν τη ζωή δύσκολη Οι υπολογιστές είναι χαζοί Πολύ χαζοί Δεν µπορούν να κάνουν τίποτα από µόνοι τους Χρειάζονται οδηγίες για το παραµικρό! Μιλάνε µόνο µια περίεργη γλώσσα: 0.. 1.. 0.. 0.. 1.. 10

Οδηγίες στους Υπολογιστές 11 o Γλώσσα Μηχανής o Η µητρική γλώσσα του υπολογιστή o Ού µπλέξεις o Συµβολική γλώσσα o Πολύ κοντά στη γλώσσα µηχανής o... Αλλά κάτι µπορείς να καταλάβεις o Και πάλι ού µπλέξεις o Εκτός αν χρειαστεί ;-)

Οδηγίες στους Υπολογιστές 12 Γλώσσες υψηλού επιπέδου Τώρα µάλιστα! Κάτι γίνεται! Πιο κοντά στον άνθρωπο Ναι, αλλά ο υπολογιστής θα καταλάβει;

Περιεχόµενο Μαθήµατος 13 Εισαγωγή στον προγραµµατισµό. Το µοντέλο µνήµης και η έννοια της µεταβλητής. Βασικοί τύποι δεδοµένων και τελεστές. Δοµές ελέγχου, διακλαδώσεις, επαναλήψεις. Συναρτήσεις Εµβέλεια και διάρκεια ζωής µεταβλητών Κλήση συναρτήσεων Πέρασµα παραµέτρων Αναδροµή. Δείκτες. Πίνακες, σύνθετοι τύποι δεδοµένων και δυναµικές δοµές δεδοµένων. Αρχεία δεδοµένων. Εργαστήριο!

Πληροφορίες 14 Βασικά συγγράµµατα: «C Προγραµµατισµός», 3 η έκδοση, Deitel & Deitel, Εκδόσεις M. Γκιούρδας. «Η Γλώσσα Προγραµµατισµού C», Kernighan-Ritchie, Εκδόσεις Κλειδάριθµος. Mπορείς να µάθεις ποδήλατο διαβάζοντας οδηγίες σε βιβλίο; Ο προγραµµατισµός δε µαθαίνεται µε διάβασµα Δουλειά στον υπολογιστή!!! Πειραµατισµός, λάθη, εύρεση λαθών κ.ο.κ.

Απαιτήσεις - Αξιολόγηση Αξιολόγηση στο εργαστήριο (στον υπολογιστή) Προβιβάσιµος βαθµός: 5.0 1ετείς: Υποχρεωτικό εργαστήριο + 6 οµαδικές εργασίες (οµάδες 2 το πολύ ατόµων) Για να υπάρχει δικαίωµα εξέτασης: Απουσίες στο εργαστήριο <= 20% εργαστηρίων Μέσος όρος εργασιών >= 5.0 Παλαιότεροι: Εργασία εξαµήνου (οµάδες 2 ατόµων) Για να υπάρχει δικαίωµα εξέτασης βαθµός εργασίας >= 5.0 Δεν υπάρχει 2η ευκαιρία το Σεπτέµβρη για το εργαστήριο 15

Ώρες Εργαστηρίου Θα ανατεθείτε σε κάποιο από τα Τµήµατα: Τµήµα 1: Δευτέρα 10:00-12:00 Τµήµα 2: Δευτέρα 12:00-14:00 Τµήµα 3: Δευτέρα 14:00-16:00 Τµήµα 4: Τρίτη 14:00-16:00 Τµήµα 5: Τρίτη 16:00-18:00 Τµήµα 6: Τρίτη 18:00-20:00 Δείτε τη σελίδα του µαθήµατος και τον πίνακα ανακοινώσεων µετά την 23/9. Ξεκινάµε από Δευτέρα 27/9 16

Φροντιστήριο Επέκταση του εργαστηρίου Προετοιµασία για το εργαστήριο της επόµενης εβδοµάδας Υποχρεωτικό για πρωτοετείς 17 Ξεκινάµε από Παρασκευή 24/9

Οι καλοί λογαριασµοί... Οι ασκήσεις είναι ατοµικές. Το εννοούµε... Έχουµε τρόπο να βρούµε τις εξυπνάδες 18 Για όποιον κάνει εξυπνάδες (παίρνει ή δίνει κώδικα), απλά 0... Και πιθανότατα ραντεβού του χρόνου... Δικαιολογίες δεν ήξερα, δεν κατάλαβα δεν πιάνουν...

Επικοινωνία Ιστοσελίδα µαθήµατος http://www.inf.uth.gr/courses/ce120 19 Λίστα ηλεκτρονικού ταχυδροµείου http://infserver.inf.uth.gr/mailman/listinfo/ce120 Forum Προγραµµατισµού http://www.inf.uth.gr/courses/coding

Επικοινωνία 20 Επικοινωνία µε τον διδάσκοντα: Κτήριο Μεταπτυχιακού, 2 ος όροφος Ώρες γραφείου: TBA E-mail: cdantonop@gmail.com, cda@inf.uth.gr Επικοινωνία µε την υπεύθυνη εργαστηρίων: Γκλαβάνη 37, Γραφείο Δ3/4 E-mail: doufexi@gmail.com, vdoufexi@inf.uth.gr

Μεθοδολογία Επίλυσης Προβλήµατος Ανάλυση του προβλήµατος Τι έχουµε; Τι ακριβώς θέλουµε να βρούµε; Πώς σπάει σε µικρότερα / απλούστερα προβλήµατα; Χονδρικά ποια στρατηγική πρέπει να ακολουθήσουµε; Αλγόριθµος Ακριβής ακολουθία πεπερασµένων βηµάτων που πρέπει να ακολουθηθούν για να λυθεί το πρόβληµα Απαιτήσεις Ορθότητα Καλή επίδοση «Οικονοµία» πόρων Για το ίδιο πρόβληµα πιθανόν να υπάρχουν >1 κατάλληλοι αλγόριθµοι 21

Μεθοδολογία Επίλυσης Προβλήµατος 22 Κωδικοποίηση «Μετάφραση» του αλγόριθµου σε γλώσσα που καταλαβαίνει ο υπολογιστής C στην περίπτωσή µας Δοκιµή και Αποσφαλµάτωση Ουδείς αλάνθαστος! Το πιο «σπαστικό» κοµµάτι Και το πιο χρονοβόρο Και το πιο σηµαντικό

Τι Είναι Πρόγραµµα και Γλώσσα Προγραµµατισµού; 23 Πρόγραµµα: Αλγόριθµος γραµµένος σε µια γλώσσα προγραµµατισµού Αυτή που «καταλαβαίνει» ο υπολογιστής Με λίγη βοήθεια Ο υπολογιστής ξέρει µόνο από 0 και 1 Γλώσσα προγραµµατισµού Σαν τις κανονικές γλώσσες Μόνο πιο σαφής και τυπική Έχει λεξιλόγιο / σηµασιολογία Έχει συντακτικό

Συντακτικό Το συντακτικό ορίζει το σύνολο των επιτρεπτών προτάσεων (ακολουθία συµβόλων). Επιτρεπτή πρόταση = συντακτικά ορθό πρόγραµµα Μπορεί να µεταφραστεί σε γλώσσα µηχανής και να εκτελεστεί. Ειδικές «γλώσσες» περιγραφής των κανόνων σύνταξης γλωσσών προγραµµατισµού Extended Backus Naur Form (EBNF) Συντακτικά διαγράµµατα 24

Σύνταξη και Σηµασία Σύνταξη: κανόνες για τον σχηµατισµό προτάσεων. Σηµασία: το νόηµα που έχουν οι συντακτικά επιτρεπτές προτάσεις. Η σύνταξη µιας γλώσσας δεν µπορεί να ορίσει ταυτόχρονα και την σηµασία της. Υπάρχουν όµως κανόνες! Υπάρχουν συντακτικά επιτρεπτές προτάσεις που δεν έχουν ορισµένη (µια µοναδική) σηµασία; Στις ανθρώπινες γλώσσες: Ναι Μαζί µιλάµε και χώρια καταλαβαινόµαστε Σε γλώσσες προγραµµατισµού: Κατά κανόνα όχι 25

Για παράδειγµα 26 Συντακτικά ορθές προτάσεις: -2+13 15/5-2 Όµως, σε τι τιµές αντιστοιχούν; -2+13 (-2)+(13) ή (2+13) 15/5-2 (15/5)-2 ή 15/(5-2)

Εκτέλεση Εντολών Οι εντολές ενός προγράµµατος εκτελούνται από «αριστερά προς τα δεξιά» και «από πάνω προς τα κάτω» Όπως διαβάζουµε ένα κείµενο. Βαρετό 27 Μπορεί να γίνουν άλµατα, είτε «προς τα εµπρός» είτε «προς τα πίσω» Κάποιες εντολές µπορεί να παρακαµφθούν ή/και να εκτελεστούν παραπάνω από µια φορά. Τα άλµατα πραγµατοποιούνται µε ειδικές εντολές που ορίζει κάθε γλώσσα προγραµµατισµού: Ελέγχου ροής εκτέλεσης προγράµµατος Κλήσης υποπρογραµµάτων

Εκτέλεση Προγράµµατος 28 επέλεξε την πρώτη εντολή µνήµη εκτέλεσε την εντολή διάβασµα γράψιµο µεταβλητές προγράµµατος επέλεξε την «επόµενη» εντολή Το σηµειωµατάριο του προγράµµατος

Έλεγχος Ροής Εκτέλεσης Ο προγραµµατιστής µπορεί να επηρεάσει την ροή εκτέλεσης του προγράµµατος µέσω εντολών ελέγχου. Εντολές ελέγχου: διαβάζουν την κατάσταση του προγράµµατος και ανάλογα µεταφέρουν την εκτέλεση σε ένα διαφορετικό σηµείο του κώδικα. Π.χ if <έκφραση> goto <n> Αν η <έκφραση> είναι αληθής τότε η εκτέλεση µεταφέρεται στην εντολή µε αριθµό <n>. Μπορούµε εύκολα να φτιάξουµε προγράµµατα µε εντολές που εκτελούνται υπό συνθήκη ή/και επανειληµµένα. 29

Για Παράδειγµα παράµετροι s = 0 πρόγραµµα P(x,y) 1:s = 0 2:if (x==0) goto 6 3:s = s + y 4:x = x -1 5:if (1==1) goto 2 6:print s εκτέλεση P(0,5) if (x==0) goto 6 print s εκτέλεση P(3,5) 30 s = 0 if (x==0) goto 6 s = s + y x = x -1 if (1==1) goto 2 if (x==0) goto 6 s = s + y x = x -1 if (1==1) goto 2 if (x==0) goto 6 s = s + y x = x -1 if (1==1) goto 2 if (x==0) goto 6 print s

Υποπρογράµµατα Οµάδα εντολών (και δεδοµένων) που είναι συντακτικά ή/και εκτελεστικά ανεξάρτητη (αυτόνοµη) από τον υπόλοιπο κώδικα. Ένα πρόγραµµα µπορεί να αποτελείται από (ή να χρησιµοποιεί) πολλά διαφορετικά υποπρογράµµατα. Όταν καλείται ένα υποπρόγραµµα, η εκτέλεση µεταφέρεται στο υποπρόγραµµα Όταν τερµατιστεί η εκτέλεση του, επιστρέφει µαγικά στο πρόγραµµα που πραγµατοποίησε την κλήση. Να τα χρησιµοποιείτε please!!! 31

Εκτέλεση µε Υποπρογράµµατα 32 πρόγραµµα P1 code A call P2 code B πρόγραµµα P2 call P3 code C return πρόγραµµα P3 code D return εκτέλεση P1 code A call P2 call P3 code D return code C return code B

ΑΝΑΚΟΙΝΩΣΗ 33 Το αυριανό µάθηµα θα πραγµατοποιηθεί στο αµφιθέατρο Σαράτση