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

Σχετικά έγγραφα
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ

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

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

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ. Πρώτη Σειρά ασκήσεων Ημερομηνία Παράδοσης: 24 Απριλίου 2018, 12 μ.μ.

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

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

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Έγγραφο Προδιαγραφών Απαιτήσεων Λογισμικού για το παιχνίδι: Asylum : The Escape

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι

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

Αυτόνομοι Πράκτορες. Εργασία εξαμήνου. Μάθηση του παιχνιδιού British square με χρήση Temporal Difference(TD) Κωνσταντάκης Γιώργος

Μάθημα 1: Εισαγωγή. Κάνε κλικ την εντολή "κινήσου" και με το ποντίκι πατημένο μετέφερε τη στη περιοχή σεναρίων.

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

ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ. ΑΝΑΦΟΡΑ ΕΡΓΑΣΙΑΣ Othello-TD Learning. Βόλτσης Βαγγέλης Α.Μ

Κεφάλαιο 13: Φτιάχνοντας παιχνίδια

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

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

1 ο ΔΙΔΑΚΤΙΚΟ ΦΥΛΛΟ «Jeu speech» ΠΩΣ ΕΙΣΑΙ;

App Inventor 5ο Μάθημα (Κορώνα γράμματα - επέκταση)

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

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

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεωρία Παιγνίων και Αποφάσεων Διδάσκων: Ε. Μαρκάκης, Εαρινό εξάμηνο 2015

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

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

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Τελικό επαναληπτικό διαγώνισμα Επιμέλεια: Δρεμούσης Παντελής

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ 1 4η Εργασία (Project)

ΜΑΝΤΕΨΕ ΤΟΝ ΑΡΙΘΜΟ! ΕΚΠΑΙΔΕΥΤΙΚΟ ΣΕΝΑΡΙΟ Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ ΥΠΟ ΣΥΝΘΗΚΗ

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο: 5 Αριθμητικές Εντολές

ΚΕΝΤΡΙΚΗ ΟΡΓΑΝΩΤΙΚΗ ΕΠΙΤΡΟΠΗ 8 ου ΠΑΝΕΛΛΗΝΙΟΥ ΔΙΑΓΩΝΙΣΜΟΥ ΠΛΗΡΟΦΟΡΙΚΗΣ 1996 ΠΡΟΚΑΤΑΡΚΤΙΚΗ ΦΑΣΗ ΠΑΝΕΛΛΗΝΙΟΥ ΔΙΑΓΩΝΙΣΜΟΥ ΘΕΜΑΤΑ ΓΥΜΝΑΣΙΟΥ

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

ΕΡΓΑΣΙΕΣ ΟΝΤΟΚΕΝΤΡΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

Σημειωματάριο Δευτέρας 9 Οκτ. 2017

ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011

Τυχαίοι αριθμοί ρίξε μια «ζαριά»

Λίγα λόγια... Περιεχόμενα

ΟΔΗΓΟΣ ΥΠΟΒΟΛΗΣ ON-LINE ΑΙΤΗΣΕΩΝ ΓΙΑ ΤΗ ΣΥΜΜΕΤΟΧΗ ΣΤΟ ΠΡΟΓΡΑΜΜΑ ERASMUS+

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Αναζήτηση και Ταξινόμηση Χειμερινό Εξάμηνο 2016

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

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

Γλώσσα Προγραμματισμού C

P (Ā) = k P ( C A) = 0

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

ΔΙΑΛΕΞΗ ΙΙ ΕΝΑ ΒΗΜΑ ΠΑΡΑΠΑΝΩ ΜΕ SCRATCH ΕΠΙΛΕΓΩΝΤΑΣ & ΕΠΑΝΑΛΑΜΒΑΝΟΝΤΑΣ

Οδηγίες χρήσης πλατφόρμας τηλεκατάρτισης

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.

ΕΡΓΑΣΙΑ 2 - Παίζοντας Blackjack

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

ΘΕΩΡΙΑ ΠΙΘΑΝΟΤΗΤΩΝ Ι

ΜΑΗΣ ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ

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

Το Τμήμα Ναυπηγών Μηχανικών Τ.Ε. σας καλωσορίζει και σας εύχεται καλή πρόοδο.

