ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τµήµα Πληροφορικής

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

Download "ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τµήµα Πληροφορικής"

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τµήµα Πληροφορικής ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ ΑΣΚΗΣΗ 3 Υλοποίηση Παιχνιδιού Δόλιας «Κρεµάλας» µε Δυναµική Δέσµευση Μνήµης Διδάσκων: Δηµήτρης Ζεϊναλιπούρ Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας Ηµεροµηνία Ανάθεσης: Δευτέρα, 9 Μαρτίου 2015 Ηµεροµηνία Παράδοσης: Τρίτη, 24 Μαρτίου 2015 στις 10:30 π.µ. (15 ηµέρες) (ο κώδικας να υποβληθεί σε zip µέσω του Moodle και εκτυπωµένη στο εργαστήριο) Ι. Στόχος Στην εργασία αυτή θα ασχοληθούµε µε γραµµικές δοµές δεδοµένων και δυναµική δέσµευση µνήµης. Το θέµα της άσκησης είναι η υλοποίηση ενός προγράµµατος δόλιας κρεµάλας το οποίο δεν χρησιµοποιεί τους συµβατικούς και γνωστούς κανόνες του παιχνιδιού. Η άσκηση αποτελείται από πολλαπλά µέρη. Οι λειτουργίες του προγράµµατος και το αναµενόµενο αποτέλεσµα περιγράφονται αναλυτικότερα στην συνέχεια. Για την υλοποίηση της εργασίας αυτής θα πρέπει, πέρα από την χρήση συναρτήσεων και τεχνικών δοµηµένου προγραµµατισµού, να χρησιµοποιήσετε τα ακόλουθα στοιχεία: 1. Διάσπαση του προγράµµατος σε πολλαπλά αρχεία.c και.h µε χρήση generic makefile. Ενδεικτικά αναφέρουµε ότι το πρόγραµµα µπορεί να αποτελείται από µερικά αντικείµενα και αρχεία κεφαλίδας (.c και.h) µαζί µε ένα βασικό αρχείο εκκίνησης as3.c. 2. Ανάπτυξη του προγράµµατος σε eclipse CDT IDE (να συµπεριλάβετε το.project αρχείο µαζί µε το συµπιεσµένο πηγαίο σας κώδικα). Το πρόγραµµα πρέπει να µεταγλωττίζεται τόσο µέσω του eclipse όσο και µέσω της γραµµής εντολής µε χρήση του makefile. Κάθε αντικείµενο πρέπει να συµπεριλαµβάνει τον σχετικό οδηγό χρήσης (driver functions, δείτε διάλεξη 12) και θα πρέπει να έχετε σχόλια και οδηγό σχολίων µε χρήση του doxygen. ΙΙ. Περιγραφή Δεν είναι εύκολο να γράψει κανείς προγράµµατα που υλοποιούν παιχνίδια. Όταν εµείς οι άνθρωποι παίζουµε παιχνίδια, βασιζόµαστε στην εµπειρία του παρελθόντος, προσαρµοζόµαστε στις στρατηγικές των αντιπάλων µας, και µαθαίνουµε από τα λάθη µας. Οι Ηλεκτρονικοί Υπολογιστές (Η/Υ) από την άλλη πλευρά, ακολουθούν τυφλά ένα προκαθορισµένο αλγόριθµο που (ενδεχοµένως) τους αναγκάζει να ενεργήσουν έξυπνα. Σε κάποιες περιπτώσεις παιχνιδιών, όπως στο σκάκι, οι υπολογιστές έχουν επικρατήσει των ανθρώπων. Τα προγράµµατα που τρέχουν τέτοιοι Η/Υ βασίζονται σε εκατοντάδες χρόνια ανθρώπινης εµπειρίας, στη χρήση προηγµένων αλγόριθµων, καθώς επίσης και στην τεχνητή νοηµοσύνη. Ενώ υπάρχουν πολλές βιώσιµες στρατηγικές για τη δηµιουργία ανταγωνιστικών τεχνικών βάση των οποίων λειτουργεί ο υπολογιστής κατά την διάρκεια του παιχνιδιού, υπάρχει µια εναλλακτική προσέγγιση που στηρίζεται στη δολίευση. Το ερώτηµα που τίθεται είναι: γιατί να περάσετε πάρα πολύ χρόνο προσπαθώντας να «διδάξετε» σε ένα υπολογιστή όλες τις στρατηγικές, όταν µπορείτε απλά να γράψετε ένα πρόγραµµα που παίζει µε δόλο και κερδίζει επιδέξια κάθε φορά; Αυτό ακριβώς πρέπει να κάνετε σε αυτήν την εργασία. Πρέπει να γράψετε ένα πρόγραµµα που θα παραβλέπει κάποιους κανόνες του παιχνιδιού Κρεµάλα, κάνοντας τον υπολογιστή υπερπαίκτη, δηλαδή να κερδίζει τον ανθρώπινο αντίπαλό του συνεχώς αλλά όχι πάντα. Σε περίπτωση που δεν είστε εξοικειωµένοι µε το παιχνίδι Hangman (Κρεµάλα) σε ηλεκτρονικό υπολογιστή (Η/Υ), οι κανόνες του έχουν ως εξής:

