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

Μέγεθος: 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: Επεξεργασία Χημικών Τύπων με Δυναμικές Δομές Δεδομένων Διδάσκων: Δημήτρης Ζεϊναλιπούρ Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

FAIL PASS PASS οριακά

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

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

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

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

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

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

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

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

for for for for( . */

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 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) Οδηγίες

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 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, Στάδιο

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ) Γ ΤΑΞΗΣ 2003 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ) Γ ΤΑΞΗΣ 2003 ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ 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 ο Τελεστές Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Ο τελεστής εκχώρησης = Ο τελεστής = χρησιµοποιείται για την απόδοση τιµής (ή αλλιώς ανάθεση τιµής) σε µία µεταβλητή Π.χ.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 2 ο Τύποι Δεδοµένων Δήλωση Μεταβλητών Έξοδος Δεδοµένων Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Μνήµη και Μεταβλητές Σχέση Μνήµης Υπολογιστή και Μεταβλητών Η µνήµη (RAM) ενός

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

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

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

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

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

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

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

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

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

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

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

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

Φροντιστήριο 4 Σκελετοί Λύσεων

Φροντιστήριο 4 Σκελετοί Λύσεων Φροντιστήριο 4 Σκελετοί Λύσεων 1. Ο ζητούμενος ΑΤΔ μπορεί να υλοποιηθεί ως εξής: (i) Διαδοχική χορήγηση μνήμης Υποθέτουμε ότι οι λίστες μας έχουν μέγιστο μέγεθος max και χρησιμοποιούμε τη δομή type elements[max];

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

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

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

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

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

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

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

Κεφάλαιο 2ο (α) Αµιγείς Στρατηγικές (β) Μεικτές Στρατηγικές (α) Αµιγείς Στρατηγικές. Επαναλαµβάνουµε:

