e-ΜΑΘΗΜΑΤΑ |
Λύσεις ασκήσεων από θέματα Πανελλαδικών εξετάσεων |
ΠΡΟΓΡΑΜΜΑ HOTEL_AEPP !2009-Θ4 !Ξενοδοχειακή επιχείρηση διαθέτει 25 δωμάτια. !Τα δωμάτια αριθμούνται από το 1 μέχρι το 25. !Ο συνολικός αριθμός των υπαλλήλων που απασχολούνται ημερησίως !στο ξενοδοχείο εξαρτάται από τα κατειλημμένα δωμάτια και !δίνεται από τον παρακάτω πίνακα !Αριθμός κατειλημμένων δωματίων Συνολικός αριθμός υπαλλήλων ! από 0 μέχρι 4 3 ! από 5 μέχρι 8 4 ! από 9 μέχρι 12 5 ! πάνω από 12 6 !Η ημερήσια χρέωση για κάθε δωμάτιο είναι 75€ και το ημερομίσθιο !κάθε υπαλλήλου 45€. !Α. Να κατασκευάσετε κύριο πρόγραμμα το οποίο: !1. Να περιλαμβάνει τμήμα δηλώσεων. !2. Να διαβάζει σε πίνακα ΚΡΑΤ[25,7] την κατάσταση κάθε δωματίου !για κάθε μέρα της εβδομάδας, ελέγχοντας την ορθή καταχώριση. !Το πρόγραμμα να δέχεται μόνο τους χαρακτήρες «Κ» για κατειλημμένο, !«Δ» για διαθέσιμο αντίστοιχα. !3. Να υπολογίζει το συνολικό κέρδος ή τη συνολική ζημιά κατά τη !διάρκεια της εβδομάδας και να εμφανίζει κατάλληλο μήνυμα. Για το !σκοπό αυτό να καλεί το υποπρόγραμμα ΚΕΡΔΟΣ, που περιγράφεται !στο ερώτημα B. !B. Να αναπτύξετε το υποπρόγραμμα ΚΕΡΔΟΣ, το οποίο να !δέχεται τον πίνακα των κρατήσεων και έναν αριθμό ημέρας !(από 1 έως 7). Το υποπρόγραμμα να υπολογίζει και να επιστρέφει ! το κέρδος της συγκεκριμένης ημέρας. !Το κέρδος κάθε ημέρας προκύπτει από τα ημερήσια έσοδα ενοικιάσεων, !αν αφαιρεθούν τα ημερομίσθια των υπαλλήλων της συγκεκριμένης ημέρας. ! Αν τα έσοδα είναι μικρότερα από τα ημερομίσθια, το κέρδος !είναι αρνητικό (ζημιά). !Α. Να κατασκευάσετε κύριο πρόγραμμα το οποίο: !1. Να περιλαμβάνει τμήμα δηλώσεων. ΜΕΤΑΒΛΗΤΕΣ ΧΑΡΑΚΤΗΡΕΣ: ΚΡΑΤ[25, 7] ΑΚΕΡΑΙΕΣ: i, j ΠΡΑΓΜΑΤΙΚΕΣ: συνολικό_κέρδος ΑΡΧΗ !2. Να διαβάζει σε πίνακα ΚΡΑΤ[25,7] την κατάσταση κάθε δωματίου !για κάθε μέρα της εβδομάδας, ελέγχοντας την ορθή καταχώριση. !Το πρόγραμμα να δέχεται μόνο τους χαρακτήρες «Κ» για κατειλημμένο, !«Δ» για διαθέσιμο αντίστοιχα. ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 25 ΓΡΑΨΕ i, 'ο δωμάτιο' ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 7 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ 'Δώσε κατάσταση ', j, 'ης ημέρας' ΔΙΑΒΑΣΕ ΚΡΑΤ[i, j] ΑΝ ΟΧΙ (ΚΡΑΤ[i, j] = 'Κ' Η ΚΡΑΤ[i, j] = 'Δ') ΤΟΤΕ ΓΡΑΨΕ 'Μη αποδεκτή τιμή. (Κ/Δ)' ΤΕΛΟΣ_ΑΝ ΜΕΧΡΙΣ_ΟΤΟΥ ΚΡΑΤ[i, j] = 'Κ' Η ΚΡΑΤ[i, j] = 'Δ' ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ !3. Να υπολογίζει το συνολικό κέρδος ή τη συνολική ζημιά κατά τη !διάρκεια της εβδομάδας και να εμφανίζει κατάλληλο μήνυμα. Για το !σκοπό αυτό να καλεί το υποπρόγραμμα ΚΕΡΔΟΣ, που περιγράφεται !στο ερώτημα B. συνολικό_κέρδος <- 0.0 ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 7 συνολικό_κέρδος <- συνολικό_κέρδος + ΚΕΡΔΟΣ (ΚΡΑΤ, i) ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΑΝ συνολικό_κέρδος >= 0 ΤΟΤΕ ΓΡΑΨΕ 'Συνολικό κέρδος: ', συνολικό_κέρδος ΑΛΛΙΩΣ ΓΡΑΨΕ 'Συνολική ζημιά : ', συνολικό_κέρδος ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ! ********************************************************* ΣΥΝΑΡΤΗΣΗ ΚΕΡΔΟΣ (ΠΙΝΑΚΑΣ, ΑΡΙΘΜΟΣ): ΠΡΑΓΜΑΤΙΚΗ !B. Να αναπτύξετε το υποπρόγραμμα ΚΕΡΔΟΣ, το οποίο να !δέχεται τον πίνακα των κρατήσεων και έναν αριθμό ημέρας !(από 1 έως 7). Το υποπρόγραμμα να υπολογίζει και να επιστρέφει ! το κέρδος της συγκεκριμένης ημέρας. !Το κέρδος κάθε ημέρας προκύπτει από τα ημερήσια έσοδα ενοικιάσεων, !αν αφαιρεθούν τα ημερομίσθια των υπαλλήλων της συγκεκριμένης ημέρας. ! Αν τα έσοδα είναι μικρότερα από τα ημερομίσθια, το κέρδος !είναι αρνητικό (ζημιά). !Η ημερήσια χρέωση για κάθε δωμάτιο είναι 75€ και το ημερομίσθιο !κάθε υπαλλήλου 45€. ΜΕΤΑΒΛΗΤΕΣ ΧΑΡΑΚΤΗΡΕΣ: ΠΙΝΑΚΑΣ[25, 7] ΑΚΕΡΑΙΕΣ: ΑΡΙΘΜΟΣ ΠΡΑΓΜΑΤΙΚΕΣ: ΕΣΟΔΑ, ΕΞΟΔΑ ΑΚΕΡΑΙΕΣ: πλήθος_κρατήσεων, i, αριθμός_υπαλλήλων ΑΡΧΗ πλήθος_κρατήσεων <- 0 ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 25 ΑΝ ΠΙΝΑΚΑΣ[i, ΑΡΙΘΜΟΣ] = 'Κ' ΤΟΤΕ πλήθος_κρατήσεων <- πλήθος_κρατήσεων + 1 ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΕΣΟΔΑ <- πλήθος_κρατήσεων* 75 !Αριθμός κατειλημμένων δωματίων Συνολικός αριθμός υπαλλήλων ! από 0 μέχρι 4 3 ! από 5 μέχρι 8 4 ! από 9 μέχρι 12 5 ! πάνω από 12 6 ΑΝ πλήθος_κρατήσεων <= 4 ΤΟΤΕ αριθμός_υπαλλήλων <- 3 ΑΛΛΙΩΣ_ΑΝ πλήθος_κρατήσεων <= 8 ΤΟΤΕ αριθμός_υπαλλήλων <- 4 ΑΛΛΙΩΣ_ΑΝ πλήθος_κρατήσεων <= 12 ΤΟΤΕ αριθμός_υπαλλήλων <- 5 ΑΛΛΙΩΣ αριθμός_υπαλλήλων <- 6 ΤΕΛΟΣ_ΑΝ ΕΞΟΔΑ <- αριθμός_υπαλλήλων* 45 ΚΕΡΔΟΣ <- ΕΣΟΔΑ - ΕΞΟΔΑ ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ
|