2 1. Ο Η/Υ επιλέγει µια µυστική λέξη από ένα προκαθορισµένο και συµφωνηµένο µε τον παίκτη λεξικό, και στη συνέχεια, τυπώνει µια σειρά από παύλες ίση µε το µήκος µιας λέξης, στον παίκτη. Παράλληλα ενηµερώνει το χρήστη για τον αριθµό των προσπαθειών που έχει στη διάθεση του για να µαντέψει τη µυστική λέξη (ίσως αυτό να συµφωνείται πριν την εκκίνηση του παιχνιδιού µεταξύ του Η/Υ και του παίκτη). 2. Ο παίκτης ξεκινά να µαντεύει ένα-ένα τα γράµµατα µε στόχο να βρει τη λέξη που επέλεξε ο Η/Υ. Κάθε φορά που µαντεύει σωστά ένα γράµµα που περιέχεται στην µυστική λέξη, ο Η/Υ αποκαλύπτει κάθε εµφάνιση του εν λόγω γράµµατος αφαιρώντας την (τις) αντίστοιχη (αντίστοιχες) παύλα (παύλες). Σε αντίθετη περίπτωση, η εικασία θεωρείται λάθος και µειώνεται κατά ένα ο αριθµός των εναποµενουσών προσπαθειών. 3. Το παιχνίδι τελειώνει είτε όταν όλα τα γράµµατα της λέξης έχουν αποκαλυφθεί ή όταν η παίκτης έχει τελειώσει όλες τις προσπάθειες του. Σηµαντικό για το παιχνίδι είναι το γεγονός, ότι σε ένα συµβατικό παιχνίδι κρεµάλας ο Η/Υ έχει προεπιλεγµένη µια συγκεκριµένη λέξη και δεν αλλάζει την λέξη αυτή κατά τη διάρκεια της εκτέλεσης του προγράµµατος. Από την άλλη στην εργασία αυτή, ο Η/Υ έχει την ευχέρεια να επιλέγει κατά την εκτέλεση οποιαδήποτε από τις λέξεις του λεξικού και η προσπάθεια του χρήστη θα πρέπει να είναι ο περιορισµός των επιλογών του Η/Υ έτσι ώστε να τον νικήσει. Ας δούµε τώρα ένα παράδειγµα για να αντιληφθούµε την λογική υλοποίησης. Ας υποθέσουµε ότι ο παίκτης προσπαθεί να µαντέψει τη (µη-επιλεγµένη) λέξη του Η/Υ, και αποκαλύπτοντας γράµµατα, αναγκάζει τον Η/Υ να φτάσει στο παρακάτω σηµείο (µε µια τελευταία προσπάθεια για τον παίκτη): D O _ B L E Υπάρχουν µόνο δύο λέξεις στο λεξικό του UNIX (/usr/share/dict/words) που ταιριάζουν µε αυτό το µοτίβο: "DOABLE" και "DOUBLE". Εάν ο Η/Υ παίζει τίµια, τότε o παίκτης έχει 50% πιθανότητες να κερδίσει αυτό το παιχνίδι, αν πρόκειται να µαντέψει το «Α» ή το «U», σαν το γράµµα που λείπει. Ωστόσο, αν ο Η/Υ τον εξαπατά και στην πραγµατικότητα δεν έχει διαλέξει κάποια από τις δυο λέξεις, τότε δεν υπάρχει κανένας πιθανός τρόπος ο παίκτης να κερδίσει αυτό το παιχνίδι αφού ο Η/Υ µπορεί να ισχυριστεί ότι είχε διαλέξει την άλλη λέξη, λέγοντας ότι η εικασία είναι λανθασµένη (και εφόσον έµεινε µόνο 1 προσπάθεια στον παίκτη). Έτσι, ο παίκτης θα χάσει το παιχνίδι. Δηλαδή, αν έχει µαντέψει ότι η λέξη είναι "DOABLE", ο Η/Υ µπορεί να προσποιείται ότι είχε διαλέξει από την αρχή την λέξη "DOUBLE", ή αντίστροφα. Ας περιγράψουµε αυτή την τεχνική (της δολίευσης) µε ένα παράδειγµα. Ας υποθέσουµε ότι παίζετε το παιχνίδι Hangman, και είναι η σειρά του Η/Υ να επιλέξει µια λέξη, η οποία θεωρούµε ότι είναι µήκους τεσσάρων χαρακτήρων. Αντί να διαλέξει µια συγκεκριµένη µυστική λέξη, ο Η/Υ δηµιουργεί µια λίστα µε κάθε λέξη ενός λεξικού που έχει τέσσερα γράµµατα. Για να µπορέσουµε να εξηγήσουµε καλυτέρα το παράδειγµα, ας υποθέσουµε ότι ένα δοσµένο λεξικό έχει µόνο λίγες λέξεις µε τέσσερα γράµµατα, τα οποία παρουσιάζονται παρακάτω: ALLY BETA COOL DEAL ELSE FLEW GOOD HOPE IBEX Τώρα, ας υποθέσουµε ότι ο παίκτης µαντεύει το γράµµα «Ε». Θα πρέπει τώρα ο Η/Υ να πει στον παίκτη ποια γράµµατα της λέξης που έχει "διαλέξει" είναι «Ε». Φυσικά, δεν έχει διαλέξει µια λέξη, και έτσι έχει πολλαπλές επιλογές για το πού θα αποκαλύψει τα «Ε». Παρακάτω φαίνεται η παραπάνω λίστα λέξεων, µε το «Ε» υπογραµµισµένο στην κάθε λέξη: ALLY BETA COOL DEAL ELSE FLEW GOOD HOPE IBEX Όπως θα παρατηρήσετε, κάθε λέξη στο λεξικό (ή σε µια λίστα λέξεων), εµπίπτει σε µία από τα πέντε σύνολα λέξεων:, το οποίο περιλαµβάνει τις λέξεις ALLY, COOL και GOOD _ Ε, το οποίο περιλαµβάνει τη λέξη HOPE E _, το οποίο περιλαµβάνει τις λέξεις FLEW και IBEX 2/10

3 _ Ε, το οποίο περιλαµβάνει τις λέξεις BETA και DEAL Ε Ε, το οποίο περιλαµβάνει τη λέξη ELSE Δεδοµένου ότι τα γράµµατα που αποκαλύπτει ο Η/Υ πρέπει να αντιστοιχούν σε κάποια λέξη στη λίστα λέξεών του, ο Η/Υ µπορεί να επιλέξει να αποκαλύψει οποιοδήποτε από τα παραπάνω πέντε σύνολα. Υπάρχουν πολλοί τρόποι για να επιλέξει ποιο σύνολο να αποκαλύψει - ίσως θέλει να πάει τον αντίπαλό του (τον παίκτη) προς ένα µικρότερο σύνολο µε πιο σπάνιες λέξεις, ή προς ένα µεγαλύτερο σύνολο µε την ελπίδα της διατήρησης περισσότερων επιλογών του. Για αυτήν την εργασία, θα υιοθετήσουµε την τελευταία προσέγγιση και θα επιλέξουµε πάντα το µεγαλύτερο από τα υπόλοιπα σύνολα λέξεων. Για το παράδειγµα µας, αυτό σηµαίνει ότι θα πρέπει ο Η/Υ να επιλέξει το σύνολο. Αυτό µειώνει λίστα των λέξεών του σε: ALLY COOL GOOD και από τη στιγµή που δεν υπάρχει το γράµµα «Ε», θα πει στον αντίπαλό του ότι η εικασία του ήταν λάθος. Ας δούµε µερικά ακόµη παραδείγµατα υλοποίησης αυτής της στρατηγικής. Λαµβάνοντας υπόψη αυτό το σύνολο τριών λέξεων, αν ο παίκτης µαντέψει το γράµµα «O», τότε θα σπάσει η λίστα (το σύνολο) λέξεων σε δύο υπο-σύνολα: _ Ο Ο _, το οποίο περιλαµβάνει τις λέξεις COOL και GOOD, το οποίο περιλαµβάνει τη λέξη ALLY To πρώτο από αυτά τα σύνολα είναι µεγαλύτερο από το δεύτερο, και έτσι ο Η/Υ µπορεί να το επιλέξει, αποκαλύπτοντας δύο «O» στην λέξη και µειώνοντας τη λίστα του σε: COOL και GOOD, δηλαδή: _ Ο Ο _, το οποίο περιλαµβάνει τις λέξεις COOL και GOOD Τι θα συµβεί αν ο παίκτης στη συνέχεια µαντεύει ένα γράµµα που δεν εµφανίζεται πουθενά στη λίστα λέξεων του Η/Υ; Για παράδειγµα, τι θα συµβεί εάν ο παίκτης µαντεύει τώρα «Τ»; Μετά το διαχωρισµό των δυο λέξεων σε σύνολα, παρατηρούµε ότι υπάρχει µόνο ένα σύνολο λέξεων, είναι τετριµµένα το µεγαλύτερο, και επιλέγοντάς το, θα διατηρηθεί η λίστα λέξεων που ήδη είχε, δηλαδή COOL και GOOD _ Ο Ο _, το οποίο περιλαµβάνει τις λέξεις COOL και GOOD Τέλος, υπάρχουν δύο πιθανά αποτελέσµατα αυτού του παιχνιδιού. Κατ 'αρχάς, ο παίκτης µπορεί να είναι αρκετά έξυπνος για να χωρίσει τη λίστα λέξεων προς µία λέξη και τελικά να µαντέψει αυτή τη λέξη. Σε αυτή την περίπτωση, θα πρέπει να λάβει συγχαρητήρια - αυτό είναι ένα εντυπωσιακό επίτευγµα λαµβάνοντας υπόψη την δολοπλοκία του Η/Υ! Δεύτερον, και κατά πολύ η συνηθέστερη περίπτωση, ο παίκτης θα χαθεί εντελώς και θα ξεµείνει από εικασίες (λόγω µπλεξίµατος) ή από προσπάθειες (λόγω λανθασµένων επιλογών). Όταν συµβαίνει αυτό, ο Η/Υ µπορεί να επιλέξει οποιαδήποτε λέξη θέλει από τη λίστα του και να πει ότι είναι η λέξη που είχε επιλέξει καθ όλη τη διάρκεια του παιχνιδιού. Η οµορφιά αυτής της στρατηγικής είναι ότι ο παίκτης δεν θα έχει καµία δυνατότητα να γνωρίζει ότι ο Η/Υ παρακάµπτει εικασίες κάθε φορά - αυτό µοιάζει απλά µε την περίπτωση που ο Η/Υ διάλεξε µια ασυνήθιστη λέξη και την κράτησε µέχρι τέλους παιχνιδιού. J ΙΙI. Ζητούµενα Άσκησης Ζητούµενο αυτής της άσκησης είναι η κατασκευή ενός προγράµµατος στη γλώσσα προγραµµατισµού C, το οποίο να υλοποιεί το παιχνίδι που περιγράφεται στις ενότητες Ι-ΙΙ αυτής της εκφώνησης. Το πρόγραµµα σας πρέπει να υλοποιεί τον παρακάτω αλγόριθµο: 1. Διαβάζει το αρχείο που αντιπροσωπεύει το λεξικό. Στην πρώτη γραµµή του αρχείου υπάρχει ένας ακέραιος που προσδιορίζει το µήκος των λέξεων αυτού του αρχείου. 3/10