Κεφάλαιο 2ο (α) Αµιγείς Στρατηγικές (β) Μεικτές Στρατηγικές (α) Αµιγείς Στρατηγικές. Επαναλαµβάνουµε: Κεφάλαιο 2 ο Μέχρι τώρα δώσαµε τα στοιχεία ενός παιγνίου σε µορφή δέντρου και σε µορφή µήτρας. Τώρα θα ορίσουµε τη στρατηγική στην αναλυτική µορφή του παιγνίου (η στρατηγική ορίζεται από κάθε στήλη ή γραµµή

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

Τμήμα Διοίκησης Τεχνολογίας Α/Α POSO Ν... SYN...

Τμήμα Διοίκησης Τεχνολογίας Α/Α POSO Ν... SYN... Τμήμα Διοίκησης Τεχνολογίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Εξάμηνο Β' Φύλλο Ασκήσεων 5 ΠΙΝΑΚΕΣ Διδάσκοντες: Στέλιος Ξυνόγαλος, Θεόδωρος Κασκάλης Παρατηρήσεις: 1. Τα δεδομένα εισόδου διαβάζονται με τη σειρά

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

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

υναµικές οµές εδοµένων

υναµικές οµές εδοµένων υναµικές οµές εδοµένων Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: υναµικές οµές εδοµένων Γενικά υναµική έσµευση Μνήµης οµή τύπου structure αυτοαναφορικές δοµές Η δήλωση typedef στη C Αναπαράσταση

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

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

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

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

(GNU-Linux, FreeBSD, MacOsX, QNX

(GNU-Linux, FreeBSD, MacOsX, QNX 1.7 διαταξεις (σελ. 17) Παράδειγµα 1 Θα πρέπει να κάνουµε σαφές ότι η επιλογή των λέξεων «προηγείται» και «έπεται» δεν έγινε απλώς για λόγους αφαίρεσης. Μπορούµε δηλαδή να ϐρούµε διάφορα παραδείγµατα στα

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

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2017 A ΦΑΣΗ

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2017 A ΦΑΣΗ ΤΑΞΗ: Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΣ: ΣΠΟΥ ΩΝ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ Α Ηµεροµηνία: Τετάρτη 4 Ιανουαρίου 2017 ιάρκεια Εξέτασης: 3 ώρες

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

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 6 η Βρόχοι Επανάληψης Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή

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

υναµικές οµές εδοµένων (συν.) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα:

υναµικές οµές εδοµένων (συν.) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: υναµικές οµές εδοµένων (συν.) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Ταξινοµηµένες Λίστες µε δυναµική δέσµευση µνήµης Αναδροµκές συναρτήσεις ΕΠΛ 12 Αρχές Προγραµµατισµού ΙΙ 1 Λίστες

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

Προγραμματισμός Δομές Δεδομένων

Προγραμματισμός Δομές Δεδομένων Προγραμματισμός Δομές Δεδομένων Προγραμματισμός Δομές Δεδομένων (Data Structures) Καινούργιοι τύποι δεδομένων που αποτελούνται από την ομαδοποίηση υπαρχόντων τύπων δεδομένων Ομαδοποίηση πληροφορίας που

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

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

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

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

Εργαστήριο 5. Εαρινό Εξάμηνο

Εργαστήριο 5. Εαρινό Εξάμηνο Τομέας Υλικού και Αρχιτεκτονικής Υπολογιστών ΗΥ134 - Εισαγωγή στην Οργάνωση και Σχεδίαση Η/Υ 1 Εργαστήριο 5 Εαρινό Εξάμηνο 2012-2013 Στό χόι τόυ εργαστηρι όυ Χρήση στοίβας Αναδρομή Δομές δεδομένων Δυναμική

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

Χωρική Βάση δεδοµένων Autocad

Χωρική Βάση δεδοµένων Autocad Χωρική Βάση δεδοµένων Autocad Όλοι η πληροφορία σας βρίσκεται σε ένα αρχείο µε κατάληξη.dwg το οποίο αντιπροσωπεύει τη βάση δεδοµένων σας. Αυτό το αρχείο µπορούµε να το επεξεργαστούµε µε διάφορους τρόπους

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

ΣΚΗΝΙΚΟ ΥΠΟΒΑΘΡΑ ΑΡΧΙΚΗ

ΣΚΗΝΙΚΟ ΥΠΟΒΑΘΡΑ ΑΡΧΙΚΗ Scratch 1. Σκηνικό (Αρχική Έχασες Κέρδισες). Η πρώτη μου δουλειά όταν φτιάχνω ένα παιχνίδι είναι πάω στο ΣΚΗΝΙΚΟ - ΥΠΟΒΑΘΡΑ και να σχεδιάσω (ή να αντιγράψω μια εικόνα από το διαδίκτυο ή από οπουδήποτε

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

ΚΕΦΑΛΑΙΟ 7 ο. Έτσι ο προγραµµατισµός µε τη ΓΛΩΣΣΑ εστιάζεται στην ανάπτυξη του αλγορίθµου και τη µετατροπή του σε σωστό πρόγραµµα.

ΚΕΦΑΛΑΙΟ 7 ο. Έτσι ο προγραµµατισµός µε τη ΓΛΩΣΣΑ εστιάζεται στην ανάπτυξη του αλγορίθµου και τη µετατροπή του σε σωστό πρόγραµµα. ΚΕΦΑΛΑΙΟ 7 ο 1. Επιλογή της κατάλληλης γλώσσας προγραµµατισµού Εκατοντάδες γλώσσες προγραµµατισµού χρησιµοποιούνται όπως αναφέρθηκε σήµερα για την επίλυση των προβληµάτων µε τον υπολογιστή, τη δηµιουργία

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

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

Πατώντας την επιλογή αυτή, ανοίγει ένα παράθυρο που έχει την ίδια μορφή με αυτό που εμφανίζεται όταν δημιουργούμε μία μεταβλητή. Λίστες Τι είναι οι λίστες; Πολλές φορές στην καθημερινή μας ζωή, χωρίς να το συνειδητοποιούμε, χρησιμοποιούμε λίστες. Τέτοια παραδείγματα είναι η λίστα του super market η οποία είναι ένας κατάλογος αντικειμένων

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

Α2. Να γράψετε στο τετράδιο σας τον αριθμό 1-4 κάθε πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.

Α2. Να γράψετε στο τετράδιο σας τον αριθμό 1-4 κάθε πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΚΑΙ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΚΥΡΙΑΚΗ 23/04/2017 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΕΠΠ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΠΤΑ ( 7) ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν γράφοντας στο

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

Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες)

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

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

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

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

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

Τρίτη, 3 Ιουνίου 2003 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ

Τρίτη, 3 Ιουνίου 2003 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΘΕΜΑ 1 ο ο ΕΘΝΙΚΕΣ ΕΞΕΤΑΣΕΙΣ 2003 Τρίτη, 3 Ιουνίου 2003 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Α. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη

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

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

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

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

Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου

Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Εργαστήριο 2: Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας Προγραμματισμού

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

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο Κατακερµατισµός 1 Οργάνωση Αρχείων (σύνοψη) Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο 1. Αρχεία Σωρού 2. Ταξινοµηµένα Αρχεία Φυσική διάταξη των εγγραφών

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

ΕΡΓΑΣΙΑ 1 Ημερομηνία Ανάρτησης: 02/02/2017 Ημερομηνία Παράδοσης: 16/02/2017, 09:00 π.μ. Στόχος Ορισμός

ΕΡΓΑΣΙΑ 1 Ημερομηνία Ανάρτησης: 02/02/2017 Ημερομηνία Παράδοσης: 16/02/2017, 09:00 π.μ. Στόχος Ορισμός ΕΡΓΑΣΙΑ 1 Ημερομηνία Ανάρτησης: 02/02/2017 Ημερομηνία Παράδοσης: 16/02/2017, 09:00 π.μ. Στόχος Στόχος αυτής της εργασίας είναι η χρησιμοποίηση δομών ελέγχου και βρόχων. Διαβάστε προσεχτικά το πρόβλημα

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

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

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

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

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή Εγχειρίδιο Φοιτητών 1. Εισαγωγή Η ηλεκτρονική πλατφόρµα «e-class», αποτελεί ένα ολοκληρωµένο σύστηµα Ασύγχρονης Τηλεκπαίδευσης. Στόχος της είναι παροχή υποδοµών εκπαίδευσης και κατάρτισης ανεξάρτητα από

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