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

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

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

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

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

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

ΠΡΟΣΟΜΟΙΩΣΗ ΠΑΝΕΛΛΑΔΙΚΩΝ ΕΞΕΤΑΣΕΩΝ Γʹ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΕΠΠ ΤΡΙΤΗ 18 ΑΠΡΙΛΙΟΥ 2017 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΠΤΑ (7)

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

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

53 Χρόνια ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Σ Α Β Β Α Ϊ Δ Η Μ Α Ν Ω Λ Α Ρ Α Κ Η

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

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

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

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

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

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

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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


ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ:- Γ ΛΥΚΕΙΟΥ ΤΜΗΜΑΤΑ: ΓΟ4 ΓΟ7 (ΖΩΓΡΑΦΟΥ) ΓΟ5 ΓΟ6 (ΧΟΛΑΡΓΟΣ) HM/NIA: 15/1/2017

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

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

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ: Γ2

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

Kεφάλαιο 11 Λίστες και Ανάλυση Δεδομένων Kεφάλαιο 12 Εργαλεία ανάλυσης πιθανοτήτων Kεφάλαιο 13 Ανάλυση δεδομένων...

1. Δεν μπορεί να γίνει κλήση μίας διαδικασίας μέσα από μία συνάρτηση.

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Δ ΕΣΠΕΡΙΝΩΝ

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

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ ΛΥΚΕΙΟΥ Θέματα και Απαντήσεις

1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω:

Λύσεις για τις ασκήσεις του lab5

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

φροντιστήρια Θέματα Ανάπτυξης Εφαρμογών σε Προγραμματιστικό Περιβάλλον Γ λυκείου Προσανατολισμός Σπουδών Οικονομίας και Πληροφορικής

σας φύλλο τον αριθμό της ερώτησης ακολουθούμενη από το γράμμα Σ (Σωστή) ή το γράμμα Λ (Λάθος).

Προπαρασκευή για Α.Ε.Ι. & Τ.Ε.Ι. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ)

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

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

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

Σειρά Προβλημάτων 4 Λύσεις

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

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

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

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

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

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

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

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές. Δρ. Γιώργος Λαμπρινίδης 23/10/2015 Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1

Προτεινόμενα Θέματα ΑΕΠΠ

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ

ΑΣΚΗΣΗ 5: ΠΙΝΑΚΕΣ. Σχήµα 1: H έννοια των πινάκων

Α4. Όσο επανάλαβε Τέλος_επανάληψης Εμφάνισε Για από μέχρι με_βήμα. Όσο επανάλαβε (Μονάδες 5) Α5. Α[10, 5] Π, Για από μέχρι (1) Για από μέχρι (2) Αν

8. Η δημιουργία του εκτελέσιμου προγράμματος γίνεται μόνο όταν το πηγαίο πρόγραμμα δεν περιέχει συντακτικά λάθη.

Ακρότατα πίνακα, χωρίς min, max, μόνο με pos

Καροτοκυνηγός. Αντικείμενα

Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών ΤΗΜΜΥ Α.Π.Θ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ.

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

Ινστιτούτο Επαγγελµατική Κατάρτιση Κορυδαλλού "ΤΕΧΝΙΚΟΣ ΣΥΣΤΗΜΑΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ" (Ερωτήσεις Πιστοποίησης στην γλώσσα προγραµµατισµού C)

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

Φάσμα προπαρασκευή για Α.Ε.Ι. & Τ.Ε.Ι.

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

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

Αυτόνομοι Πράκτορες. Εργασία εξαμήνου. Value Iteration και Q- Learning για Peg Solitaire

A. Να γράψετε τον αριθμό της κάθε μιας από τις παρακάτω προτάσεις και δίπλα. το γράμμα Σ, εάν είναι σωστή, ή το γράμμα Λ, εάν είναι λανθασμένη.

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

Α1. Στον προγραµµατισµό χρησιµοποιούνται δοµές δεδοµένων. 1. Τι είναι δυναµική δοµή δεδοµένων; Μονάδες 3 2. Τι είναι στατική δοµή δεδοµένων;

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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

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

Πως θα αποθηκεύσει τη λίστα με τα ψώνια του και θα την ανακτήσει στο Σ/Μ; και πως θα προσθέσει στη λίστα του επιπλέον προϊόντα;

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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