4 2. Ζητά από το χρήστη να εισάγει έναν αριθµό προσπαθειών, ο οποίος πρέπει να είναι ένας ακέραιος αριθµός µεγαλύτερος από το µηδέν. Μην ανησυχείτε για το αν δοθεί ένας µεγάλος αριθµός προσπαθειών, καθώς επιλέγοντας περισσότερες από 26 προσπάθειες (όσα τα γράµµατα του λατινικού αλφαβήτου) δεν κερδίζει κάτι ο αντίπαλός σας! 3. Το πρόγραµµα να εµφανίζει ένα µήνυµα που παρουσιάζει τον αριθµό των λέξεων (από τη λίστα λέξεων) που έχουν τους συγκεκριµένους χαρακτήρες που έχει µαντέψει σωστά ο παίκτης. 4. Παίξτε το παιχνίδι όπως περιγράφεται παρακάτω: a. Εκτυπώστε πόσες προσπάθειες έµειναν στον παίκτη, και τη λέξη που πρέπει να µαντέψει η οποία να συµπεριλαµβάνει τα γράµµατα που ο παίκτης έχει µαντέψει σωστά και τις γραµµές ( _ ). Εάν ο χρήστης επιλέξει να εµφανιστεί το µήνυµα του βήµατος 3, τότε να εµφανίζει και αυτό το µήνυµα. b. Προτρέπει το χρήστη να εισάγει (µαντέψει) ένα γράµµα, ζητώντας από τον χρήστη να εισάγει ένα γράµµα το οποίο δεν έχει δώσει προηγουµένως. Βεβαιωθείτε ότι η είσοδος είναι ακριβώς ένας χαρακτήρας και ότι είναι ένα γράµµα της αλφαβήτου. Εναλλακτικά να δίνεται µήνυµα λάθους και ο παίχτης να προσπαθεί ξανά. c. Αφότου ο παίχτης µαντέψει ένα γράµµα: i. το πρόγραµµα χωρίζει τις λέξεις που πήρε από το λεξικό σε σύνολα λέξεων. ii. Βρίσκει και διαλέγει το πιο µεγάλο σύνολο λέξεων, αφαιρει όλες τις άλλες λέξεις από την λίστα λέξεων που δεν βρίσκονται σε αυτό το σύνολο, και αναφέρει τη θέση των γραµµάτων (εάν υπάρχουν) προς το χρήστη. Αν το σύνολο που διάλεξε δεν περιέχει καµία λέξη που να έχει τον εισαγόµενο χαρακτήρα, να αφαιρέσει ένα από τις προσπάθειες του παίκτη. d. Αν ο παίκτης έχει ξεµείνει από προσπάθειες, το πρόγραµµα να επιλέξει µια λέξη από τη λίστα λέξεων και να εµφανιστεί ως η λέξη που ο υπολογιστής "επέλεξε" από την αρχή. e. Αν ο παίκτης µαντέψει σωστά όλη τη λέξη, να εµφανιστεί ένα µήνυµα. Το πρόγραµµα που θα γράψετε διατηρεί µια µεγάλη ψευδαίσθηση: προσποιείται ότι παίζει ένα παιχνίδι κρεµάλας, αλλά, αντίθετα, κάνει κάτι άλλο στο παρασκήνιο. Κατά συνέπεια, θα πρέπει να προσπαθήσετε να κάνετε το πρόγραµµά σας να ανταποκρίνεται όσο το δυνατόν γρηγορότερα. Αν οι παίκτες πρέπει να περιµένουν τρία ή περισσότερα δευτερόλεπτα µετά την είσοδό ενός χαρακτήρα, είναι σχεδόν βέβαιο ότι ο παίχτης θα υποπτευθεί ότι κάτι πηγαίνει στραβά. IV. Θέµατα Υλοποίησης Για αυτήν την εργασία θα πρέπει να χρησιµοποιήσετε γραµµικές δοµές δεδοµένων όπως πίνακες κατακερµατισµού και λίστες. Η δοµή µπορεί να είναι η ακόλουθη: typedef struct node_s{ char *name; struct node_s *next; } NODE; typedef struct list_s{ NODE* head; int size; } LIST; typedef struct { LIST **slot; }HASHTABLE; 4/10

5 Κατά τον χωρισµό των λέξεων σε σύνολα, οι λέξεις θα µπουν στην δοµή HASHTABLE. Για το παράδειγµα που δώσαµε πιο πάνω στην εν πτητα ΙΙ η δοµή αυτή αναπαριστάνεται στο παρακάτω σχήµα: ALLY COOL GOOD HOPE FLEW IBEX BETA DEAL ELSE Εικόνα 1. Γραµµική Δοµή Δεδοµένων για επίλυση του προβλήµατος διαχωρισµού σε σύνολα λέξεων Κάθε φορά που δηµιουργείτε σύνολα λέξεων, αυτά πρέπει να αποθηκεύονται σε µια δοµή όπως στο παραπάνω σχήµα. Επειδή το λεξικό, άρα και τα σύνολα λέξεων, µπορεί να αποτελείται από πολλές λέξεις, φροντίστε να διαχειριστείτε ορθά την µνήµη. Η δοµή δεδοµένων που παρουσιάζεται στην Εικόνα 1, είναι µια δοµή δεδοµένων αποτελούµενη από ένα δυναµικά δεσµευόµενο πίνακα του οποίου τα στοιχεία είναι δείκτες σε λίστες. Για την δηµιουργία της δοµής αυτής χρησιµοποιείστε και µια συνάρτηση κατακερµατισµού, hash function, που να µετατρέπει αποτελεσµατικά ένα κλειδί (π.χ. λέξεις) στις σχετικές µε αυτόν τιµές. Στην εργασία µας, η συνάρτηση hash θα χρησιµοποιείται για να χωριστούν οι λέξεις του λεξικού σε σύνολα λέξεων. Συγκεκριµένα, θα πρέπει να βρείτε ένα τρόπο για την µετατροπή µιας λέξης σε ένα ακέραιο αριθµό που θα αντιπροσωπεύει µια θέση στον πίνακα (τη θέση της λίστας στην οποία ανήκει η λέξη). Μετά πρέπει να εισάγετε τη λέξη στην λίστα που αντιστοιχεί σε αυτήν τη θέση του πίνακα. Επίσης, οι ακόλουθες συµβουλές και τεχνάσµατα µπορούν να σας φανούν χρήσιµα: Η θέση ενός γράµµατος σε µια λέξη είναι τόσο σηµαντική όσο είναι και το πλήθος αυτού του γράµµατος στην λέξη. Κατά τον υπολογισµό των συνόλων των λέξεων, δεν αρκεί να µετρήσετε πόσες φορές ένα συγκεκριµένο γράµµα εµφανίζεται σε µια λέξη, αλλά πρέπει επίσης, να λάβετε υπόψη και τις θέσεις του γράµµατος στην λέξη. Για παράδειγµα, οι λέξεις "BEER" και "HERE" θα βρίσκονται σε δύο διαφορετικά σύνολα, παρόλο που και οι δύο έχουν δύο Ε. Βεβαιωθείτε ότι η αναπαράσταση των συνόλων λέξεων είναι σωστή ως προς την παραπάνω διάκριση. Προσέξτε να µην απαριθµούνται ρητά τα σύνολα λέξεων. Αν επεξεργάζεστε λέξεις µήκους n, τότε υπάρχουν 2 n πιθανά σύνολα λέξεων για κάθε γράµµα. Ωστόσο, οι περισσότερες από αυτές τις οικογένειες δεν υπάρχουν στην πραγµατικότητα στην αγγλική γλώσσα. Για παράδειγµα, δεν υπάρχουν αγγλικές λέξεις που περιέχουν τρία συνεχόµενα U, και δεν υπάρχει λέξη που ταιριάζει µε το µοτίβο E _ E E _ Ε Ε E. Αντί να δηµιουργήσετε κάθε σύνολο λέξεων κάθε φορά που ο χρήστης εισάγει ένα χαρακτήρα, δείτε αν µπορείτε να δηµιουργήσετε σύνολα λέξεων µόνο για τις λέξεις που εµφανίζονται στην πραγµατικότητα στη λίστα λέξεων. 5/10

