Αφαιρετικοί Τυποι Δεδομένων

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Βασικές έννοιες αλγορίθμων
Advertisements

5 Οργάνωση υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών ã Εκδόσεις Κλειδάριθμος.
7.3.8 Μεταφραστές Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα.
7.5.2 Αντικειμενοστραφής προγραμματισμός
-Στοίβα-Ουρά - Πλεονεκτήματα πινάκων -Δομές δεδομένων δευτερεύουσας μνήμης -Πληροφορική και δεδομένα -Παραδείγματα-Προβλήματα ψευδοκώδικα.
ΤΑΞΗ Γ ΓΥΜΝΑΣΙΟΥ Βασικές Έννοιες Επανάληψη (2).
Λειτουργικό Σύστημα 2ο μέρος.
Πιθανοκρατικοί Αλγόριθμοι
Τι είναι ο υπολογιστής; Τι είναι ο προγραμματισμός
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Ενότητα 1: Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
Εισαγωγή στους Η/Υ Πίνακες.
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
ΜΑΘ-3122/106 Προγραμματισμός
Αλγόριθμοι Ταξινόμησης
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος γ
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος α
Page  1 Ο.Παλιάτσου Γαλλική Επανάσταση 1 ο Γυμνάσιο Φιλιππιάδας.
Αλγόριθμοι και Πολυπλοκότητα
Εισαγωγικές Έννοιες Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Εισαγωγή στον Προγραμματισμό (στη γλώσσα Java)
Εργασία Η υλοποίηση του αλγορίθμου συγχώνευσης θα πρέπει να χρησιμοποιεί την ιδέα των ροών (streams). Θα πρέπει να υπάρχουν δύο διαφορετικά είδη.
Αναγνώριση Προτύπων.
Κοντινότεροι Κοινοί Πρόγονοι α βγ θ δεζ η π ν ι κλμ ρσ τ κκπ(λ,ι)=α, κκπ(τ,σ)=ν, κκπ(λ,π)=η κκπ(π,σ)=γ, κκπ(ξ,ο)=κ ξο κκπ(ι,ξ)=β, κκπ(τ,θ)=θ, κκπ(ο,μ)=α.
ΗΥ 150 – ΠρογραμματισμόςΞενοφών Ζαμ π ούλης ΗΥ-150 Προγραμματισμός Αλγόριθμοι και Προγράμματα.
ΘΠ06 - Μεταγλωττιστές Πίνακας Συμβόλων. Πίνακας Συμβόλων (Symbol Table) (Ι)  Είναι μια δομή στην οποία αποθηκεύονται τα ονόματα ενός προγράμματος και.
Εισαγωγή στις Βασικές Έννοιες Πληροφορικής
Ολυμπιάδα Πληροφορικής
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τρίτο Συστήματα.
ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ ΚΕΦΑΛΑΙΟ 1ο ΚΕΦ. 1-ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ ΑΕΠΠ.
Αλγόριθμοι και Πολυπλοκότητα
Συστήματα Στήριξης Αποφάσεων
Μοντέλα Συστημάτων Παρουσιάσεις των συστημάτων των οποίων οι απαιτήσεις αναλύονται.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Δομές Δεδομένων (Data Structures) 3o Εξάμηνο Σπουδών Διδάσκων: Απόστολος Παπαδόπουλος και
Ουρά Προτεραιότητας: Heap
Lists– Λίστες 1. Αυτό-αναφορικές δομές Τα μέλη μίας δομής μπορεί να είναι οποιουδήποτε τύπου, ακόμα και δείκτες σε δομές του ίδιου τύπου. Χρησιμοποιώντας.
Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης
Ενότητα Α.4. Δομημένος Προγραμματισμός
Ζαγκαρέτος Λεωνίδας ΑΕΜ: 607 Ραφαηλίδης Δημήτρης ΑΕΜ: 656
1 ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Πίνακας Συμβόλων Symbol Table.
Δέσποινα Μαγγίνα M1175 Κωνσταντίνος Γαργάνης Μ1172 Δήμητρα Μαρία Χαρακλιά Μ1206 Ιωάννης Παπαδάκης Μ1171 Αλέξανδρος Νικολόπουλος Μ1182 Δημήτριος Μπαϊρακτάρης.
Διδακτική της Πληροφορικής ΗΥ302 Εργασία :Παρουσίαση σχολικού βιβλίου Γ’ Λυκείου Τεχνολογικής Κατεύθυνσης «Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον»
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών – Τμήμα Πληροφορικής και Τηλεπικοινωνιών 1 Κεφάλαιο 3 Η Σημασιολογία των Γλωσσών Προγραμματισμού Προπτυχιακό.
Computers: Information Technology in Perspective By Long and Long Copyright 2002 Prentice Hall, Inc. Προγραμματισμός Η / Υ 6 η Διάλεξη.
Δομές Δεδομένων - Ισοζυγισμένα Δυαδικά Δένδρα (balanced binary trees)
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 4: Συνδεσμικότητα Data Engineering Lab 1.
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Τάξεις και Αφαίρεση Δεδομένων.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Υπολογιστική Πολυπλοκότητα Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό.
Λεξικό, Union – Find Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Quicksort Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
Κεφάλαιο 10 – Υποπρογράμματα
Ασυμπτωτικός Συμβολισμός
Δομές Δεδομένων 1 Θέματα Απόδοσης. Δομές Δεδομένων 2 Οργανώνοντας τα Δεδομένα  Η επιλογή της δομής δεδομένων και του αλγορίθμου επηρεάζουν το χρόνο εκτέλεσης.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων.
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Διδάσκοντες:Γιάννης Μαΐστρος Στάθης Ζάχος Νίκος Παπασπύρου
Συνδετικότητα γραφήματος (graph connectivity). α β Υπάρχει μονοπάτι μεταξύ α και β; Παραδείγματα: υπολογιστές ενός δικτύου ιστοσελίδες ισοδύναμες μεταβλητές.
Δομές δεδομένων και Αλγόριθμοι Κεφάλαιο 3. Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Δεδομένα Δεδομένα (data) Δεδομένα (data) –αφαιρετική αναπαράσταση.
ΚΕΦΑΛΑΙΟ ΑΛΓΟΡΙΘΜΟΙ Αλγόριθμος Η έννοια του αλγορίθμου δεν συνδέεται αποκλειστικά και μόνο με προβλήματα της Πληροφορικής. Πχ συνταγή.
Δυναμικός Κατακερματισμός
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ
Δυναμικός Κατακερματισμός
Μεταγράφημα παρουσίασης:

Αφαιρετικοί Τυποι Δεδομένων ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΡΧΕΙΩΝ Ευριπίδης Πετράκης http://www.intelligence.tuc.gr/~petrakis Χανιά, 2006 E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

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

Αφαιρετικοί Τυποι Δεδομένων Δομές Δεδομένων Ανaπαράσταση δεδομένων στην μνήμη Δομές Αρχείων: αναπαράσταση δεδομένων στον δίσκο Μια συλλογή εγγραφών μπορεί να αναπαριστάνεται με λίστα ή δέντρο Τα αποδοτικά προγράμματα απαιτούν αποδοτικές δομές δεδομένων Ένα πρόβλημα πρέπει να λυθεί μέσα στα όρια χρόνου και μνήμης της εφαρμογής E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Περιορισμοί Προβλήματος Κάθε πρόβλημα βάζει περιορισμούς χρόνου και χώρου μνήμης π.χ., παράδειγμα τράπεζας: άνοιγμα λογαριασμού: μερικά λεπτά συναλλαγές: μερικά δευτερόλεπτα κλείσιμο λογαριασμού: όλη τη νύκτα Μια λύση είναι αποδοτική αν λύνει το πρόβλημα μέσα στα όρια μνήμης και χρόνου που έχουν δοθεί Κόστος της λύσης: ποσοστό των πόρων που καταναλώθηκαν E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

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

