Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου Ιωάννης Γ. Τσούλος Εργασία Πρώτη - Αριθμομηχανή Με την χρήση του περιβάλλοντος AWT ή του SWING θα πρέπει να δημιουργηθεί αριθμομηχανή για την εκτέλεση πράξεων. Η μηχανή θα πρέπει να υποστηρίζει τα ακόλουθα: 1. Την εκτέλεση πράξεων ανάμεσα σε δεκαδικούς αριθμούς 2. Την εκτέλεση πράξεων ανάμεσα σε δυαδικούς αριθμούς 3. Χρήση μνήμης για ενδιάμεσα αποτελέσματα 4. Αποθήκευση των αποτελεσμάτων σε αρχείο 5. Ανάκληση αριθμών από αρχείο για εκτέλεση πράξεων Σελίδα 1/8
Εργασία Δεύτερη Διαχείριση πινάκων Θα πρέπει να δημιουργηθεί ένα οπτικό εργαλείο διαχείρισης μονοδιάστατων πινάκων σε AWT ή SWING το οποίο θα χρησιμοποιεί μια σειρά από μενού για την εκτέλεση πράξεων. Η εφαρμογή σας θα πρέπει να διαθέτει χώρο για τρεις πίνακες Χ, Υ και Ζ. Ο Ζ θεωρείται το αποτέλεσμα των πράξεων που πιθανόν να κάνει η εφαρμογή. Στα μενού θα υπάρχουν τουλάχιστον οι ακόλουθες λειτουργίες: 1. Φόρτωση πίνακα από αρχείο. Το αρχείο έχει την ακόλουθη δομή: Στην πρώτη γραμμή είναι το πλήθος των στοιχείων του πίνακα (πχ 5) και στην συνέχεια είναι σε κάθε γραμμή και από ένα στοιχείο του πίνακα. Θα πρέπει ο χρήστης να επιλέγει αν θα φορτωθεί ο πίνακας στο Χ ή στο Υ. 2. Αποθήκευση του πίνακα Ζ σε αρχείο. 3. Εισαγωγή στοιχείων πίνακα με το πληκτρολόγιο. Εμφανίζεται διάλογος όπου πρέπει να εισάγουμε το όνομα του πίνακα (Χ ή Υ), το μέγεθός του καθώς και τα στοιχεία του. 4. Πρόσθεση πινάκων: πρόσθεση Χ και Υ και αποτέλεσμα στον Ζ. Ο Ζ εμφανίζεται στο παράθυρο. 5. Αφαίρεση πινάκων: αφαίρεση Χ από Υ και αποτέλεσμα στον Ζ. Ο Ζ εμφανίζεται στο παράθυρο. 6. Ολίσθηση δεξιά του Ζ. Ολίσθηση κατά μια θέση τον πίνακα δεξιά και ο Ζ εμφανίζεται στο παράθυρο 7. Ολίσθηση αριστερά του Ζ. Ολίσθηση κατά μια θέση τον πίνακα αριστερά και ο Ζ εμφανίζεται στο παράθυρο 8. Αναποδογύρισμα πίνακα Ζ και εμφάνιση πίνακα στο παράθυρο. 9. Εμφάνιση βοήθειας Σελίδα 2/8
Εργασία Τρίτη - Λειτουργικό σύστημα Σε αυτό το πρόγραμμα μέσω μενού ή και με εντολές που μπορούν να δοθούν σε ένα παράθυρο προσομοιώνεται το κέλυφος εργασίας ενός λειτουργικού συστήματος. Στα μενού θα υπάρχουν οι ακόλουθες λειτουργίες: 1. FILE. Το μενού αυτό έχει τις ακόλουθες υποεπιλογές 1. Command. Με την εντολή αυτή εμφανίζεται ένα απλό πλαίσιο στο οποίο ο χρήστης εισάγει γραπτώς μια εντολή του συστήματος. 2. Display. Με την επιλογή αυτή ζητείται το όνομα ενός αρχείου το οποίο και εμφανίζεται στην οθόνη. 3. Delete. Με την επιλογή αυτή διαγράφεται το όνομα ενός αρχείου που ζητείται/ 4. Copy. Με την εντολή αυτή αντιγράφεται ένα αρχείο σε άλλο. 5. Rename. Με την εντολή αυτή μετονομάζεται ένα αρχείο. 6. Quit. Με την εντολή αυτή τερματίζεται το γραφικό κέλυφος. 2. DIR. Το μενού αυτό έχει τις ακόλουθες υποεπιλογές: 1. PWD. Εμφανίζει τον τρέχοντα φάκελο. 2. CD. Αλλάζει τον φάκελο εργασίας σε άλλον. 3. COPYDIR. Αντιγράφει έναν φάκελο σε άλλον. 4. REMOVEDIR. Διαγράφει έναν φάκελο από τον δίσκο. 3. HELP. Το μενού αυτό έχει τις ακόλουθες υποεπιλογές: 1. CONTENTS. Εμφανίζει πληροφορίες σχετικά με τις διαθέσιμες επιλογές. 2. ABOUT. Εμφανίζει το όνομα του συγγραφέα. Σελίδα 3/8
Εργασία Τέταρτη Διαγράμματα ροής Το πρόγραμμα αυτό μπορεί να χρησιμοποιηθεί για διδακτικούς σκοπούς και με αυτό ο χρήστης μπορεί να φτιάξει διαγράμματα ροής χρησιμοποιώντας τα βασικά στοιχεία των διαγραμμάτων ροής όπως φαίνονται στο επόμενο σχήμα: Στο πρόγραμμα θα πρέπει να ένα menu με τις ακόλουθες επιλογές: 1. File. Το menu αυτό διαθέτει τις ακόλουθες υποεπιλογές 1. New. Δημιουργεί ένα νέο διάγραμμα ροής. 2. Open. Φορτώνει ένα διάγραμμα ροής από το αρχείο. 3. Save. Αποθηκεύει το τρέχον διάγραμμα ροής σε ένα αρχείο. 4. Exit. Τερματίζει το πρόγραμμα. 2. Shape. Το menu αυτό διαθέτει τις ακόλουθες υποεπιλογές 1. Start. Εισάγει ένα νέο σχήμα έναρξης στο σημείο που θα κάνει κλικ ο χρήστης. 2. End. Εισάγει ένα νέο σχήμα τερματισμού στο σημείο που θα κάνει κλικ ο χρήστης. 3. Input variable. Εισάγει ένα πλαίσιο εισαγωγής μεταβλητής στο σημείο που θα κάνει κλικ ο χρήστης. 4. Output variable. Εισάγει ένα νέο πλαίσιο εμφάνισης μεταβλητής στο σημείο που θα κάνει κλικ ο χρήστης. 5. Assign. Εισάγει ένα πεδίο για απλή ανάθεση τιμών στο σημείο που θα κάνει κλικ ο χρήστης. 6. Condition. Εισάγει ένα πλαίσιο συνθήκης στο σημείο που θα κάνει κλικ ο χρήστης. 3. Edit. Το menu αυτό διαθέτει τις ακόλουθες υποεπιλογές 1. Undo. Ακυρώνει την τελευταία ενέργεια. 2. Connect. Κάνετε κλικ σε δύο διαδοχικά αντικείμενα και αυτά συνδέονται 4. Help. 1. Contents. Εμφάνιση βοήθειας 2. About. Εμφάνιση των ονομάτων των προγραμματιστών. Σελίδα 4/8
Εργασία Πέμπτη Γραφικές παραστάσεις Το πρόγραμμα αυτό είναι ένα ανάλογο του gnuplot αλλά θα είναι περιορισμένο μόνον για διδιάστατα δεδομένα. Ο χρήστης πρέπει να μπορεί να δώσει τα δεδομένα που θέλει να εμφανίσει με γραφικό τρόπο φορτώνοντας αρχεία στηλών από αρχείο. Το πρόγραμμα θα πρέπει να έχει ένα κεντρικό menu με τις ακόλουθες επιλογές: 1. File. Το menu αυτό διαθέτει τις ακόλουθες υποεπιλογές 1. New. Δημιουργεί ένα νέο γράφημα. 2. Open. Ανοίγει ένα νέο αρχείο κειμένου ή OpenOffice. 3. Export. Εξάγει το γράφημα σε μορφή eps, png. 4. Quit. Τερματίζει το πρόγραμμα. 2. Plot. Το menu αυτό διαθέτει τις ακόλουθες υποεπιλογές 1. Lines. Εμφανίζει το γράφημα με την μορφή γραμμών. 2. Points. Εμφανίζει το γράφημα με την μορφή σημείων. 3. Cross. Εμφανίζει το γράφημα με την μορφή σταυρών. 4. Bars. Εμφανίζει το γράφημα με την μορφή κατακόρυφων μπαρών. 3. Help. Το menu αυτό διαθέτει τις ακόλουθες υποεπιλογές 1. Contents. Εμφανίζει πληροφορίες σχετικά με τις επιλογές του προγράμματος. 2. About. Εμφανίζει στοιχεία σχετικά με τον προγραμματιστή της εφαρμογής. Σελίδα 5/8
Εργασία Έκτη - Κρεμάλα Σε ένα αρχείο κειμένου υπάρχουν λέξεις οργανωμένες σε κατηγορίες, πχ Γεωγραφία Ιωάννινα. Με την εκκίνηση ο παίκτης δίνει τον επιθυμητό κωδικό του για να παίξει. Αν ο κωδικός δεν υπάρχει ήδη σε ένα αρχείο παικτών αποθηκεύεται εκεί. Ο παίκτης διαλέγει την επιθυμητή κατηγορία και ξεκινά το παιχνίδι επιλέγοντας μια τυχαία λέξη από την συγκεκριμένη κατηγορία. Ο παίκτης μπορεί να παρακάμψει μια λέξη αν δεν την ξέρει και να διαλέξει άλλη. Για κάθε λέξη που κερδίζει παίρνει και από ένα πόντο. Σε διαφορετικό αρχείο αποθηκεύεται ο κωδικός του παίκτη και οι συνολικοί πόντοι. Η εφαρμογή θα πρέπει να εμφανίσει από επιλογή σε μενού 1. Βοήθεια για το παιχνίδι 2. Το όνομα των προγραμματιστών του παιχνιδιού 3. Τους πρώτους σε πόντους παίκτες μέχρι στιγμής Σελίδα 6/8
Εργασία Έβδομη Sudoku Με την εκκίνηση ο παίκτης δίνει τον επιθυμητό κωδικό του για να παίξει. Αν ο κωδικός δεν υπάρχει ήδη σε ένα αρχείο παικτών αποθηκεύεται εκεί. Αμέσως μετά το πρόγραμμα εμφανίζει στον χρήστη μια προτροπή να διαλέξει είτε 3χ3 είτε 4χ4 παιχνίδι. Δημιουργείται ένας αντίστοιχος πίνακας στην οθόνη και ο χρήστης συμπληρώνει τους αριθμούς που θέλει. Αν κάνει λάθος εμφανίζεται ένα σχετικό μήνυμα. Ο χρήστης πρέπει να μπορεί να παρακάμψει ένα σουντόκου και να παίξει άλλο τυχαίο. Στο τέλος θα πρέπει να αποθηκεύεται σε αρχείο ο κωδικός του παίκτη και ο χρόνος σε δευτερόλεπτα που του πήρε για να τελειώσει. Η εφαρμογή θα πρέπει να εμφανίσει από επιλογή σε μενού 4. Βοήθεια για το παιχνίδι 5. Το όνομα των προγραμματιστών του παιχνιδιού 6. Τους πρώτους σε πόντους παίκτες μέχρι στιγμής. Για να υπολογιστεί αυτό βρίσκουμε μέσους όρους από τους χρόνους και καλύτερος είναι αυτός που έχει κάνει τον μικρότερο χρόνο. Σελίδα 7/8
Εργασία Όγδοη Ηλεκτρονική ατζέντα Η εφαρμογή θα πρέπει να έχει τα ακόλουθα μενού: 1. Επαφές με τις υποεπιλογές: 1. Νέα. Δημιουργία επαφής. Κάθε επαφή θα έχει: όνομα, επίθετο, τηλέφωνο. 2. Φόρτωση. Ανάγνωση αρχείου με επαφές. Οι επαφές αποθηκεύονται σε σχετικό πίνακα. 3. Αποθήκευση. Οι επαφές από τον πίνακα επαφών μπαίνουν σε αρχείο. 4. Διαγραφή. Διαγραφή επαφής με κάποια κριτήρια. 5. Ενημέρωση. Ενημέρωση επαφής με κάποια κριτήρια. 2. Ραντεβού με τις υποεπιλογές 1. Νέο. Δημιουργία νέου ραντεβού. Κάθε ραντεβού έχει μια ημερομηνία (κείμενο) και ένα κείμενο που το συνοδεύει. 2. Φόρτωση. Ανάγνωση αρχείου με ραντεβού. Αποθηκεύονται σε σχετικό πίνακα. 3. Αποθήκευση. Αποθήκευση του πίνακα με τα ραντεβού σε αρχείο. 4. Ακύρωση. Διαγραφή ραντεβού από τον πίνακα. 3. Βοήθεια με τις υποεπιλογές: 1. Βοήθεια. Ενημέρωση σχετικά με τις επιλογές τις εφαρμογής. 2. Σχετικά. Εμφάνιση των ονομάτων των προγραμματιστών της εφαρμογής. Σελίδα 8/8