6 V. Γενικές Οδηγίες Το πρόγραµµα σας θα πρέπει να συµβαδίζει µε το πρότυπο ISO C, να περιλαµβάνει εύστοχα και περιεκτικά σχόλια, να έχει καλή στοίχιση και το όνοµα κάθε µεταβλητής, σταθεράς, ή συνάρτησης να είναι ενδεικτικό του ρόλου της. Να χρησιµοποιήσετε το λογισµικό τεκµηρίωσης doxygen έτσι ώστε να µπορούµε να µετατρέψουµε τα σχόλια του προγράµµατός σας σε HTML αρχεία και να τα δούµε µε ένα browser. Η συστηµατική αντιµετώπιση της λύσης ενός προβλήµατος περιλαµβάνει στο παρόν στάδιο τη διάσπαση του προβλήµατος σε µικρότερα ανεξάρτητα προβλήµατα που κατά κανόνα κωδικοποιούµε σε ξεχωριστές συναρτήσεις. Για αυτό τον λόγο σας καλούµε να κάνετε χρήση συναρτήσεων και άλλων τεχνικών δοµηµένου προγραµµατισµού που διδαχτήκατε στο ΕΠΛ131. Επίσης, σας θυµίζουµε ότι κατά την διάρκεια της εκτέλεσης του προγράµµατος σας αυτό θα πρέπει να δίνει τα κατάλληλα µηνύµατα σε περίπτωση λάθους. Τέλος το πρόγραµµα σας θα πρέπει να µεταγλωττίζεται στις µηχανές του εργαστηρίου. Παρακαλώ όπως µελετηθούν ξανά οι κανόνες υποβολής εργασιών όπως αυτοί ορίζονται στο συµβόλαιο του µαθήµατος. Επίσης να ακολουθήσετε τα πιο κάτω βήµατα όταν υποβάλετε την άσκηση σας στο Moodle: 1. Δηµιουργείστε ένα κατάλογο µε το όνοµά σας π.χ., PyrrosBratskas/ χωρίς να αφήνετε κενά στο όνοµα του καταλόγου. 2. Βάλτε µέσα στον κατάλογο αυτό όλα τα αρχεία της εργασίας (κώδικας, doxygen configuration file, README.dox) που πρέπει να υποβάλετε. 3. Συµπιέστε (zip) τον κατάλογο (και όχι τα αρχεία ξεχωριστά) χρησιµοποιώντας την εντολή zip c PyrrosBratskas.zip PyrrosBratskas/* 4. Βεβαιωθείτε ότι κάνατε σωστά τα τρία προηγούµενα βήµατα 5. Ανεβάστε στο Moodle το συµπιεσµένο αρχείο π.χ., PyrrosBratskas.zip VI. Κριτήρια αξιολόγησης Υλοποίηση Δυναµικών Δοµών Δεδοµένων του Παιχνιδιού 30 Χωρισµός Λέξεων σε Σύνολα Λέξεων 30 Βαθµός Δυσκολίας Παιχνιδιού 20 Διαχωρισµός Προγράµµατος σε Πολλαπλά Αρχεία µε Makefile 10 Γενική εικόνα (ευανάγνωστος κώδικας, σχολιασµός, κλπ.) 10 ΣΥΝΟΛΟ 100 VIΙ. Παράδειγµα εκτέλεσης Παράδειγµα 1: $./hangman toyexample.txt *** Welcome to (Evil) Hangman *** *** You are going to play against the computer *** How many total guesses? 100 6/10 $ cat toyexample.txt 4 ALLY BETA COOL DEAL ELSE FLEW GOOD HOPE IBEX

7 Number of Guesses: 100 Guess a letter: E E not in secret word Words possible: 3 Number of Guesses: 99 Guess a letter: O Words possible: 2 Progress: _OO_ Number of Guesses: 99 Guess a letter: G G not in secret word Words possible: 1 Progress: _OO_ Number of Guesses: 98 Guess a letter: C Words possible: 1 Progress: COO_ Number of Guesses: 98 Guess a letter: L Congratulations, you win the game The secret word is: COOL Παράδειγµα 2: $./hangman length4test.txt *** Welcome to (Evil) Hangman *** *** You are going to play against the computer *** How many total guesses? 8 Number of Guesses: 8 Guess a letter: e e not in secret word Words possible: 13 Number of Guesses: 7 7/10 $ cat length4test.txt 4 acer ache achy acid acis acta acts actu acyl adad adai adam adar adat adaw elsa else emil emim flew flex feat feck feed feel

8 Guess a letter: a Number of Guesses: 7 Guess a letter: h h not in secret word Words possible: 5 Number of Guesses: 6 Guess a letter: t t not in secret word Words possible: 3 Number of Guesses: 5 Guess a letter: c Words possible: 3 Number of Guesses: 5 Guess a letter: a Letter a was given before Words possible: 3 Number of Guesses: 5 Guess a letter: d d not in secret word Words possible: 2 Number of Guesses: 4 Guess a letter: i i not in secret word Words possible: 1 Number of Guesses: 3 Guess a letter: y Words possible: 1 Progress: acy_ Number of Guesses: 3 Guess a letter: l Congratulations, you win the game 8/10

9 The secret word is: acyl Παράδειγµα 3: $./hangman length4test.txt *** Welcome to (Evil) Hangman *** *** You are going to play against the computer *** How many total guesses? 7 Number of Guesses: 7 Guess a letter: e e not in secret word Words possible: 13 Number of Guesses: 6 Guess a letter: a Number of Guesses: 6 Guess a letter: w w not in secret word Number of Guesses: 5 Guess a letter: q q not in secret word Number of Guesses: 4 Guess a letter: c Number of Guesses: 4 Guess a letter: j j not in secret word Number of Guesses: 3 9/10

10 Guess a letter: k k not in secret word Number of Guesses: 2 Guess a letter: l l not in secret word Words possible: 5 Number of Guesses: 1 Guess a letter: b b not in secret word You run out of guesses. You lost The secret word was: achy Καλή Επιτυχία! 10/10

ΕΠΛ132 Άσκηση 3 - Αρχές Προγραμματισμού ΙΙ Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ

ΕΠΛ132 Άσκηση 3 - Αρχές Προγραμματισμού ΙΙ Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ ΑΣΚΗΣΗ 3: Επεξεργασία Χημικών Τύπων με Δυναμικές Δομές Δεδομένων Διδάσκων: Δημήτρης Ζεϊναλιπούρ Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 232 Προγραμματιστικές Τεχνικές και Εργαλεία ΑΣΚΗΣΗ 1 The Kenken Puzzle Διδάσκων: Δημήτρης Ζεϊναλιπούρ Υπεύθυνοι Εργαστήριων: Πύρρος Μπράτσκας & Παύλος Αντωνίου

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ ΑΣΚΗΣΗ 1 Το παιχνίδι «Οι Τρεις Σωματοφύλακες» Διδάσκων: Δημήτρης Ζεϊναλιπούρ Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας Ημερομηνία Ανάθεσης:

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/ Υ, ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΔΙΚΤΥΩΝ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2013-2014 ΕΡΓΑΣΙΑ ΕΞΑΜΗΝΟΥ Ποιος πρέπ ει να ολοκληρώσει αυτή την εργασία? Φοιτητές έτους >2

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΡΓΑΣΙΑ 1 Ημερομηνία Ανάρτησης: 05/10/2015 Ημερομηνία Παράδοσης: 19/10/2015, 09:00 π.μ. Στόχος Στόχος αυτής της εργασίας είναι η χρησιμοποίηση δομών ελέγχου και βρόγχων. ιαβάστε προσεχτικά το πρόβλημα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ132 Άσκηση 4 - Αρχές Προγραμματισμού ΙΙ Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου Ι. Στόχοι ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ Άσκηση 4 Αυτόματη Επίλυση του Παιχνιδιού

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

Εκφώνηση άσκησης. Η Κρεμάλα σαν παιχνίδι. Ανάλυση. Μέρος Α Αναφoρά, ανάλυση τακτικής. Υλοποίηση του παιχνιδιού «Κρεμάλα»

Εκφώνηση άσκησης. Η Κρεμάλα σαν παιχνίδι. Ανάλυση. Μέρος Α Αναφoρά, ανάλυση τακτικής. Υλοποίηση του παιχνιδιού «Κρεμάλα» ΚΡΕΜΑΛΑ Project 7 1 Εκφώνηση άσκησης Υλοποίηση του παιχνιδιού «Κρεμάλα» Το Project αυτό συνίσταται στην κατασκευή ενός προγράμματος σεναρίου κελύφους, που θα υλοποιεί το γνωστό παιχνίδι «Κρεμάλα» με δυνατότητα

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

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2 Παιχνίδι Κρεμάλα Στη δραστηριότητα αυτή θα δημιουργήσεις το γνωστό παιχνίδι της κρεμάλας στο οποίο ο παίκτης προσπαθεί να μαντέψει τα γράμματα από τα οποία αποτελείται μια άγνωστη λέξη. Το πρόγραμμα που

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

FAIL PASS PASS οριακά

FAIL PASS PASS οριακά AEM 0001 0002 COMMENTS οριακά -Το πρόγραµµά σου δουλεύει λάθος για τις εισόδους: 7 -Δεν έχεις µεριµνήσει για την περίπτωση step=1. Μπορούσες να θεωρήσεις ειδική περίπτωση και να την υλοποιείς σε άλλον

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

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

ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΥΥ-105: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ (ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2015-16) ΕΡΓΑΣΙΑ: «ΚΡΕΜΑΛΑ» Εισαγωγή Η κρεμάλα είναι ένα δημοφιλές παιχνίδι που παίζεται

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τ Μ Η Μ Α Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τ Μ Η Μ Α Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ ΕΠΛ 035 - ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ ΓΙΑ ΗΛΕΚΤΡΟΛΟΓΟΥΣ ΜΗΧΑΝΙΚΟΥΣ ΚΑΙ ΜΗΧΑΝΙΚΟΥΣ ΥΠΟΛΟΓΙΣΤΩΝ Ακαδηµαϊκό έτος 2017-2018 Υπεύθυνος εργαστηρίου: Γεώργιος

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

for for for for( . */