ΑΡΧΗ 2ΗΣ ΣΕΛΙΔΑΣ Γ Α... Β

Θεωρητικό Μέρος. int rec(int n) { int n1, n2; if (n <= 5) then return n; else { n1 = rec(n-5); n2 = rec(n-3); return (n1+n2); } }

Mπαρμπούτι. Φύλλο Εργασίας. Τυχαιότητα

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & Δ ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ ΥΠΟΛΕΙΠΟΜΕΝΕΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ

Asylum, the Escape. Game Manual

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

Επαναληπτική δοκιμασία στην Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τεχνολογικής Κατεύθυνσης Μάιος 2013

-Δεν υπάρχουν.java αρχεία στο φάκελο.μόνο.class και το text file -Δεν γίνεται έλεγχος για Ν<0

Αριθμοκαμώματα Computer Game σε Microworlds Pro

Επαναληπτικό διαγώνισμα στην Α.Ε.Π.Π - 18 / Απριλίου / 2010 ΘΕΜΑ 1

Αυτόνομοι Πράκτορες. ΝΑΟ Μουσικός

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

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

Τμήμα Εφαρμοσμένης Πληροφορικής

Το Παιχνίδι της Αφαίρεσης

Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κανονική εξέταση, Φεβρουάριος 2005

Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε "Ναι" Τέλος Α2

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

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

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

Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου

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

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

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ΚΑΙ Β ) ΤΡΙΤΗ 13 ΙΟΥΝΙΟΥ 2017

1 η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Ακ. έτος , 5ο Εξάμηνο, Σχολή ΗΜ&ΜΥ

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος

Γραφικά υπολογιστών Εργαστήριο 10 Εισαγωγή στα Sprites

Η γλώσσα προγραμματισμού C

Ενσωματωμένα Συστήματα


Μάντεψε τον Αριθμό. Έχω Ένα Μυστικό. Το Βρήκα;

