Η τριακοστή επαναληπτική άσκηση για το μάθημα της Πληροφορικής
(πρώην ΑΕΠΠ) αποτελεί την πέμπτη και τελευταία πρόταση για
τις Πανελλαδικές Εξετάσεις. Είναι μία άσκηση που θα μπορούσε να αποτελέσει θέμα Δ στις Πανελλαδικές Εξετάσεις.
30η Επαναληπτική Άσκηση
Τίτλος: Πρόγραμμα Απόλλων
Κατηγορία: Υποψήφιο θέμα Πανελλαδικών
Το πρόγραμμα Απόλλων ήταν ένα διαστημικό πρόγραμμα της ΝΑΣΑ που στόχο είχε την επανδρωμένη εξερεύνηση της Σελήνης. Το πρόγραμμα είχε χρονική διάρκεια έντεκα χρόνια (1961-1972) και περιελάμβανε δοκιμαστικές πτήσεις, επανδρωμένες και μη επανδρωμένες αποστολές. Ο στόχος του προγράμματος εκπληρώθηκε όταν οι αστροναύτες Νηλ Άρμστρονγκ και Έντουιν Μπαζ Όλντριν, μέλη του Απόλλων 11, προσσελήνωσαν την σεληνάκατο τους στις 20 Ιουλίου 1969 και έγιναν οι πρώτοι άνθρωποι στην ιστορία που περπάτησαν στην επιφάνεια της Σελήνης.
Να γραφεί πρόγραμμα το οποίο:
α) Για κάθε επανδρωμένη αποστολή (συνολικά έντεκα), θα διαβάζει το όνομα της, τη διάρκεια της σε ημέρες, ώρες και λεπτά και το έτος εκτόξευσης. Επίσης, για κάθε μέλος του τριμελούς πληρώματος, θα διαβάζει το όνομα του, την ηλικία του και αν πάτησε το πόδι του στη Σελήνη (στην εισαγωγή των δεδομένων πρώτα θα διαβάζονται τα στοιχεία της πρώτης αποστολής, στη συνέχεια τα στοιχεία της δεύτερης αποστολής κ.ο.κ.),
β) Θα εμφανίζει το όνομα του νεώτερου αστροναύτη και τα στοιχεία της αποστολής στην οποία πήρε μέρος (θεωρείστε ότι ο αστροναύτης αυτός ήταν μοναδικός),
γ) Θα εμφανίζει την αποστολή με τη μεγαλύτερη χρονική διάρκεια σε ημέρες, ώρες και λεπτά (θεωρείστε ότι μία είναι η αποστολή με τη μεγαλύτερη χρονική διάρκεια),
δ) Θα εμφανίζει το πλήθος των αποστολών στις οποίες υπήρχε ένας τουλάχιστον αστροναύτης που πάτησε το πόδι του στη Σελήνη και
ε) Θα εμφανίζει τα ονόματα όλων των αστροναυτών που πάτησαν το πόδι τους στη Σελήνη (θεωρείστε ότι δώδεκα ήταν οι αστροναύτες που πάτησαν το πόδι τους στη Σελήνη). Οι αστροναύτες να εμφανίζονται ταξινομημένοι με βάση το πότε πάτησαν το πόδι τους στη Σελήνη (δηλαδή οι αστροναύτες που πάτησαν νωρίτερα το πόδι τους στη Σελήνη να εμφανίζονται νωρίτερα και στη λίστα). Οι αστροναύτες που πάτησαν ταυτόχρονα το πόδι τους στη Σελήνη να εμφανίζονται ταξινομημένοι αλφαβητικά.
Λύση 30ης επαναληπτικής άσκησης
ΠΡΟΓΡΑΜΜΑ Πρόγραμμα_Απόλλων
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: Ι, Ξ, ΔΙΑΡΚΕΙΑ[11, 3], ΕΤΟΣ[11], ΗΛΙΚΙΑ[11, 3], ΕΤΗ[12], Κ, ΤΕΜΠ
ΑΚΕΡΑΙΕΣ: ΑΣΤΡΟΝ, ΜΙΚΡ_ΗΛ, ΑΠΟΣΤΟΛΗ, ΠΛ_ΑΠΟΣΤ, ΠΑΤΗΣΑΝ, Μ_ΧΡΟΝΟΣ, Σ_ΧΡΟΝΟΣ
ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[11], ΟΝ_ΑΣΤΡΟΝ[11, 3], ΠΑΤΗΣΕ[11, 3], ΑΣΤΡΟΝΑΥΤΕΣ[12], ΤΕΜΠ_2
ΑΡΧΗ
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 11
ΓΡΑΨΕ 'Ποιο ήταν το όνομα της αποστολής; '
ΔΙΑΒΑΣΕ ΟΝ[Ι]
ΓΡΑΨΕ 'Δώσε διάρκεια σε ημέρες, ώρες και λεπτά: '
ΔΙΑΒΑΣΕ ΔΙΑΡΚΕΙΑ[Ι, 1]
ΔΙΑΒΑΣΕ ΔΙΑΡΚΕΙΑ[Ι, 2]
ΔΙΑΒΑΣΕ ΔΙΑΡΚΕΙΑ[Ι, 3]
ΓΡΑΨΕ 'Ποιο ήταν το έτος εκτόξευσης; '
ΔΙΑΒΑΣΕ ΕΤΟΣ[Ι]
ΓΙΑ Ξ ΑΠΟ 1 ΜΕΧΡΙ 3
ΓΡΑΨΕ Ξ, 'ος αστροναύτης. '
ΓΡΑΨΕ 'Ποιο ήταν το όνομα του; '
ΔΙΑΒΑΣΕ ΟΝ_ΑΣΤΡΟΝ[Ι, Ξ]
ΓΡΑΨΕ 'Ποια ήτανη ηλικία του; '
ΔΙΑΒΑΣΕ ΗΛΙΚΙΑ[Ι, Ξ]
ΓΡΑΨΕ 'Πάτησε το πόδι του στη σελήνη; '
ΔΙΑΒΑΣΕ ΠΑΤΗΣΕ[Ι, Ξ]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΜΙΚΡ_ΗΛ <- ΗΛΙΚΙΑ[1, 1]
ΑΠΟΣΤΟΛΗ <- 1
ΑΣΤΡΟΝ <- 1
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 11
ΓΙΑ Ξ ΑΠΟ 1 ΜΕΧΡΙ 3
ΑΝ ΗΛΙΚΙΑ[Ι, Ξ] < ΜΙΚΡ_ΗΛ ΤΟΤΕ
ΜΙΚΡ_ΗΛ <- ΗΛΙΚΙΑ[Ι, Ξ]
ΑΠΟΣΤΟΛΗ <- Ι
ΑΣΤΡΟΝ <- Ξ
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Νεότερος αστροναύτης: ', ΟΝ_ΑΣΤΡΟΝ[ΑΠΟΣΤΟΛΗ, ΑΣΤΡΟΝ]
ΓΡΑΨΕ 'Στοιχεία αποστολής'
ΓΡΑΨΕ ΟΝ[ΑΠΟΣΤΟΛΗ]
ΓΡΑΨΕ 'Διάρκεια: ', ΔΙΑΡΚΕΙΑ[ΑΠΟΣΤΟΛΗ, 1], ' ημέρες, '
ΓΡΑΨΕ ΔΙΑΡΚΕΙΑ[ΑΠΟΣΤΟΛΗ, 2], ' ώρες και '
ΓΡΑΨΕ ΔΙΑΡΚΕΙΑ[ΑΠΟΣΤΟΛΗ, 3], ' λεπτά. '
ΓΡΑΨΕ 'Έτος εκτόξευσης: ', ΕΤΟΣ[ΑΠΟΣΤΟΛΗ]
Μ_ΧΡΟΝΟΣ <- 0
ΑΠΟΣΤΟΛΗ <- 0
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 11
Σ_ΧΡΟΝΟΣ <- ΔΙΑΡΚΕΙΑ[Ι, 1]* 1440 + ΔΙΑΡΚΕΙΑ[Ι, 2]* 60 + ΔΙΑΡΚΕΙΑ[Ι, 3]
ΑΝ Μ_ΧΡΟΝΟΣ < Σ_ΧΡΟΝΟΣ ΤΟΤΕ
Μ_ΧΡΟΝΟΣ <- Σ_ΧΡΟΝΟΣ
ΑΠΟΣΤΟΛΗ <- Ι
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Η αποστολή ', ΟΝ[ΑΠΟΣΤΟΛΗ], ' είχε τη μεγαλύτερη χρονική διάρκεια.'
ΓΡΑΨΕ 'Ημέρες: ', ΔΙΑΡΚΕΙΑ[ΑΠΟΣΤΟΛΗ, 1]
ΓΡΑΨΕ 'Ώρες: ', ΔΙΑΡΚΕΙΑ[ΑΠΟΣΤΟΛΗ, 2]
ΓΡΑΨΕ 'Λεπτά: ', ΔΙΑΡΚΕΙΑ[ΑΠΟΣΤΟΛΗ, 3]
ΠΛ_ΑΠΟΣΤ <- 0
Κ <- 1
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 11
ΠΑΤΗΣΑΝ <- 0
ΓΙΑ Ξ ΑΠΟ 1 ΜΕΧΡΙ 3
ΑΝ ΠΑΤΗΣΕ[Ι, Ξ] = 'ΝΑΙ' ΤΟΤΕ
ΠΑΤΗΣΑΝ <- ΠΑΤΗΣΑΝ + 1
ΑΣΤΡΟΝΑΥΤΕΣ[Κ] <- ΟΝ_ΑΣΤΡΟΝ[Ι, Ξ]
ΕΤΗ[Κ] <- ΕΤΟΣ[Ι]
Κ <- Κ + 1
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΑΝ ΠΑΤΗΣΑΝ > 0 ΤΟΤΕ
ΠΛ_ΑΠΟΣΤ <- ΠΛ_ΑΠΟΣΤ + 1
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Αστροναύτες πάτησαν στη Σελήνη σε ', ΠΛ_ΑΠΟΣΤ, ' αποστολές.'
ΓΙΑ Ι ΑΠΟ 2 ΜΕΧΡΙ 12
ΓΙΑ Ξ ΑΠΟ 12 ΜΕΧΡΙ Ι ΜΕ_ΒΗΜΑ -1
ΑΝ ΕΤΗ[Ξ] < ΕΤΗ[Ξ - 1] ΤΟΤΕ
ΤΕΜΠ <- ΕΤΗ[Ξ]
ΕΤΗ[Ξ] <- ΕΤΗ[Ξ - 1]
ΕΤΗ[Ξ - 1] <- ΤΕΜΠ
ΤΕΜΠ_2 <- ΑΣΤΡΟΝΑΥΤΕΣ[Ξ]
ΑΣΤΡΟΝΑΥΤΕΣ[Ξ] <- ΑΣΤΡΟΝΑΥΤΕΣ[Ξ - 1]
ΑΣΤΡΟΝΑΥΤΕΣ[Ξ - 1] <- ΤΕΜΠ_2
ΑΛΛΙΩΣ_ΑΝ ΕΤΗ[Ξ] = ΕΤΗ[Ξ - 1] ΤΟΤΕ
ΑΝ ΑΣΤΡΟΝΑΥΤΕΣ[Ξ] < ΑΣΤΡΟΝΑΥΤΕΣ[Ξ - 1] ΤΟΤΕ
ΤΕΜΠ_2 <- ΑΣΤΡΟΝΑΥΤΕΣ[Ξ]
ΑΣΤΡΟΝΑΥΤΕΣ[Ξ] <- ΑΣΤΡΟΝΑΥΤΕΣ[Ξ - 1]
ΑΣΤΡΟΝΑΥΤΕΣ[Ξ - 1] <- ΤΕΜΠ_2
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Αστροναύτες που πάτησαν στο φεγγάρι'
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 12
ΓΡΑΨΕ ΕΤΗ[Ι], ' - ', ΑΣΤΡΟΝΑΥΤΕΣ[Ι]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Πρόγραμμα_Απόλλων
Όλες τις επαναληπτικές ασκήσεις για το μάθημα της Πληροφορικής (πρώην ΑΕΠΠ) μπορείτε να τις βρείτε στο παρακάτω άρθρο:
Αγαπητέ συνάδελφε,
ΑπάντησηΔιαγραφήΣτο τελευταίο ερώτημα, το 12 προκύπτει από που;
Μήπως είναι κ-1;
Εκτός αν έχω καταλάβει κάτι λάθος.
Σε ευχαριστούμε πάντως που μοιράζεσαι το υλικό σου.
Να ξέρεις ότι το χρησιμοποιώ, αναφέροντας πάντα το όνομά σου.
Γιώργος Παυλάκος
Γιώργο, γίνεται αναφορά του αριθμού 12 στην εκφώνηση. Το έκανα για να υπάρχει ένας βαθμός δυσκολίας μικρότερος.
ΔιαγραφήΑυτό που λες (κ-1) είναι σωστό πάντως. Είναι η λύση που θα ανεβάσω σε λίγο για τα θέματα προσομοίωσης (εκεί δε γίνεται αναφορά στον αριθμό 12).