for for for for( . */ Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται

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

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 131: ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I ΕΡΓΑΣΙΑ 2

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 131: ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I ΕΡΓΑΣΙΑ 2 ΕΡΓΑΣΙΑ Διδάσκων: Γιώργος Χρυσάνθου Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας Ημερομηνία Ανάθεσης: 3/10/015 Ημερομηνία Παράδοσης: 09/11/015 09:00 π.μ. I.Στόχος Στόχος αυτής της εργασίας είναι η χρησιμοποίηση

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

Γράψτε ένα πρόγραμμα που θα προσομοιώνει τη ρίψη ενός νομίσματος και θα εμφανίζει στην οθόνη Κορώνα» ή «Γράμματα».

Γράψτε ένα πρόγραμμα που θα προσομοιώνει τη ρίψη ενός νομίσματος και θα εμφανίζει στην οθόνη Κορώνα» ή «Γράμματα». Εισαγωγικές Δραστηριότητες Δραστηριότητα 1 (Υ) Υπολογίστε την τιμή των παρακάτω αριθμητικών εκφράσεων. Στη συνέχεια επαληθεύστε τα αποτελέσματα που βρήκατε στην κονσόλα της Python. A. 2 + 3 ** 3 * 2 B.

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

Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό

Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό 1 Εισαγωγή Σκεφτείτε έναν αριθμό από το 1 έως το 1000 και απαντήστε στην ερώτηση: Ο αριθμός που σκεφτήκατε είναι μεγαλύτερος

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

Ασκήσεις μελέτης της 6 ης διάλεξης

Ασκήσεις μελέτης της 6 ης διάλεξης Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2016 17 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 6 ης διάλεξης 6.1. (α) Το mini-score-3 παίζεται όπως το score-4,

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

Οικονοµικό Πανεπιστήµιο Αθηνών. Τµήµα Πληροφορικής. Φθινοπωρινό Εξάµηνο 2015. Δοµές Δεδοµένων - Εργασία 2. Διδάσκων: E. Μαρκάκης

Οικονοµικό Πανεπιστήµιο Αθηνών. Τµήµα Πληροφορικής. Φθινοπωρινό Εξάµηνο 2015. Δοµές Δεδοµένων - Εργασία 2. Διδάσκων: E. Μαρκάκης Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα Πληροφορικής Φθινοπωρινό Εξάµηνο 2015 Δοµές Δεδοµένων - Εργασία 2 Διδάσκων: E. Μαρκάκης Ταξινόµηση και Ουρές Προτεραιότητας Σκοπός της 2 ης εργασίας είναι η εξοικείωση

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ 035: οµές εδοµένων και Αλγόριθµοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ 035: οµές εδοµένων και Αλγόριθµοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 035: οµές εδοµένων και Αλγόριθµοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών Ακαδηµαϊκό έτος 2010 2011, Χειµερινό εξάµηνο Ασκήσεις Επανάληψης Ενδιάµεσης

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

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

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

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

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι Εισαγωγή Στον Προγραµµατισµό «C» Πίνακες Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Πίνακες στη C Ένας πίνακας στη C είναι

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσμία: Τετάρτη 23/11/2016, 21:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσμία: Τετάρτη 23/11/2016, 21:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 2 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2016-2017 Προθεσμία: Τετάρτη 23/11/2016, 21:00 Διαβάστε πριν ξεκινήσετε Διαβάστε την εκφώνηση προσεκτικά και σχεδιάστε το πρόγραμμά σας στο

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

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

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

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

Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας

Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας ΕΡΓΑΣΙΑ 2 Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας Εισαγωγή Ημερομηνία Ανάρτησης: 16/02/2017 Ημερομηνία Παράδοσης: 06/03/2017,

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ Διάλεξη 9: Στοίβες:Υλοποίηση & Εφαρμογές Στην ενότητα αυτή θα μελετηθεί η χρήση στοιβών στις εξής εφαρμογές: Υλοποίηση Στοιβών με Δυναμική Δέσμευση Μνήμης Εφαρμογή Στοιβών 1: Αναδρομικές συναρτήσεις Εφαρμογή

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

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

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ 2 ο ΣΕΤ ΑΣΚΗΣΕΩΝ Οι ασκήσεις αυτού του φυλλαδίου καλύπτουν τα παρακάτω θέματα: Συναρτήσεις (κεφάλαιο Functions)

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

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2012-2013 Στόχοι Συµβολοσειρές, πίνακες Πριν ξεκινήσετε Βήµα 1: Πηγαίνετε στο φάκελο ce120 και κατασκευάστε µέσα σε αυτόν ένα φάκελο µε όνοµα

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

lab13grades Άσκηση 2 -Σωστά απελευθερώνετε ολόκληρη τη λίστα και την κεφαλή

lab13grades Άσκηση 2 -Σωστά απελευθερώνετε ολόκληρη τη λίστα και την κεφαλή ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ 00497 -Δεν ελέγχετε αν η createlist εκτελλέστικε σωστά και δεν τερµατίζετε το πρόγραµµα σε διαφορετική -Σωστά βρίσκετε το σηµείο στο οποίο πρέπει να προστεθεί ο κόµβος. -Σωστά τερµατίζετε

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 13/1/13, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2012-2013 Προθεσµία: 13/1/13, 22:00 Περιεχόµενα Διαδικαστικά Εκφώνηση άσκησης (Στάδιο 0, Στάδιο 1, Στάδιο 2, Στάδιο 3, Στάδιο 4, Στάδιο 5) Οδηγίες

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

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

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

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

Στοίβες με Δυναμική Δέσμευση Μνήμης

Στοίβες με Δυναμική Δέσμευση Μνήμης ΕΠΛ 231 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ 10/02/10 Παύλος Αντωνίου Στοίβες με Δυναμική Δέσμευση Μνήμης Στοίβα: Στοίβα είναι μια λίστα που έχει ένα επιπλέον περιορισμό. Ο περιορισμός είναι ότι οι εισαγωγές

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

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

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2012 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ: ΚΑΤΕΥΘΥΝΣΗ: ΜΑΘΗΜΑ: ΘΕΜΑ Α Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ (2ος Κύκλος) ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ηµεροµηνία: Κυριακή 22 Απριλίου 2012 ΕΚΦΩΝΗΣΕΙΣ Α1. Να γράψετε στο τετράδιό

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

Παίζοντας Τόμπολα. Ημερομηνία Ανάρτησης: 16/03/2017 Ημερομηνία Παράδοσης: 30/03/2017, 23:59

Παίζοντας Τόμπολα. Ημερομηνία Ανάρτησης: 16/03/2017 Ημερομηνία Παράδοσης: 30/03/2017, 23:59 ΕΡΓΑΣΙΑ 3 Παίζοντας Τόμπολα Ημερομηνία Ανάρτησης: 16/03/2017 Ημερομηνία Παράδοσης: 30/03/2017, 23:59 Εισαγωγή Για την παρούσα άσκηση, και σε συνέχεια του δευτέρου προγράμματος της προηγούμενης άσκησης

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 7/1/2014, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2013-2014 Προθεσµία: 7/1/2014, 22:00 Περιεχόµενα Διαβάστε πριν ξεκινήσετε Εκφώνηση άσκησης 1 Οδηγίες αποστολής άσκησης Πριν ξεκινήσετε (ΔΙΑΒΑΣΤΕ

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

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Σύντομες εισαγωγικές σημειώσεις για την. Matlab Σύντομες εισαγωγικές σημειώσεις για την Matlab Δήλωση Μεταβλητών Για να εισάγει κανείς δεδομένα στη Matlab υπάρχουν πολλοί τρόποι. Ο πιο απλός είναι στη γραμμή εντολών να εισάγουμε αυτό που θέλουμε και

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

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

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2012 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ: ΚΑΤΕΥΘΥΝΣΗ: ΜΑΘΗΜΑ: ΘΕΜΑ Α Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ (2ος Κύκλος) ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ηµεροµηνία: Κυριακή 22 Απριλίου 2012 ΕΚΦΩΝΗΣΕΙΣ Α1. Να γράψετε στο τετράδιό

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

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

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

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

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

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

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

Τσάπελη Φανή ΑΜ: 2004030113. Ενισχυτική Μάθηση για το παιχνίδι dots. Τελική Αναφορά

Τσάπελη Φανή ΑΜ: 2004030113. Ενισχυτική Μάθηση για το παιχνίδι dots. Τελική Αναφορά Τσάπελη Φανή ΑΜ: 243113 Ενισχυτική Μάθηση για το παιχνίδι dots Τελική Αναφορά Περιγραφή του παιχνιδιού Το παιχνίδι dots παίζεται με δύο παίχτες. Έχουμε έναν πίνακα 4x4 με τελείες, και σκοπός του κάθε παίχτη

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

ΕΠΛ232 Προγραμματιστικές Τεχνικές και Εργαλεία Δυναμική Δέσμευση Μνήμης και Δομές Δεδομένων (Φροντιστήριο)

ΕΠΛ232 Προγραμματιστικές Τεχνικές και Εργαλεία Δυναμική Δέσμευση Μνήμης και Δομές Δεδομένων (Φροντιστήριο) ΕΠΛ232 Προγραμματιστικές Τεχνικές και Εργαλεία Δυναμική Δέσμευση Μνήμης και Δομές Δεδομένων (Φροντιστήριο) Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου http://www.cs.ucy.ac.cy/courses/epl232 Το μάθημα αυτό

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

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ ΑΣΚΗΣΗ 2 Επεξεργασία Πινάκων με Αλγόριθμο PageRank & Επεξεργασία Συμβολοσειρών με Απόσταση SED Διδάσκων: Δημήτρης Ζεϊναλιπούρ Υπεύθυνος

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

Διάλεξη 11: Φροντιστήριο για Στοίβες. Διδάσκων: Παναγιώτης Ανδρέου. ΕΠΛ035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. Και Μηχ. Υπολ.

Διάλεξη 11: Φροντιστήριο για Στοίβες. Διδάσκων: Παναγιώτης Ανδρέου. ΕΠΛ035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. Και Μηχ. Υπολ. Διάλεξη 11: Φροντιστήριο για Στοίβες Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. Και Μηχ. Υπολ. 1 ΑΤΔ Στοίβα- Πράξεις Θυμηθείτε τον ΑΤΔ στοίβα με τις πράξεις του: MakeEmptyStack()

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 232 Προγραμματιστικές Τεχνικές και Εργαλεία ΑΣΚΗΣΗ 2 Σύγκριση Ακολουθιών DNΑ με Δείκτες Διδάσκων: Δημήτρης Ζεϊναλιπούρ Υπεύθυνος Εργαστηρίου: Παύλος Αντωνίου

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

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ C Προγραμματιστικές Ασκήσεις, Φυλλάδιο Εκφώνηση: 9/3/0 Παράδοση: 5/4/0,.59 Άσκηση 0 η : Το πρόβλημα της βελόνας του Buffon Θέμα της εργασίας

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/10, 23:59

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/10, 23:59 ΣΕΤ ΑΣΚΗΣΕΩΝ 2 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2010-2011 Προθεσµία: 15/11/10, 23:59 Στόχοι Πίνακες Συναρτήσεις Συµβολοσειρές Χρήση µεταβλητών και σταθερών Χρήση τελεστών Χρήση δοµών ελέγχου

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

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

6. Εισαγωγή στον προγραµµατισµό 6. Εισαγωγή στον προγραµµατισµό 6.1 Η έννοια του προγράµµατος. 6.2 Ιστορική αναδροµή. 6.2.1 Γλώσσες µηχανής. ΗΜ04-Θ1Α 1. Ένα πρόγραµµα σε γλώσσα µηχανής είναι µια ακολουθία δυαδικών ψηφίων. 5. Ένα πρόγραµµα

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ Διάλεξη 8: Αφηρημένοι Τύποι Δεδομένων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Αφηρημένοι Τύποι Δεδομένων (ΑΤΔ) Οι ΑΤΔ Στοίβα και Ουρά Υλοποίηση των ΑΤΔ Στοίβα και Ουρά με Στατική Δέσμευση

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

υναµική έσµευση Μνήµης (συν.) ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 2 Εφαρµογή

υναµική έσµευση Μνήµης (συν.) ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 2 Εφαρµογή υναµική έσµευση Μνήµης (συν.) Στην ενότητα αυτή θα µελετηθούν: Μια εφαρµογή συνδεδεµένων λιστών ιπλά συνδεδεµένες Λίστες ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1 Εφαρµογή Ζητούµενο: Πρόγραµµα που παίρνει σαν

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

6η Δραστηριότητα. Ναυμαχία Αλγόριθμοι αναζήτησης. Περίληψη. Αντιστοιχία με το σχολικό πρόγραμμα * Ικανότητες. Ηλικία. Υλικά

6η Δραστηριότητα. Ναυμαχία Αλγόριθμοι αναζήτησης. Περίληψη. Αντιστοιχία με το σχολικό πρόγραμμα * Ικανότητες. Ηλικία. Υλικά 6η Δραστηριότητα Ναυμαχία Αλγόριθμοι αναζήτησης Περίληψη Συχνά ζητάμε από τους υπολογιστές να ψάξουν πληροφορίες στο εσωτερικό μεγάλων αρχείων δεδομένων. Για να το καταφέρουν, απαιτούνται ταχείες και αποτελεσματικές

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

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

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

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

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Μια δομή δεδομένων στην πληροφορική, συχνά αναπαριστά οντότητες του φυσικού κόσμου στον υπολογιστή. Για την αναπαράσταση αυτή, δημιουργούμε πρώτα ένα αφηρημένο μοντέλο στο οποίο προσδιορίζονται

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

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

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε

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

Το Jungle Speed είναι ένα παιχνίδι για 2 έως 10 παίκτες (ή και ακόμη περισσότερους!) ηλικίας 7 και άνω.

Το Jungle Speed είναι ένα παιχνίδι για 2 έως 10 παίκτες (ή και ακόμη περισσότερους!) ηλικίας 7 και άνω. Το Jungle Speed είναι ένα παιχνίδι για 2 έως 10 παίκτες (ή και ακόμη περισσότερους!) ηλικίας 7 και άνω. Σκοπός σας είναι να είστε ο πρώτος παίκτης που θα ξεφωρτωθεί όλες του τις κάρτες. Το τοτέμ τοποθετείται

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ) Γ ΤΑΞΗΣ 2003 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ) Γ ΤΑΞΗΣ 2003 ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ 1ο Α. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις

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

ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ

ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΘΕΜΑ 1 ο (2.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ Τελικές εξετάσεις Παρασκευή 28 Σεπτεµβρίου 2007 ιάρκεια: 13:00-16:00

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

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

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

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

Μάντεψε τον Αριθμό. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Οδηγίες

Μάντεψε τον Αριθμό. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Οδηγίες Μάντεψε τον Αριθμό Ενδεικτικές Απαντήσεις Φύλλου Εργασίας 1 10 Σεπτεμβρίου 2016 10:23 Οδηγίες Αρχικά, το πρόγραμμά μας θα δίνει κάποιες οδηγίες στον παίκτη σχετικά με το παιχνίδι. 1. Ξεκινήστε το πρόγραμμα

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

Α1. (α). ώστε τον ορισµό του προβλήµατος (Μονάδες 3)

Α1. (α). ώστε τον ορισµό του προβλήµατος (Μονάδες 3) ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ / ΑΠΟΦΟΙΤΟΙ ΣΕΙΡΑ: 1η ΗΜΕΡΟΜΗΝΙΑ: 28/11/2011 ΘΕΜΑ Α Α1. (α). ώστε τον ορισµό του προβλήµατος (Μονάδες 3) (β). ίνεται ο παρακάτω πίνακας που στην Στήλη 1 υπάρχουν κριτήρια κατηγοριοποίησης

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

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2)

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Οργάνωση Προγράµµατος Header Files Μετάφραση και σύνδεση αρχείων προγράµµατος ΕΠΛ 132 Αρχές Προγραµµατισµού

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

