ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κ.ΑΛΑΦΟΔΗΜΟΣ καθηγητής Δ.Παπαχρήστος μέλος ΕΔΙΠ ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΠΑΝΕΠΙΣΤΗΜΙΟ Α ΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.

Slides:



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

POINTERS, AGGREGATION, COMPOSITION. POINTERS TO OBJECTS.
H γλώσσα Python H Python είναι μια γλώσσα προγραμματισμού υψηλού επιπέδου γενικής χρήσεως.Οι δημιουργοί της υποστηρίζουν ότι συνδυάζει μεγάλη δύναμη με.
DATA MINING LECTURE 6 Mixture of Gaussians and the EM algorithm
Μάθημα : Βασικά Στοιχεία της Γλώσσας Java
Python And Robotics.
Γλωσσική Τεχνολογία Object-Orientation in Python.
ΜΑΘ-3122/106 Γλώσσα προγραμματισμού Ξενοφών Ζαμπούλης ΗΥ-150 Προγραμματισμός Ταξινόμηση και Αναζήτηση.
Φροντηστήριο Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Eργαλεία.
Εισαγωγικό Φροντηστήριο Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Eργαλεία.
Εισαγωγή στον Προγραμματισμό, Αντώνιος Συμβώνης, ΣΕΜΦΕ, ΕΜΠ, Slide 1 Εβδομάδα 7: Συμβολοσειρές.
ΘΠ06 - Μεταγλωττιστές Πίνακας Συμβόλων. Πίνακας Συμβόλων (Symbol Table) (Ι)  Είναι μια δομή στην οποία αποθηκεύονται τα ονόματα ενός προγράμματος και.
Προγραμματισμός ΙΙ Διάλεξη #6: Απλές Δομές Ελέγχου Δρ. Νικ. Λιόλιος.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II.
Γλωσσική Τεχνολογία Εισαγωγικό Φροντιστήριο. Project του μαθήματος  Εργασία 2 ατόμων  Προφορική εξέταση για :  Project (80%)  Θεωρία (20%)  Στο φροντιστήριο.
Άσκηση 1. Θεωρούμε το ακόλουθο κομμάτι κώδικα int i,j; double result, a[110][4]; for(i=0; i
Δομές Δεδομένων. Επιλογή δομής δεδομένων Κριτήρια: – Μέγεθος του προβλήματος – Πως θα χρησιμοποιηθεί Ενέργειες που καθορίζουν το κόστος: – Lookup: αναζήτηση/έλεγχος.
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
Θεωρία Υπολογισμού Χρονική Πολυπλοκότητα και Μοντέλα.
Μετατροπή Εκφράσεων σε C
32η Συνάντηση Εκπαιδευτικών στη Δυτική Μακεδονία σε Θέματα Τ. Π. Ε
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ – FILE & PROCESS HANDLING Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία.
ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία.
Εισαγωγή στη Γλώσσα Προγραμματισμού Python Τετάρτη Οργάνωση ΚΕΠΛΗΝΕΤ Δυτ. Θεσ/νικης Σχολ. Σύμβουλος Τζελέπη Σοφία Επιμορφωτικό Σεμινάριο στη Python.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java.
Τεχνολογία και Προγραμματισμός Υπολογιστών Ενότητα 5: Τύπος πίνακα,Μεταβλητές με δείκτη, Πολυδιάστατοι πίνακες Επίκουρος Καθηγητής Χρήστος Μακρής Τμήμα.
Variables, Expressions, and Statements Chapter 2.
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Αντισταθμιστική ανάλυση
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Πίνακες και αλφαριθμητικά
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ
Εφαρμογές Υπολογιστών
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΜΕΤΑΒΛΗΤΕΣ-ΣΤΑΘΕΡΕΣ -ΕΚΦΡΑΣΕΙΣ
Ενότητα Εισαγωγή Είναι εύκολη στη χρήση και στην εκμάθηση.
Αντικειμενοστραφής Προγραμματισμός ΙΙ
Αντικειμενοστραφής Προγραμματισμός ΙΙ
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Ταξινόμηση Ορισμός: Δοθέντων των στοιχείων a1,a2,… ,an η ταξινόμηση συνίσταται στην αντιμετάθεση της θέσης των στοιχείων ώστε να τοποθετηθούν με μια νέα.
Ειδικά Θέματα στον Προγραμματισμό Υπολογιστών
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
«Από τη MicroWorlds Pro στην Python»
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Σχεδιασμός με αναζήτηση στο χώρο πλάνων
Πρωτογενείς τύποι δεδομένων
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Ειδικά Θέματα στον προγραμματισμό Υπολογιστών
Εισαγωγή στον Προγραμματισμό με Python, ΑΠΘ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ Εισαγωγή στον Προγραμματισμό με Python Εβδομάδα 1: Βασικά στοιχεία.
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Αρχές Χρηματοοικονομικής Διοίκησης
Αναδρομικές Εξισώσεις και Αφηρημένοι Τύποι Δεδομένων
Θεωρία Συνόλων - Set Theory
Πολυπλοκότητα Αλγορίθμων
Ερευνητική Εργασία Α΄ Λυκείου
8. ΚτΠ και προστασία του καταναλωτή Βασίλης Γ. Χατζόπουλος, Επ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
[Μονοδιάστατοι πίνακες]
Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Δυτικής Αττικής
ΝΙΚΟΛΑΟΣ ΑΒΟΥΡΗΣ, κ.ά., PYTHON, Εισαγωγή στους υπολογιστές, ΠΕΚ 2016,
ΝΙΚΟΛΑΟΣ ΑΒΟΥΡΗΣ, κ.ά., PYTHON, Εισαγωγή στους υπολογιστές, ΠΕΚ 2016,
4η ΕΝΟΤΗΤΑ «Φορείς – Οργανισμοί – Χάρτα δικαιωμάτων»
Λογιςτικη κοςτους ΣΥΜΠΑΡΑΓΩΓΑ.
ΝΙΚΟΛΑΟΣ ΑΒΟΥΡΗΣ, κ.ά., PYTHON, Εισαγωγή στους υπολογιστές, ΠΕΚ 2016,
ΝΙΚΟΛΑΟΣ ΑΒΟΥΡΗΣ, κ.ά., PYTHON, Εισαγωγή στους υπολογιστές, ΠΕΚ 2016,
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Μεταγράφημα παρουσίασης:

ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κ.ΑΛΑΦΟΔΗΜΟΣ καθηγητής Δ.Παπαχρήστος μέλος ΕΔΙΠ ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΠΑΝΕΠΙΣΤΗΜΙΟ Α ΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ 4 η Διάλεξη (β)

Σκοπός Διάλεξης Η παρουσίαση της γλώσσας Προγραμματισμού PYTHON (δομημένος προγραμματισμός) και μια εισαγωγή στην UML

PYTHON Βασικές Δομές Δεδομένων Αλφαριθμητικά (strings) Πλειάδες (tuples) Λεξικά (Dictionaries) Σύνολα (Sets)

PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Αμετάβλητα Είδος ακολουθίας (sequence) Κάθε στοιχείο -> αριθμημένη σειρά Προσπέλαση Προεπιλεγμένη κωδικοποίηση UTF-8

PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ

PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Προσπέλαση – Προσπέλαση των στοιχείων μετρώντας από το τέλος του αλφαριθμητικού προς την αρχή του με χρήση του συμβόλου – με τη βοήθεα του δείκτη (index)

PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Αντιστροφή αλφαριθμητικού Αντιστροφή αλφαριθμητικού (από το τέλος ένα – ένα τα γράμματα από τη αντίστροφη σειρά)

PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Αντιστροφή αλφαριθμητικού Αντιστροφή αλφαριθμητικού (μόνο ένα τμήμα του)

PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Συναρτήσεις αλφαριθμητικών rjust() rjust(): δεξιά στοίχιση χρησιμοποιώντας τόσους χαρακτήρες όσους αναφέρονται στο όρισμα της

PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Συναρτήσεις αλφαριθμητικών split() split(): χωρίζε ένα αλφαριθμητικό με βάση το όρισμα που δέχεται κα είναι και αυτό αλφαριθμητικό

PYTHON ΛΙΣΤΑ λίστες Οι λίστες είναι δομές δεδομένων οι οποίες μπορούν να περιέχουν οποιοδήποτε πλήθος στοιχείων Λίστα = Πίνακας Αυτόματη δέσμευση μνήμης

PYTHON ΛΙΣΤΑ Η λίστα μπορεί να περιέχει οτιδήποτε τύπου αντικείμενο

PYTHON ΛΙΣΤΑ Μία λίστα μέσα σε μία άλλη λίστα ονομάζεται εμφωλευμένη λίστα ['spam', 2.0, 5, [10, 20]] Μία λίστα η οποία δεν περιέχει κανένα στοιχείο ονομάζεται κενή λίστα και μπορείτε να δημιουργήται με κενές αγκύλες [] Οι λίστες είναι ευμετάβλητες

PYTHON ΛΙΣΤΑ ΛΙΣΤΑ >>> cheeses = ['Cheddar', 'Edam', 'Gouda'] >>> numbers = [17, 123] >>> empty = [] >>> print cheeses[0] Cheddar >>> numbers = [17, 123] >>> numbers[1] = 5 >>> print numbers [17, 5]

PYTHON ΛΙΣΤΑ Διασχίζοντας μία λίστα για διάβασμα στοιχείων for cheese in cheeses: print cheese Εγγραφή ή διαγραφή στοιχείων λίστας for i in range(len(numbers)): numbers[i] = numbers[i] * 2 Η len επιστρέφει το πλήθος των στοιχείων της λίστας και η range επιστρέφει μία λίστα δεικτών από το 0 έως το n-1, όπου n είναι το μήκος της λίστας Σε κάθε επανάληψη η i παίρνει το δείκτη του επόμενου στοιχείου και χρησιμοποιείται από τη δήλωση εκχώρησης μέσα στο σώμα για να διαβάσει τη παλιά τιμή του στοιχείου και να εκχωρήσει την νέα

PYTHON ΛΙΣΤΑ Λίστες και τεμάχια >>> t = ['a', 'b', 'c', 'd', 'e', 'f'] >>> t[1:3] ['b', 'c'] >>> t[:4] ['a', 'b', 'c', 'd'] >>> t[3:] ['d', 'e', 'f']

PYTHON ΛΙΣΤΑ Μέθοδοι Λιστών Προσθήκη νέου στοιχείου Επεκτείνει μια λίστα με την προσθήκη μιας άλλης λίστας Ταξινόμηση λίστα (αύξουσα σειρά)

PYTHON ΛΙΣΤΑ Διαγραφή στοιχείου λίστας Χρήση λίστας ως στοίβας push (ονομάζεται append στην Python) pop

PYTHON ΠΛΕΙΑΔΑ Είναι ένα στιγμιότυπο της λίστας Δεν αλλάζει μέγεθος ούτε και στοιχεία Με την χρήση της επιστρέφονται πολλές τιμές σε συναρτήσεις Δημιουργία πλειάδας:

PYTHON ΛΕΞΙΚΟ Αντιστοίχηση τιμών με λέξεις κλειδιών Γενίκευση λιστών Δεικτοδότηση αντικείμενο με οποιοδήποτε αντικείμενο φτάνει αυτό να είναι σταθερό και μοναδικό (δηλ. δεν αλλάζει τιμή)

PYTHON ΛΕΞΙΚΟ Δημιουργία λεξικού Προσθήκη τιμής σε άδειο λεξικό

PYTHON ΛΕΞΙΚΟ Δημιουργία λεξικού με τη μέθοδο diet()

PYTHON ΛΕΞΙΚΟ Διαγραφή Διαγραφή: χρήση του del - del d[‘milk’], διαγραφή της αντίστοιχης εγγραφής από το λεξικό Μέγεθος Μέγεθος: Ανάκτηση μεγέθους ενός λεξικού (αριθμός ζευγαρών/ κλειδί/τιμή) με len(d) Κλειδιά Κλειδιά: Εύρεση κλειδιών ενός λεξικού (χρήσιμο σε βρόχους) με d.keys() Τιμές Τιμές: εύρεση τιμών με d.values() Κλειδί/τιμή Κλειδί/τιμή: ανάκτηση όλων των ζευγών κλειδί/τιμή από ένα συγκεκριμένο λεξικό με d.items() που επιστρέφει πλειάδες από δύο στοιχεία (κλειδί, τιμή)

PYTHON ΛΕΞΙΚΟ

PYTHON ΛΕΞΙΚΟ Διάτρεξη τιμών (απλή) Διάτρεξη τιμών (επιστροφή κλεδί/τιμή)

PYTHON ΛΕΞΙΚΟ Ταξινόμηση λεξικού

PYTHON ΣΥΝΟΛΑ Δημιουργία συνόλου Χρήση [ ]

PYTHON ΣΥΝΟΛΑ Πρόσθεση στοιχείου σε ένα σύνολο Αφαίρεση στοιχείου από ένα σύνολο Ένωση συνόλων Τομή συνόλων Διαφορά συνόλων Συμμετρική διαφορά συνόλων

PYTHON ΣΥΝΟΛΑ

PYTHON ΣΥΝΟΛΑ

PYTHON Απλοί τύποι - bool - int - float - string

PYTHON Τοπικές και Καθολικές μεταβλητές Μια τοπική μεταβλητή είναι προσβάσιμη μόνο στο τοπικό εύρος (scope) scope Μια καθολική μεταβλητή είναι προσβάσιμη σε κάθε εύρος (scope)

PYTHON Τοπικές και Καθολικές μεταβλητές

PYTHON

Σας ευχαριστώ για την προσοχή σας…