ΔΙΑΓΩΝΙΣΜΑ ΣΤΟ ΜΑΘΗΜΑ Α.Ε.Π.Π. ΟΝΟΜΑ

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

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

Συναρτήσεις Θεωρία Ορισμοί - Παρατηρήσεις

Α2. Να γράψετε στο τετράδιο απαντήσεών σας το κατάλληλο τμήμα κώδικα, κάνοντας τις απαραίτητες αλλαγές σύμφωνα με την εκάστοτε εκφώνηση:

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

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

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

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Α.1 Τι γνωρίζετε για τον διερμηνευτή, τον μεταγλωττιστή και ποιες οι διαφορές τους. 15 ΜΟΝΑΔΕΣ

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

Να σχεδιάσετε τον πίνακα Β[6] μετά την εκτέλεση των παρακάτω εντολών: Μονάδες 12. Α5. Δίδεται πίνακας ΠΙΝ[7] με τις παρακάτω τιμές:

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

Slalom Race Computer Game on Scratch

ΔΙΑΦΟΡΑ ΘΕΜΑΤΑ. Ως «γειτονικά» ορίζονται τα κελιά που συγγενεύουν οριζόντια, κάθετα και διαγώνια. Για παράδειγμα γειτονικά του Α[3,3] είναι τα:

Επαναληπτική δοκιμασία στην Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Απρίλης 2015

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

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

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

μεταβλητής Χ Χ ΑΛΗΘΗΣ Χ Χ 7 > 4 Χ ΨΕΥ ΗΣ Μονάδες 10

Ανακύκλωσε το Computer Game σε Scratch

Transcript:

ΠΝΠΙΣΤΗΜΙΟ ΘΣΣΛΙΣ ΣΧΟΛΗ ΘΤΙΚΩΝ ΠΙΣΤΗΜΩΝ ΤΜΗΜ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΠΤΥΞΗ ΚΙ ΣΧΔΙΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΡΓΣΤΗΡΙΟ 4.4: λφαριθμητικά, αρχεία, πίνακες, δομές, συναρτήσεις+ 2 Ιουνίου 2016 Η παρακάτω άσκηση αποτελεί μέρος των πιο προχωρημένων εργασιών του μαθήματος και μπορεί να παραδοθεί μέχρι το τέλος του εξαμήνου. ίναι κατά κάποιον τρόπο επαναληπτικό εργαστήριο, καλύπτοντας τόσο βασικά όσο και προχωρημένα θέματα του μαθήματος. Άσκηση: «Παιχνίδι λέξεων τύπου scrabble» Ξεκινήστε μια νέα εργασία και δημιουργήστε ένα αρχείο προγράμματος με όνομα ΟΝΟΜ_lab4_4.c, όπου αντί για ΟΝΟΜ θα βάλετε το ονοματεπώνυμό σας. Συνδέστε το αρχείο αυτό με την εργασία. Στην άσκηση αυτή καλείστε να γράψετε ένα πρόγραμμα παιχνιδιού, το οποίο μοιάζει τόσο με σταυρόλεξο όσο και με το γνωστό παιχνίδι scrabble. Ο χρήστης και ο υπολογιστής, ως αντίπαλοι, συμπληρώνουν ένα ταμπλό με λέξεις και συγκεντρώνουν βαθμούς ανάλογα με το μήκος της κάθε λέξης και της θέσης της στο ταμπλό. Το ταμπλό είναι τετράγωνος πίνακας χαρακτήρων μεγέθους nn, με κάθε κελί του να δέχεται ένα γράμμα της λέξης που τοποθετείται. Οι λέξεις επιλέγονται από κάποια λίστα λέξεων. ιδικότερα: Οι λέξεις τοποθετούνται οριζόντια από αριστερά προς τα δεξιά, ή κατακόρυφα από επάνω προς τα κάτω. Κάθε λέξη που τοποθετείται διαγράφεται από τη λίστα. Η πρώτη λέξη επιλέγεται στην τύχη και τοποθετείται έτσι ώστε να περνάει πάνω από το κεντρικό κελί του ταμπλό. Κάθε επόμενη λέξη τοποθετείται σε επαφή με ήδη υπάρχουσα λέξη, έτσι ώστε να έχει τουλάχιστον ένα γράμμα κοινό με τη λέξη, το οποίο είτε προϋπάρχει είτε προστίθεται με τη νέα λέξη. Μια νέα λέξη μπορεί να τέμνει περισσότερες από μία λέξεις σε κοινά γράμματα. Κάθε επαφή γραμμάτων πρέπει να σχηματίζει λέξη της λίστας. Ο χρήστης και ο υπολογιστής παίζουν εναλλάξ. Το παιχνίδι τελειώνει μόλις δε μπορεί να τοποθετηθεί άλλη λέξη στο ταμπλό. Η τοποθέτηση λέξεων αποφέρει βαθμούς στον κάθε παίχτη, ως εξής: Κάθε λέξη αποφέρει κατ αρχήν τόσους βαθμούς όσο είναι το μήκος της. Κάθε γράμμα που τοποθετείται σε ειδικά σημειωμένα κελιά μετράει διπλά. Οι βαθμοί μιας λέξης πολλαπλασιάζονται επί το πλήθος των λέξεων που τέμνονται από αυτή, τη στιγμή της τοποθέτησής της.