Sheet2 Α.Μ FAIL. οριακό PASS. - Έπρεπε να χρησιµοποιήσετε συναρτήσεις από τη string.h

Sheet2 Α.Μ FAIL. οριακό PASS. - Έπρεπε να χρησιµοποιήσετε συναρτήσεις από τη string.h Α.Μ. 1375 FAIL 1413 1417 1420 1421 FAIL 1422 FAIL 1424 1425 FAIL 1426 FAIL - Πρώτα να ελέγχετε αν η malloc επέστρεψε NULL και µετά να προσπαθείτε να προσπελάσετε τη δεσµευµένη µνήµη - Όταν διαβάζετε string

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 22/12/2016, 21:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2016-2017 Προθεσµία: 22/12/2016, 21:00 Διαδικαστικά Η εργασία αυτή µπορεί να γίνει σε οµάδες µέχρι 2 ατόµων. Δεν είναι απαραίτητο να συνεργαστείτε

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:

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

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

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

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

Διάλεξη 15: Δομές Δεδομένων IV (Διπλά Συνδεδεμένες Λίστες)

Διάλεξη 15: Δομές Δεδομένων IV (Διπλά Συνδεδεμένες Λίστες) Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 15: Δομές Δεδομένων IV (Διπλά Συνδεδεμένες Λίστες) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 15-1 Περιεχόμενο

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσμία: 17/1/14, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2013-2014 Προθεσμία: 17/1/14, 22:00 Περιεχόμενα Διαδικαστικά Οδηγίες Αποστολής Εκφώνηση άσκησης (Στάδιο 0, Στάδιο 1, Στάδιο 2, Στάδιο 3, Στάδιο

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

ΕΡΓΑΣΙΑ 3. Παίζοντας Sudoku. Ημερομηνία Ανάρτησης: 16/03/2018 Ημερομηνία Παράδοσης: 03/04/2018, 09:00

ΕΡΓΑΣΙΑ 3. Παίζοντας Sudoku. Ημερομηνία Ανάρτησης: 16/03/2018 Ημερομηνία Παράδοσης: 03/04/2018, 09:00 ΕΡΓΑΣΙΑ 3 Παίζοντας Sudoku Ημερομηνία Ανάρτησης: 16/03/2018 Ημερομηνία Παράδοσης: 03/04/2018, 09:00 Εισαγωγή Για την τρίτη εργασία χρειάζεται να κατασκευάσετε ένα πρόγραμμα το οποίο παίζει και λύνει το

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

ΗΥ240: οµές εδοµένων Χειµερινό Εξάµηνο Ακαδηµαϊκό Έτος Παναγιώτα Φατούρου. Προγραµµατιστική Εργασία 3 ο Μέρος

ΗΥ240: οµές εδοµένων Χειµερινό Εξάµηνο Ακαδηµαϊκό Έτος Παναγιώτα Φατούρου. Προγραµµατιστική Εργασία 3 ο Μέρος Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών 6 εκεµβρίου 2008 ΗΥ240: οµές εδοµένων Χειµερινό Εξάµηνο Ακαδηµαϊκό Έτος 2008-09 Παναγιώτα Φατούρου Προγραµµατιστική Εργασία 3 ο Μέρος Ηµεροµηνία Παράδοσης:

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

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

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

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

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

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Προχωρημένα Θέματα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανακατεύθυνση Εισόδου/Εξόδου Συνήθως η τυπική είσοδος ενός προγράμματος (stdin) προέρχεται

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

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

ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?

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

Επίλυση προβληµάτων. Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης Αλγόριθµοι τυφλής αναζήτησης Αλγόριθµοι ευρετικής αναζήτησης

Επίλυση προβληµάτων. Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης Αλγόριθµοι τυφλής αναζήτησης Αλγόριθµοι ευρετικής αναζήτησης Επίλυση προβληµάτων Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης Αλγόριθµοι τυφλής αναζήτησης Αλγόριθµοι ευρετικής αναζήτησης! Παιχνίδια δύο αντιπάλων Προβλήµατα ικανοποίησης περιορισµών Γενικά " Ντετερµινιστικά

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

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2012-2013 Στόχοι Συµβολοσειρές, πίνακες Πριν ξεκινήσετε Βήµα 1: Πηγαίνετε στο φάκελο ce120 και κατασκευάστε µέσα σε αυτόν ένα φάκελο µε όνοµα

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

ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2018 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 2o Μέρος

ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2018 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 2o Μέρος ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2018 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 2o Μέρος Ημερομηνία Παράδοσης: Δευτέρα, 14 Μαΐου 2018, ώρα 23:59 Τρόπος Παράδοσης: Χρησιμοποιώντας

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ Διάλεξη 2:Αλφαριθμητικές Σειρές Χαρακτήρων (Strings)- Επανάληψη Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγικές Έννοιες σε Strings(Αρχικοποίηση, Ανάγνωση & Εκτύπωση) Πίνακες από Strings

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

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

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού ( Απαντήσεις & Λύσεις Βιβλίου) 1. Σκοποί κεφαλαίου Κύκλος ανάπτυξης προγράµµατος Κατηγορίες γλωσσών προγραµµατισµού

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

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python Σκοπός της 1ης άσκησης είναι η εξοικείωση με τη γλώσσα προγραμματισμού Python, την οποία και θα χρησιμοποιήσουμε και στις υπόλοιπες εργαστηριακές ασκήσεις.

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

Κεφάλαιο Αλφαριθµητικές Σειρές Χαρακτήρων (Strings)

Κεφάλαιο Αλφαριθµητικές Σειρές Χαρακτήρων (Strings) Κεφάλαιο 9.1-9.2 Αλφαριθµητικές Σειρές Χαρακτήρων (Strings) ( ιάλεξη 19) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 1) Strings στη C Ένα string είναι µία ακολουθία αλφαριθµητικών χαρακτήρων, σηµείων στίξης κτλ. Π.χ.

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

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

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2017 Β ΦΑΣΗ ÅÐÉËÏÃÇ ΤΑΞΗ: Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΣ: ΣΠΟΥ ΩΝ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ Α Ηµεροµηνία: Σάββατο 8 Απριλίου 2017 ιάρκεια Εξέτασης: 3 ώρες

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ) Γ ΤΑΞΗΣ 2003 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ) Γ ΤΑΞΗΣ 2003 ΘΕΜΑ 1ο Α. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις

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