ΠΕΡΙΕΧΟΜΕΝΑ. 9 κάρτες Άλλοθι. Κάθε τέτοια κάρτα αναπαριστάνει έναν χαρακτήρα του παιχνιδιού. Κάθε κάρτα έχει επίσης έναν αριθμό Κλεψύδρων (0,1 ή 2).

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

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

ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ & ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Οδηγός Φοιτητών. για τη Μετάβαση από το Παλιό στο Νέο Πρόγραμμα Σπουδών

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ Ακαδημαϊκό έτος B εξάμηνο (εαρινό)

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΥΥ-105: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ (ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2015-16) ΕΡΓΑΣΙΑ: «ΚΡΕΜΑΛΑ» Εισαγωγή Η κρεμάλα είναι ένα δημοφιλές παιχνίδι που παίζεται με δύο παίκτες. Ο ένας παίκτης διαλέγει μια λέξη και δίνει στον δεύτερο παίκτη μια ακολουθία με παύλες όσες και ο αριθμός των γραμμάτων της λέξης. Ο δεύτερος παίκτης προσπαθεί να μαντέψει τα γράμματα που αποτελούν την κρυμμένη λέξη. Έχει σαν περιθώριο έναν αριθμό από αποτυχημένες προσπάθειες. Αν υπερβεί τον αριθμό αυτόν χάνει, ενώ αν καταφέρει και βρει τη λέξη πριν ξοδέψει τις προσπάθειες κερδίζει. Απαιτήσεις της εργασίας Ο στόχος της εργασίας αυτής είναι να γραφτεί ένα πρόγραμμα σε Python το οποίο θα παίζει παιχνίδια κρεμάλας μεταξύ δύο παικτών ή μεταξύ ενός παίκτη και του υπολογιστή. Οι πιθανές λέξεις που μπορεί να επιλεγούν μπορεί να είναι αγγλικές λέξεις μεταξύ 3 και 20 γραμμάτων που υπάρχουν σε μια συλλογή λέξεων. Η συλλογή αυτή δίνεται στο αρχείο words.txt (μπορείτε να το κατεβάσετε από το ecourse). Φάση 1: Προσδιορισμός κρυμμένης λέξης Στην αρχή το πρόγραμμα ζητάει τον τύπο παιχνιδιού (2 παίκτες ή ένας παίκτης). Αυτό γίνεται ζητώντας από το χρήστη να προσδιορίσει αν η κρυμμένη λέξη θα δοθεί από άλλο παίκτη: ('Type g<enter> or G<Enter> if word will be given by another player: '). Α) Αν ο χρήστης δώσει g ή G, τότε το παιχνίδι είναι για 2 παίκτες. Το πρόγραμμα τότε ζητάει την κρυμμένη λέξη από το 2ο παίκτη ενώ ο 1ος δεν κοιτάει ( Player don't look! 2nd player, type in word, must be in English and at least 3 letters long: ). Η λέξη που θα δίνεται πρέπει να υπάρχει στη συλλογή (words.txt), αλλιώς απορρίπτεται. Μόλις δοθεί η λέξη, το πρόγραμμα «καθαρίζει» την οθόνη, ώστε μόλις επιστρέψει ο παίκτης που πρέπει να μαντέψει να μην μπορεί να τη δει. Β) Αν ο χρήστης δεν δώσει g ή G τότε η λέξη επιλέγεται τυχαία. Το πρόγραμμα τότε ζητάει από το χρήστη αν επιθυμεί μια λέξη τυχαίου μήκους ή αν θέλει να προδιορίσει αυτός το μήκος ( Type r<enter> or R<Enter> for word of random length, else give length of random word (between 3 and 20): ). Ανάλογα με το τι δίνει ο χρήστης, το πρόγραμμα επιλέγει μια τυχαία λέξη. Για την τυχαία επιλογή της λέξης χρησιμοποιήστε τη βιβλιοθήκη random. 1

Φάση 2: Παιχνίδι Σε αυτή τη φάση ο παίκτης προσπαθεί να μαντέψει τη λέξη κάνοντας tries = 5 προσπάθειες. Σε κάθε προσπάθεια, ο χρήστης δίνει ένα γράμμα. Αν το γράμμα υπάρχει στη λέξη, τότε στην επόμενη προσπάθεια εμφανίζεται η κρυμένη λέξη με τα γράμματα που έχουν βρεθεί φανερά και τα υπόλοιπα κρυφά (με - ). Για παράδειγμα, αν ή λέξη είναι school και ο χρήστης έχει μαντέψει τα γράμματα t (ανεπιτυχώς) και o (επιτυχώς) τότε εμφανίζεται η λέξη ως --- OO-. Αν το γράμμα δεν υπάρχει, τότε οι προσπάθειες (tries) μειώνονται κατά 1. Σε κάθε περίπτωση, πριν από κάθε προσπάθεια, εμφανίζεται η λέξη κρυμμένη, το υπόλοιπο των προσπαθειών και τα γράμματα που έχουν επιλεγεί μέχρι στιγμής. Αν ο χρήστης επιλέξει ένα γράμμα που έχει επιλέξει και στο παρελθόν, τότε εμφανίζεται το μήνυμα You've chosen this letter already! και δεν μειώνονται οι προσπάθειες. Το παιχνίδι τελειώνει σε δύο περιπτώσεις. (Α) Ο χρήστης βρίσκει όλα τα γράμματα της λέξης. Τότε ο χρήστης κερδίζει. (Β) Όλες οι προσπάθειες του χρήστη τελειώνουν χωρίς να καταφέρει να βρει όλα τα γράμματα της λέξης. Στην περίπτωση αυτή ο παίκτης χάνει, δηλαδή κερδίζει ο 2ος παίκτης (που είχε βάλει τη λέξη) ή ο υπολογιστής (αν η λέξη επιλέχθηκε τυχαία). Στο τέλος του παιχνιδιού, το πρόγραμμα ρωτάει το χρήστη αν θέλει να παίξει ξανά. Αν ναι, ξαναρχίζει το παιχνίδι, αλλιώς το πρόγραμμα τερματίζει. Η συνάρτηση printhanger Ζητείται να συμπεριλάβετε στο πρόγραμμά σας μια συνάρτηση printhanger(tries,maxtries), η οποία παίρνει σαν παράμετρο τον αριθμό tries των υπολειπόμενων προσπαθειών και τον μέγιστο αριθμό επιτρεπόμενων προσπαθειων (maxtries=5) και τυπώνει μια κρεμάλα, η οποία μπορεί να περιέχει μερικώς τον παίκτη κρεμασμένο. Π.χ., αν tries = 5 δεν τυπώνεται κάτι κρεμασμένο, αν tries=4, τυπώνεται μόνο το κεφάλι κρεμασμένο, κλπ. Η συνάρτηση αυτή καλείται πριν από κάθε προσπάθεια για να δείχνει την κατάσταση του παίκτη. Σημείωση Οι λέξεις και τα γράμματα που δίνονται ή επιλέγονται πρέπει να μετατρέπονται σε κεφαλαία. Αν ο χρήστης δίνει ένα γράμμα ή μια λέξη δεν πρέπει να έχει σημασία αν τα γράμματα είναι μικρά ή όχι (case insensitive). Π.χ. είτε ο χρήστης δώσει a είτε A πρέπει το πρόγραμμα να εκτελεί την ίδια λειτουργία. Παράδειγμα επιθυμητής λειτουργίας Welcome to KREMALA! Type g<enter> or G<Enter> if word will be given by another player: g Player don't look! 2nd player, type in word, must be in English and at least 3 letters long: cage 2

---- chosen letters: [] Guess letter: a chosen letters: ['A'] Guess letter: t o 4 tries left chosen letters: ['A', 'T'] Guess letter: k o --+ chosen letters: ['A', 'T', 'K'] Guess letter: e o --+ -A-E chosen letters: ['A', 'T', 'K', 'E'] Guess letter: c o --+ chosen letters: ['A', 'T', 'K', 'E', 'C'] Guess letter: n o --+-- 2 tries left chosen letters: ['A', 'T', 'K', 'E', 'C', 'N'] Guess letter: s o --+-- / 1 tries left chosen letters: ['A', 'T', 'K', 'E', 'C', 'N', 'S'] Guess letter: g 3

Congratulations! You've found word CAGE! Type P<Enter> or p<enter> to play again: p Type g<enter> or G<Enter> if word will be given by another player: n Type r<enter> or R<Enter> for word of random length, else give length of random word (between 3 and 20): 5 ----- chosen letters: [] Guess letter: i chosen letters: ['I'] Guess letter: e o 4 tries left chosen letters: ['I', 'E'] Guess letter: a o --+ chosen letters: ['I', 'E', 'A'] Guess letter: o o --+-- 2 tries left chosen letters: ['I', 'E', 'A', 'O'] Guess letter: u o --+-- / 1 tries left chosen letters: ['I', 'E', 'A', 'O', 'U'] Guess letter: n o --+-- /\ Sorry! You lost! The word was BRICK Type P<Enter> or p<enter> to play again: 4

Παραδοτέα Γράψτε το πρόγραμμα σε ένα αρχείο το οποίο θα έχει σαν όνομα τον αριθμό μητρώου σας και κατάληξη py (π.χ. 2034.py). Ο κώδικας πρέπει να είναι λειτουργικός και καθαρογραμμένος. Στην πρώτη γραμμη του προγράμματος, πρέπει να εμφανίζεται το όνομα και ο ΑΜ σας, π.χ.: # Giorgos Papadopoulos, A.M. 2034 Το πρόγραμμα θα πρέπει να είναι στο λογαργιασμό σας. Φτιάξτε ένα φάκελο assignment μέσα στο φάκελo Python2015. Θα εξεταστείτε κατά τη διάρκεια του τελευταίου εργαστηρίου του μαθήματος. Βαθμός και Προθεσμία Η εργασία μετράει επιπρόσθετα 10% επί του συνολικού βαθμού στο μάθημα (bonus). Η προθεσμία είναι η 16 η Δεκέμβρη 2014, στις 3 το μεσημέρι. Μετά την ημερομηνία αυτή καμία εργασία δεν θα γίνεται δεκτή. Η εργασία βαθμολογείται με βάση την ορθότητα και την πληρότητά της. Υπενθυμίζεται, ότι οι φοιτητές πρέπει να κάνουν την εργασία αυτόνομα και τυχόν αντιγραφή τιμωρείται αυστηρά. 5