ν στην ίδια κίνηση προστεθούν δύο λέξεις, τότε λαμβάνονται βαθμοί και από τις δύο λέξεις. Για παράδειγμα, έστω ότι το ταμπλό είναι μεγέθους 1111: όπου με σκίαση παριστάνονται τα κελιά διπλής αξίας γράμματος. Έστω ότι η λίστα διαθέσιμων λέξεων είναι η: ΓΙΟΣ, Σ, ΣΦΛΗΣ, ΧΛΔΙ, ΔΗΜΟΣ, ΔΡΟΜΟΣ, ΖΩΗ, ΗΡ, ΘΜ, ΙΟΝ, ΙΣΙΟΣ, ΚΡΚΛ, ΚΡΣ, ΛΔΙ, ΜΗΛΟ, ΝΡΗ, ΟΝ, ΟΧΙ, ΠΙΔΙ, ΠΣΤΡΙΩΣΗ, ΠΤΟΣ, ΠΡΙΦΡΙ, ΠΟΔΟΣΦΙΡΟ, ΠΟΛΥΤΧΝΙΟ, ΡΗΜ, ΣΤΦΥΛΙ, ΤΙΝΙ, ΤΛΙΚΟΣ, ΤΡΠΖΙ, ΦΥΤΟ, ΧΩΝΙ, ΩΡ Υποθέστε ότι ο πρώτος παίχτης επιλέγει τη λέξη ΤΡΠΖΙ, η οποία πρέπει να περνάει από το κεντρικό κελί. Με το ένα γράμμα σε κελί διπλής αξίας, λέξη αυτή αποφέρει 8 βαθμούς. Ο δεύτερος παίχτης επιλέγει τη λέξη ΚΡΚΛ, την οποία τοποθετεί κάθετα στην προηγούμενη, με κοινό γράμμα το Ρ. Η λέξη αυτή αποφέρει 7 βαθμούς. Στη συνέχεια τοποθετούνται και οι λέξεις ΤΛΙΚΟΣ και ΦΥΤΟ, αξίας 8 και 4 βαθμών αντίστοιχα, με το ταμπλό να παίρνει την ακόλουθη μορφή: Φ Υ Τ Τ Λ Ι Κ Ο Σ Τ Ρ Π Ζ Ι Κ Λ Η τοποθέτηση της λέξης ΤΙΝΙ κάθετα στη λέξη ΦΥΤΟ δημιουργεί και τη λέξη Σ, οπότε λαμβάνονται 7 βαθμοί για την πρώτη και 4 βαθμοί για τη δεύτερη, εφόσον μετράει διπλά επειδή τέμνει δύο λέξεις, συνολικά 11 βαθμοί:

Φ Υ Τ Ι Ν Ι Τ Λ Ι Κ Ο Σ Τ Ρ Π Ζ Ι Κ Λ Μετά από αρκετές κινήσεις, το ταμπλό συμπληρώνεται και καταλήγει στη μορφή: Π Ο Δ Ο Σ Φ Ι Ρ Ο Ν Υ Χ Σ Τ Ι Ν Ι Τ Λ Ι Κ Ο Σ Ρ Τ Ρ Π Ζ Ι Ι Ο Ν Ω Π Ω Κ Ι Η Ρ Σ Χ Λ Δ Ι Τ Η Ρ Ι Ο Η Γ Ι Ο Σ Παρατηρήστε ότι έχουν μείνει αρκετές λέξεις από τη λίστα, οι οποίες δε μπόρεσαν να τοποθετηθούν. ν είχαν γίνει διαφορετικές επιλογές λέξεων, το ταμπλό θα κατέληγε σε διαφορετική τελική μορφή. Το πρόγραμμά σας θα πρέπει να παίζει ως ένας από τους δύο αντιπάλους, αναζητώντας και τοποθετώντας λέξεις στο ταμπλό όσο γίνεται αποτελεσματικότερα, να δέχεται και να ελέγχει τις κινήσεις του χρήστη δεύτερου παίχτη, και βέβαια να συμπληρώνει και να προβάλλει στην οθόνη την τρέχουσα μορφή του ταμπλό. Η λίστα λέξεων του παιχνιδιού θα πρέπει να διαβάζεται από κάποιο κατάλληλο αρχείο εισόδου, που δίνεται ως παράμετρος στο πρόγραμμά σας. Μια ιδέα υλοποίησης της λίστας λέξεων είναι ως πίνακας συμβολοσειρών: char * Lista_Lexewn[L_max]; όπου L_max κατάλληλη σταθερά που δηλώνεται με οδηγία define και περιέχει το μέγιστο επιτρεπτό πλήθος λέξεων, πχ 256. Ο πίνακας αυτός αρχικοποιείται σε NULL (ή ισοδύναμα σε (char*)0) για όλα τα στοιχεία του, και με κάθε λέξη που διαβάζεται από το αρχείο εισόδου σε κάποιον προσωρινό μονοδιάστατο πίνακα χαρακτήρων έστω temp, δημιουργείται αντίγραφο αυτής στον πίνακα, με τη βοήθεια της συνάρτησης βιβλιοθήκης strdup(), η οποία με όρισμα μια συμβολοσειρά, δημιουργεί και επιστρέφει ως αποτέλεσμα ένα αντίγραφό της: Lista_Lexewn[i] = strdup(temp);

για κατάλληλη τιμή μεταβλητής δείκτη i. Κάθε φορά που το παιχνίδι τοποθετεί μια από τις λέξεις του πίνακα στο ταμπλό, η λέξη διαγράφεται με τη βοήθεια των εντολών: free(lista_lexewn[i]); Lista_Lexewn[i] = NULL; και πάλι για κατάλληλη τιμή μεταβλητής δείκτη i. πό την άλλη πλευρά, επειδή το ταμπλό περιέχει γράμματα, αλλά και ειδικούς χαρακτήρες που υποδηλώνουν διπλή αξία γράμματος, μια ιδέα υλοποίησης του ταμπλό είναι ως ένας δισδιάστατος πίνακας από δομές, όπου κάθε δομή έχει δύο πεδία, ένα για το γράμμα που έχει τοποθετηθεί στο αντίστοιχο κελί, και ένα για το αν το κελί είναι διπλής αξίας γράμματος ή όχι. Σύμφωνα με τα παραπάνω, το πρόγραμμά σας θα πρέπει να υλοποιεί τα ακόλουθα βήματα: 1. Όρισε με οδηγία define ένα μέγιστο μέγεθος ταμπλό n_max. Δήλωσε τον τύπο δομής ενός κελιού έστω struct keli και το ταμπλό ως δισδιάστατο πίνακα τέτοιων δομών έστω. 2. Διάβασε από το πληκτρολόγιο την τιμή του n φροντίζοντας να είναι μέχρι n_max. Πρόσεξε ότι το n θα πρέπει να είναι περιττός αριθμός, ώστε να ορίζεται κεντρικό κελί στο ταμπλό. 3. ρχικοποίησε τα δύο πεδία των δομών όλων των κελιών του ταμπλό, με (κενό) και 0 αντίστοιχα. 4. Όρισε σκόρπια στο ταμπλό τα κελιά που υποδηλώνουν διπλή αξία γράμματος. υτά θα πρέπει να περιλαμβάνουν το κεντρικό κελί καθώς και τα κελιά στις τέσσερεις γωνίες του ταμπλό, ενώ τα υπόλοιπα όρισέ τα με τυχαίο τρόπο. Για τα κελιά διπλής αξίας γράμματος βάλε 1 στο αντίστοιχο πεδίο της δομής κελιού. Το πλήθος των κελιών αυτών θα πρέπει να είναι ίσο με n+2. 5. Άνοιξε το αρχείο εισόδου, τερματίζοντας το πρόγραμμα με κατάλληλο μήνυμα αν αυτό δεν ανοίξει σωστά. 6. Διάβασε από το αρχείο μία-μία τις λέξεις του παιχνιδιού, τοποθετώντας τες στον πίνακα Lista_Lexewn με τον τρόπο που περιγράφεται πιο πάνω. Σταμάτησε την ανάγνωση αν φτάσεις στην τελευταία θέση του πίνακα πριν φτάσεις στο τέλος του αρχείου. κτύπωσε κατάλληλο μήνυμα με την ολοκλήρωση της ανάγνωσης και συνέχισε. 7. κτύπωσε την αρχική μορφή του ταμπλό, καθώς και τις διαθέσιμες λέξεις του παιχνιδιού. 8. πανάλαβε: 8.1. Ζήτα από το χρήστη την επιλογή μιας λέξης, της θέσης και της κατεύθυνσης τοποθέτησής της στο ταμπλό. 8.2. Έλεγξε την ορθότητα επιλογής του χρήστη και επίστρεψε στο προηγούμενο βήμα σε περίπτωση λάθους. 8.3. Τοποθέτησε τη λέξη στο ταμπλό και εκτύπωσέ το. 8.4. Υπολόγισε τους βαθμούς που συγκεντρώνονται με την τοποθέτηση αυτή, πρόσθεσε τους βαθμούς στους βαθμούς του παίχτη, και εκτύπωσε στην οθόνη τους βαθμούς αυτούς. 8.5. φαίρεσε τη λέξη από τον πίνακα με τον τρόπο που περιγράφεται πιο πάνω. 8.6. Υλοποίησε την κίνηση του υπολογιστή: 8.6.1. ξέτασε κάθε μία από τις διαθέσιμες λέξεις, με φθίνουσα σειρά μήκους, ώστε να εξετάσεις πρώτα τις μεγαλύτερες λέξεις.