Selecting Data Structures Ανάλυση του προβλήματος για να καθοριστούν τα όρια των πόρων που η λύση πρέπει να τηρεί Καθορισμός των διαδικασιών που πρέπει να υποστηρίζονται από την εφαρμογή π.χ., αναζήτηση, εισαγωγή, διαγραφή δεδομένων Ποσοτικοποιήστε τα όρια για κάθε λειτουργία π.χ., η αναζήτηση πρέπει να είναι γρήγορη Επιλογή της δομής δεδομένων που ικανοποιεί καλύτερα αυτές τις απαιτήσεις E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Κόστος & Κέρδος Κάθε δομή δεδομένων χρειάζεται: Χώρο για τον κάθε τύπο δεδομένων που αποθηκεύει Χρόνο εκτέλεσης κάθε λειτουργίας Προγραμματιστική προσπάθεια για να αναπτυχθεί Κάθε δομή δεδομένων έχει κόστη και κέρδη Σπάνια μια δομή δεδομένων είναι καλύτερη από μια άλλη σε όλες τις περιπτώσεις Κάποια μπορεί να επιτρέπει γρηγορότερη αναζήτηση (ή εισαγωγή ή διαγραφή) από μια άλλη Είναι όλες οι διαδικασίες το ίδιο σημαντικές; E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τύποι Δεδομένων (ΑΤΔ) ATΔ: ορισμός του τύπου δεδομένων εφαρμογής Ένα σύνολο τιμών και Ένα σύνολο διαδικασιών που επιτρέπονται σε αυτόν τον τύπο δεδομένων Κάθε ΑΤΔ εξαρτάται από τις εισόδους και τις εξόδους της εφαρμογής Οι ΑΤΔ έχουν κρύβουν τις λεπτομέρειες υλοποίησης Μια δομή δεδομένων είναι η υλοποίηση ενός ΑΤΔ Οι διαδικασίες που συνδέονται με τον ATΔ υλοποιούνται από μια ή περισσότερες συναρτήσεις E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Λογικές και Φυσικές Μορφές Τα στοιχεία των δεδομένων έχουν και λογική και φυσική μορφή Λογική μορφή: καθορισμός ενός στοιχείου δεδομένων ενός ATΔ π.χ., ακέραιοι αριθμοί υπό τη μαθηματική έννοια: +, - Φυσική Μορφή: υλοποίηση του στοιχείου δεδομένων π.χ., 16 ή 32 bit ακέραιοι E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Τύποι Δεδομένων ATΔ:Δομές + Διαδικασίες Στοιχεία Δεδομένων: Λογική Μορφή Δομή Δεδομένων: Χώρος Αποθήκευσης + συναρτήσεις Στοιχεία Δεδομένων: Φυσική Μορφή E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

