3
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Ελληνικό Ανοικτό Πανεπιστήμιο - Παπαφλέσσα & Υψηλάντη 262 22 ΠΑΤΡΑ Θ.Ε. ΠΛΣ50 (2012-13) – ΓΡΑΠΤΗ ΕΡΓΑΣΙΑ Ε1 Ημερομηνία ανάρτησης 06.10.2012 Ημερομηνία αποστολής 28.10.2012 (δεκτή μέχρι την Τρίτη 30.10.2012, ώρα 23:59) Ανακοίνωση ενδεικτικής επίλυσης 31.10.2012 Θεματολογία-στόχος Στην εργασία αυτή θα εξασκηθείτε σε μερικές από τις απαραίτητες γνώσεις της C που θα χρησιμοποιήσουμε, καθόλη τη χρονιά, σε πολλές από τις εργασίες της ΘΕ. Ειδικότερα, θα ασχοληθείτε με τη δημιουργία μενού, είσοδο από πληκτρολόγιο και έξοδο σε οθόνη, εγγραφή αρχείου, βασικές ροές ελέγχου, βασικές επαναληπτικές δομές, κ.ά. Παρατηρήσεις Περιμένουμε όλες οι εργασίες να ανεβούν στο moodle όπως σας έχει υποδείξει ο σύμβουλος καθηγητής του τμήματός σας και να είναι γραμμένες σε επεξεργαστή κειμένου σε μορφή doc ή odt (αρχεία pdf γίνονται δεκτά μόνο όταν συνοδεύονται από το αντίστοιχο doc/odt.), όπου θα συμπεριλάβετε τυχόν επεξηγήσεις για τον τρόπο που λύσατε την εργασία. Ο πηγαίος κώδικας C (ένα πρόγραμμα C για κάθε θέμα) που θα περιέχεται στην εργασία θα πρέπει να βρίσκεται και σε ξεχωριστά αρχεία (*.c) (ένα αρχείο .c για κάθε θέμα). Μην συμπεριλαμβάνετε εκτελέσιμα (.exe) ή αρχεία object code (.o). Στο moodle, σε κάθε περίπτωση, ανεβάζετε ένα μόνο συμπιεσμένο αρχείο που θα περιέχει όλα τα επιμέρους αρχεία. Εισαγωγή Ο πηγαίος κώδικας του προγράμματός σας θα πρέπει να είναι επαρκώς σχολιασμένος και επιπλέον ANSI-συμβατός (δεν γίνονται δεκτές απαντήσεις που κάνουν χρήση συναρτήσεων από επεκτάσεις της C). ∆ε χρειάζεται να κάνετε τίποτε περισσότερο από όσα σας ζητούνται. Συνιστάται, πριν ασχοληθείτε με τη συγκεκριμένη εργασία, να μελετήσετε σχολαστικά τις λύσεις εργασιών προηγούμενων ετών. Στο τέλος της Εργασίας περιλαμβάνεται ενδεικτικός πίνακας με τα βασικά γνωστικά αντικείμενα της γλώσσας C που πρέπει να έχετε διαβάσει για να μπορείτε να επεξεργαστείτε κάθε θέμα. Τονίζεται ότι ο πίνακας έχει σκοπό να σας βοηθήσει και όχι να σας υποχρεώσει στον ακριβή τρόπο υλοποίησης κάθε θέματος. Θέμα 1: Μέτρηση εμφάνισης ακολουθίας γραμμάτων Να γράψετε πρόγραμμα C που θα διαβάζει χαρακτήρες, που εισάγει ο χρήστης από το πληκτρολόγιο, μέχρι να συναντήσει το χαρακτήρα #. 1) Το πρόγραμμα θα ζητά από το χρήστη να πληκτρολογήσει χαρακτήρες και να πατήσει στο τέλος το πλήκτρο Enter. 2) O χρήστης θα πληκτρολογεί μια σειρά χαρακτήρων (υποχρεωτικά και τον χαρακτήρα #, σε κάποιο σημείο της εισόδου) και θα πατά το πλήκτρο Enter. 3) Το πρόγραμμα θα ελέγχει τους χαρακτήρες εισόδου, μέχρι να συναντήσει τον #. 4) Το πρόγραμμα θα μετρά πόσες φορές συνάντησε την ακολουθία "ow". 5) Το πρόγραμμα θα εμφανίζει το αποτέλεσμα της μέτρησης στην οθόνη. Για παράδειγμα, στην είσοδο “Wow! Behind my Window I can see Moscow.#” το πρόγραμμα θα εμφανίζει το μήνυμα Number of “ow”: 3.

pls50-2012-e01

Embed Size (px)

DESCRIPTION

pls50-2012-e01

Citation preview

  • - & 262 22

    .. 50 (2012-13) 1

    06.10.2012

    28.10.2012 ( 30.10.2012, 23:59)

    31.10.2012

    - C , , . , , , , , , ..

    moodle doc odt ( pdf doc/odt.), . C ( C ) (*.c) ( .c ). (.exe) object code (.o). moodle, , .

    ANSI- ( C). . , , . C . .

    1: C , , #.

    1) Enter.

    2) O ( #, ) Enter.

    3) , #.

    4) "ow".

    5) .

    ,

    Wow! Behind my Window I can see Moscow.#

    Number of ow: 3.

  • - & 262 22

    2: Tmob :

    : 12 : 0.02 / ( ) SMS: 0.14 /

    23%.

    C :

    1) , .

    2) .

    3) , .

    :

    mob account

    ---------------------------------------------------------------------------------------------------------------

    Customer code time SMS FPA | TOTAL 4689 364 125 21.41 | 128.47 5689 1254 89 23.22 | 139.22 1275 896 256 45.05 | 270.34

    3: C , . , 123 321. , , , . , .

    4: () C string_in, . . , (index) () , -1. :

    1. string_in(This is not America, is) 2, is This 2 ( ).

    2. string_in(This is not America, this is not Earth, Europe) -1

    , . . , . , string_in . , . .

  • - & 262 22

    5: - C . . odds.txt evens.txt, .

    1

    2

    3

    4

    5

    x x x x x x x x x x, x x x x x x x x

    x x x x x x x

    1: 10

    2: 15

    3: 15

    4: () 25

    5: - 25

    - 10

    100

    10, .

    !!!