8.6.2. Βρες πιθανές θέσεις τοποθέτησης της λέξης, αν υπάρχουν, σύμφωνα με τους πιο πάνω κανόνες. 8.6.3. πίλεξε την τοποθέτηση που θα αποφέρει τη μεγαλύτερη συγκομιδή βαθμών. 8.6.4. Τοποθέτησε τη λέξη και αφαίρεσέ την από τον πίνακα των λέξεων. 8.6.5. κτύπωσε το ταμπλό, τη βαθμολογία και τις διαθέσιμες λέξεις. μέχρι να μη γίνεται νέα τοποθέτηση. 9. νάδειξε το νικητή και εκτύπωσε μήνυμα τερματισμού. Για τα παραπάνω βήματα θα πρέπει να υπάρχει η δυνατότητα δήλωσης αδυναμίας του χρήστη να βρει λέξη, με μετάβαση απ ευθείας από το βήμα 8.1 στο βήμα 8.6, καθώς και του υπολογιστή, με μετάβαση από το βήμα 8.6.2 στο βήμα 8.6.5. Φυσικά το δεύτερο δεν θα πρέπει να συμβαίνει αν γίνεται ολοκληρωμένος έλεγχος για όλες τις δυνατές τοποθετήσεις λέξεων στο ταμπλό! Για να τερματιστεί ο βρόχος, θα πρέπει να υπάρξει ταυτόχρονη αδυναμία του χρήστη και του υπολογιστή για εύρεση λέξης. Η εκτύπωση του ταμπλό γίνεται μόνο για τα πεδία χαρακτήρα των δομών των κελιών του ταμπλό. Βρείτε κάποιον τρόπο ώστε να δείχνετε τα κελιά διπλής αξίας γράμματος, για παράδειγμα με $ αν η θέση είναι κενή ή με μικρά έναντι κεφαλαίων αν η θέση είναι κατειλημμένη. Προσπαθήστε να υλοποιήσετε τον κώδικά σας με τη βοήθεια συναρτήσεων, ώστε ο κύριος βρόχος του παιχνιδιού να είναι ευανάγνωστος. Για παράδειγμα, μπορείτε να δημιουργήσετε μια συνάρτηση, η οποία να υλοποιεί τα βήματα 8.1 και 8.2, διαβάζοντας και ελέγχοντας την κίνηση του παίχτη, καθώς και μια συνάρτηση, η οποία να υλοποιεί την κίνηση του υπολογιστή. Μεταφράστε, επαληθεύστε, αποθηκεύστε και υποβάλετε το πρόγραμμά σας.