Διδάσκων: Παναγιώτης Ανδρέου

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 10: Στοίβες:Υλοποίηση& Εφαρμογές Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Υλοποίηση Στοιβών με Δυναμική Δέσμευση Μνήμης - Εφαρμογή Στοιβών 1: Αναδρομικές συναρτήσεις - Εφαρμογή

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

ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση μεγιστοποιήσει την πιθανότητά

ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση μεγιστοποιήσει την πιθανότητά ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση: Έστω ότι έχουμε τους παίκτες Χ και Υ. Ο κάθε παίκτης, σε κάθε κίνηση που κάνει, προσπαθεί να μεγιστοποιήσει την πιθανότητά του να κερδίσει. Ο Χ σε κάθε κίνηση που κάνει

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

a = 10; a = k; int a,b,c; a = b = c = 10;

a = 10; a = k; int a,b,c; a = b = c = 10; C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 4 ο Τελεστές Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Ο τελεστής εκχώρησης = Ο τελεστής = χρησιµοποιείται για την απόδοση τιµής (ή αλλιώς ανάθεση τιµής) σε µία µεταβλητή Π.χ.

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

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C Master Mind εφαρμογή στη γλώσσα προγραμματισμού C Φεβρουάριος/Μάρτιος 2013 v. 0.1 Master-mind: κανόνες παιχνιδιού Στο master mind χρειάζεται να παράγονται κάθε φορά 4 τυχαία σύμβολα από ένα πλήθος 6 διαφορετικών

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