ATΔ String: Συμβολοσειρά ATΔ function length (s: string): integer; μετα-συνθήκη: length = len(s); ATΔ function concat (s1,s2: string): string; μετα-συνθήκη: concat = s1 + s2; ATΔ function substr (s: string, i, j: integer): string; προϋπόθεση: 0 < i < len(s), 0 < j < len(s) – i + 1 μετα-συνθήκη: substr(s, i, j); ATΔ function pos (s1, s2): integer; προϋπόθεση … μετα-συνθήκη … E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Ορισμός ενός ΑΤΔ Εξαρτάται από την εφαρμογή Μπορεί να υπάρχουν διαφορετικοί ορισμοί για την ίδια εφαρμογή Μπορεί να υπάρχουν διαφορετικές υλοποιήσεις για τον ίδιο ορισμό Ο ορισμός ενός ΑΤΔ κρύβει τις λεπτομέρειες υλοποίησης Όταν δίνεται ο ΑΤΔ μπορεί να χρησιμοποιηθεί από τον προγραμματιστή π.χ., <string.h>, <math.h> στην C Όταν η υλοποίηση αλλάζει τα προγράμματα που χειρίζονται τον ΑΤΔ δεν χρειάζονται αλλαγές E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Αλγόριθμοι Η μέθοδος που λύνει ένα πρόβλημα Ένας αλγόριθμος παίρνει την είσοδο ενός προβλήματος και υπολογίζει μία έξοδο Ένα πρόβλημα μπορεί να έχει πολλούς αλγορίθμους που να το λύνουν Ένα πρόγραμμα είναι η υλοποίηση ενός αλγορίθμου σε κάποια γλώσσα προγραμματισμού E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Ιδιότητες των Αλγορίθμων Αποτελεσματικότητα: ο αλγόριθμος μπορεί να γραφτεί ως πρόγραμμα Υπάρχουν προβλήματα για τα οποία δεν υπάρχει αλγόριθμος Ορθότητα: βρίσκει τη σωστή λύση για κάθε είσοδο Τερματισμός: ολοκληρώνεται μετά από έναν πεπερασμένο αριθμό βημάτων Κάθε βήμα απαιτεί ένα πεπερασμένο χρόνο Αποδοτικότητα: κάνει σωστή χρήση των πόρων του υπολογιστή Πολυπλοκότητα: υλοποιείται εύκολα σε κώδικα, μπορεί να διορθωθεί και να αλλάξει εύκολα E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Πρόβλημα Πλακιδίων Ο αλγόριθμος δέχεται ένα πεπερασμένο σύνολο πλακιδίων Τ στην είσοδο Υποτίθεται ότι ένας απεριόριστος αριθμός πλακιδίων κάθε τύπου είναι διαθέσιμος Πρόβλημα: είναι δυνατόν να δομηθεί κάθε πιθανή πεπερασμένη περιοχή (οποιουδήποτε μεγέθους) έτσι ώστε τα χρώματα των πλακιδίων σε κάθε δύο γειτονικές πλευρές είναι τα ίδια; Για οποιοδήποτε αλγόριθμο μπορούν να υπάρχουν είσοδοι Τ για τις οποίες ο αλγόριθμος δεν ολοκληρώνεται ποτέ ή βρίσκει μια λάθος λύση E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Τύποι πλακιδίων που γεμίζουν οποιαδήποτε περιοχή Τύποι πλακιδίων που δεν γεμίζουν οποιαδήποτε περιοχή From “Algorithmics”, David Harel, E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Ένα Πρόβλημα Λήξης Ένας αλγόριθμος πρέπει να τερματίζει με την σωστή λύση για κάθε είσοδο Κανένας δεν μπορεί να αποδείξει ότι ο αλγόριθμος ολοκληρώνεται για οποιοδήποτε θετικό αριθμό n αν και οι περισσότεροι άνθρωποι το πιστεύουν!! int OddEven( int n ) { while ( n > 1 ) if (( n % 2 ) == 0) n = n / 2; else n = 3n + 1; return n; } E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Ταξινόμηση Αλγορίθμων Ένα αλγοριθμικό πρόβλημα που δεν έχει λύση με κανέναν αλγόριθμο ονομάζεται ‘‘μη-υπολογίσιμο’’ Αν είναι πρόβλημα απόφασης καλείται ‘‘μη-αποφασίσιμο’’ E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Μοντέλο Δίσκου (1/2) T = Tπρόσβασης + Tπεριστροφής + Tανάγνωσης Block: μονάδα μεγέθους μνήμης για τον δίσκο Μέγεθος των δεδομένων που μεταφέρονται στην κύρια μνήμη σε μία προσπέλαση στο δίσκο Τις περισσότερες φορές page=block=track 1, 2, 4 ή 8Kbytes E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Μοντέλο Δίσκου (2/2) Tπρόσβασης > Tπρόσβασης > Tανάγνωσης ==> αύξηση της ποσότητας δεδομένων που μεταφέρεται στην κύρια μνήμη σε κάθε προσπέλαση (disk access) στο δίσκο Μεγάλα blocks, συμπίεση, δεδομένα στη μνήμη Στα συστήματα πολλών χρηστών, η κεφαλή του δίσκου μπορεί να είναι οπουδήποτε απόσταση που διανύεται από την κεφαλή χρόνος E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Βιβλιογραφία "Data Structures and Algorithm Analysis'', Clifford A. Shaffer, Prentice Hall, 1997 "Data Structures and Algorithms in C++", M. T. Goodrich, R. Tamassia and D. Mount, Wiley, 2004 "Algorithms Data Structures and Problem Solving Using C++'', Mark Allen Weis, Addison-Wesley, 2000 "Data Structures & Algorithm Analysis in C++”, Mark Allen Weis, Addison-Wesley, 1999   “Δομές Δεδομένων”, Sahni, Εκδόσεις Τζίόλα, 2004 Σημειώσεις του μαθήματος    E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων

Αφαιρετικοί Τυποι Δεδομένων Σύστημα Βαθμολόγησης Τελική Εξέταση (F): 50%, ελάχιστο 5!!!! Ασκήσεις (Α): 30%  Πρόοδος (M): 20%  Αν M < 3: Βαθμός= 0.2M + 0.5F + 0.3A Αν M >= 3: Βαθμός= max{0.2M + 0.5F + 0.3A, 0.7F + 0.3A} Όλες ανεξαιρέτως οι αντιγραφές θα μηδενιστούν !!!!!!!! @#$%%^%$@ E. Πετράκης Αφαιρετικοί Τυποι Δεδομένων