Προγραµµατισµός Ι Εργαστήριο 3ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι Εργαστήριο 3ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ ΕΡΓΑΣΤΗΡΙΟ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2014-2015 Στόχοι Εξάσκηση στη βασική είσοδο / έξοδο Εξάσκηση στη χρήση µεταβλητών Δυαδικοί τελεστές Φορµαρισµένη έξοδος Πριν ξεκινήσετε Βήµα 1:

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

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C Κεφάλαιο 9.1-9.2 Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C Ένα string είναι μία ακολουθία αλφαριθμητικών χαρακτήρων, σημείων στίξης κτλ. Π.χ. Hello How are you? 121212 *Apple#123*%

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 18/12/12, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2012-2013 Προθεσµία: 18/12/12, 22:00 Περιεχόµενα Διαβάστε πριν ξεκινήσετε Εκφώνηση άσκησης 1 Οδηγίες αποστολής άσκησης Διαδικαστικά Η εργασία

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

καθώς και το παρακάτω τμήμα αλγορίθμου γραμμένο σε «ΓΛΩΣΣΑ»:

καθώς και το παρακάτω τμήμα αλγορίθμου γραμμένο σε «ΓΛΩΣΣΑ»: ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΚΑΙ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΠΑΡΑΣΚΕΥΗ 25/04/2014 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ 2 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ:

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

ÁÎÉÁ ÅÊÐÁÉÄÅÕÔÉÊÏÓ ÏÌÉËÏÓ

ÁÎÉÁ ÅÊÐÁÉÄÅÕÔÉÊÏÓ ÏÌÉËÏÓ ΘΕΜΑ Α ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΚΑΤΕΥΘΥΝΣΗΣ (ΠΑΛΑΙΟ ΣΥΣΤΗΜΑ) 27 ΜΑΪΟΥ 2016 ΕΚΦΩΝΗΣΕΙΣ Α1. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις 1-5 και, δίπλα,

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

Πρόταση για Ανασχηματισμό του Προγράμματος Προπτυχιακών Σπουδών της ΣΗΜΜΥ

Πρόταση για Ανασχηματισμό του Προγράμματος Προπτυχιακών Σπουδών της ΣΗΜΜΥ Πρόταση για Ανασχηματισμό του Προγράμματος Προπτυχιακών Σπουδών της ΣΗΜΜΥ Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών Περίληψη Τί προτείνουμε, πώς και γιατί με λίγα λόγια: 55 μαθήματα = 30 για ενιαίο

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

ΠΛΗ111. Ανοιξη Μάθηµα 8 ο. Αναζήτηση. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης

ΠΛΗ111. Ανοιξη Μάθηµα 8 ο. Αναζήτηση. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης ΠΛΗ111 οµηµένος Προγραµµατισµός Ανοιξη 2005 Μάθηµα 8 ο Αναζήτηση Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης Αναζήτηση Αναζήτηση σε ιατεταγµένο Πίνακα υαδική Αναζήτηση Κατακερµατισµός

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

8. Λεξιλόγιο μιας γλώσσας είναι όλες οι ακολουθίες που δημιουργούνται από τα στοιχεία του αλφαβήτου της γλώσσας, τις λέξεις.

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

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

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

Α. Ερωτήσεις Ανάπτυξης οµηµένος Προγραµµατισµός-Κεφάλαιο 7 Σελίδα 1 α ό 10 ΕΝΟΤΗΤΑ ΙΙΙ (ΠΡΟΓΡΑΜΜΑΤΑ) ΚΕΦΑΛΑΙΟ 7: Είδη, Τεχνικές και Περιβάλλοντα Προγραµµατισµού Α. Ερωτήσεις Ανάπτυξης 1. Τι ονοµάζουµε γλώσσα προγραµµατισµού;

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

Σημειωματάριο Τετάρτης 25 Οκτ. 2017

Σημειωματάριο Τετάρτης 25 Οκτ. 2017 Σημειωματάριο Τετάρτης 25 Οκτ. 2017 Ένα πρόγραμμα που παίζει κρεμάλα Σήμερα φτιάξαμε ένα πρόγραμμα που παίζει "κρεμάλα" με το χρήστη. Το πρόγραμμα hangman.py link (http://fourier.math.uoc.gr/~mk/prog1718/files/hangman.py))

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1 Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων Octave - Διαδικασία ανάπτυξης προγραμμάτων MATLAB - Απλά

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

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

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

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 8/1/12, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2011-2012 Προθεσµία: 8/1/12, 22:00 Περιεχόµενα Διαβάστε πριν ξεκινήσετε Εκφώνηση άσκησης Οδηγίες αποστολής άσκησης Πριν ξεκινήσετε (ΔΙΑΒΑΣΤΕ

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

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

επιµέλεια Θοδωρής Πιερράτος Ερωτήσεις Σωστό Λάθος 1. Οι διαστάσεις ενός πίνακα δεν µπορούν να µεταβάλλονται κατά την εκτέλση ενός αλγόριθµου. 2. Ο πίνακας είναι στατική δοµή δεδοµένων. 3. Ένας πίνακας δυο στηλών µπορεί να περιέχει

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