ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ 1Ο Α1. Να χαρακτηρίσετε τις παρακάτω προτάσεις σαν Σωστό ή Λάθος. 1. Ο υπολογιστής είναι ο ταχύτερος μηχανισμός επεξεργασίας δεδομένων. 2. Οι εντολές που βρίσκονται σε μια δομή επανάληψης ΟΣΟ θα εκτελεστούν οπωσδήποτε μία φορά. 3. Σε έναν πίνακα μπορούμε να αποθηκεύσουμε μόνο ακέραιους ή παραγματικούς αριθμούς. 4. Η ανίχνευση των συντακτικών λαθών γίνεται σε ένα προγραμματιστικό περιβάλλον με τη βοήθεια του συμβολομεταφραστή. 5. Η χρήση πινάκων αυξάνει τη μνήμη που απαιτείται για την εκτέλεση ενός προγράμματος. ΜΟΝΑΔΕΣ 5 Α2 α) Τι ονομάζουμε παράμετρο; β)ποιες είναι οι διαφορές μεταξύ μεταγλωττιστή και διερμηνευτή. γ)τι είναι δομημένος προγραμματισμός ΜΟΝΑΔΕΣ 11 Α3.Δίνεται το παρακάτω τμήμα προγράμματος: Σ 0 Π 0 Κ 0 ΔΙΑΒΑΣΕ Β ΟΣΟ Β>0 ΚΑΙ Β<=20 ΕΠΑΝΑΛΑΒΕ ΔΙΑΒΑΣΕ Ο Σ Σ+Β Π Π+1 ΑΝ Β>= 10 ΤΟΤΕ Κ Κ+1 ΤΕΛΟΣ_ΑΝ ΔΙΑΒΑΣΕ Β ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΑΝ Π<>0 ΤΟΤΕ Λ Σ/Π ΤΕΛΟΣ_ΑΝ ΓΡΑΨΕ Λ
ΓΡΑΨΕ Κ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Να ξαναγράψετε το παραπάνω πρόγραμμα μετατρέποντας τη δομή επανάληψη ΟΣΟ στη δομή επανάληψη ΜΕΧΡΙΣ_ΟΤΟΥ. Μπορείτε να κάνετε τη μετατροπή και στη δομή επανάληψη ΓΙΑ; Να αιτιολογήσετε την απάντησή σας. ΜΟΝΑΔΕΣ 4 Α4 Να αναπαραστήσετε το παραπάνω προγράμματα (ΟΣΟ) με διάγραμμα ροής. ΜΟΝΑΔΕΣ 4 Α5. Εύρεση λαθών 1. Το παρακάτω τμήμα αλγορίθμου έχει σκοπό να δημιουργήσει τον ακόλουθο πίνακα Α: 4 3 2 1 0 Για ι από 4 μέχρι 0 με_βήμα -1 Α[4-ι] ι Τέλος_επανάληψης 2. Το παρακάτω τμήμα αλγορίθμου έχει σκοπό να δημιουργήσει τον ακόλουθο πίνακα Α: 2 3 4 5 6 Για ι από 2 μέχρι 6 Α[ι] ι Τέλος_επανάληψης Υπάρχει κάποιο λάθος; Αν, ναι να προτείνετε τον σωστό κώδικα. ΜΟΝΑΔΕΣ 7 Α6.Να γράψετε τμήμα αλγορίθμου που δημιουργούν τον επόμενο πίνακα. 5 1 5 1 1 5 1 5 5 1 5 1 1 5 1 5 ΜΟΝΑΔΕΣ 9
ΘΕΜΑ 2Ο Β1. Τι εμφανίζει το παρακάτω τμήμα προγράμματος: ΠΡΟΓΡΑΜΜΑ ΑΣΚΗΣΗ ΑΚΕΡΑΙΕΣ: Ι,Α,Λ ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5 Λ Ι MOD 2 A 3* ΑΥΞ(Λ)+Ι ΚΑΛΕΣΕ ΕΚΤ(Ι,Α) ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΥΝΑΡΤΗΣΗ ΑΥΞ(Χ):ΑΚΕΡΑΙΑ ΑΚΕΡΑΙΕΣ :X ΑΥΞ Χ^2+4 ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ ΔΙΑΔΙΚΑΣΙΑ ΕΚΤ(Χ,Υ) ΑΚΕΡΑΙΕΣ: X,Y ΓΡΑΨΕ Χ,Υ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΜΟΝΑΔΕΣ 10 Β2 Να γραφεί: Α) συνάρτηση η οποία να επιστρέφει το άθροισμα δύο πραγματικών αριθμών, Β) Τμήμα αλγορίθμου το οποίο να υπολογίζει το άθροισμα + + + + ΜΟΝΑΔΕΣ 10
ΘΕΜΑ 3ο Κάθε μαθητής έχει αναλάβει να πουλήσει 30 λαχνούς. Οι λαχνοί μπορεί να έχουν πουληθεί όλοι, αλλά μπορεί και όχι. Να αναπτύξετε αλγόριθμο ο οποίος: α. θα διαβάζει τα ονόματα των 50 μαθητών της Γ λυκείου. ΜΟΝΑΔΕΣ 3 β. για κάθε μαθητή θα διαβάζει τους αριθμούς των λαχνών που πούλησε, μέχρι να εξαντληθούν ή να δοθεί το μηδέν. Οι δομές που θα χρησιμοποιήσετε είναι: πίνακας Μ[50], που περιέχει τα ονόματα των μαθητών, πίνακας Π[50], που περιέχει για κάθε μαθητή το πλήθος των λαχνών που πούλησε (το πολύ 30), και πίνακας Κ[50,30], που περιέχει τους κωδικούς των λαχνών που πουλήθηκαν από κάθε μαθητή. Κάθε γραμμή i δεν έχει τιμή και στα 30 στοιχεία της, αλλά σε Π[i]. Ο αλγόριθμος πρέπει: γ. να εκτυπώνει ποιος μαθητής δεν έχει πουλήσει κανέναν λαχνό, ΜΟΝΑΔΕΣ 2 δ. να εκτυπώνει ποιοι μαθητές πούλησαν λιγότερους από 10 λαχνούς ΜΟΝΑΔΕΣ 2 ε. να εκτυπώνει τον μέσο όρο λαχνών που πουλήθηκαν από κάθε μαθητή. ΜΟΝΑΔΕΣ 2 στ. να εκτυπώνει ποιοι μαθητές πούλησαν τους περισσότερους λαχνούς και πόσους. ΜΟΝΑΔΕΣ 2 ζ.θα διαβάζει το όνομα ενός μαθητή και θα εκτυπώνει αν ανήκει στους μαθητές που πούλησαν τους περισσότερους λαχνούς. ΜΟΝΑΔΕΣ 6 η.γνωρίζοντας ότι ο κύριος Μιχάλης κληρώθηκε και κερδίζει το πρώτο δώρο, να διαβάζει τον κωδικό του λαχνού του και να εκτυπώνει από ποιον μαθητή αγόρασε τον νικητήριο λαχνό. ΜΟΝΑΔΕΣ 3
ΘΕΜΑ 4ο Οι φοιτητές που παρακολουθούν το μάθημα java είναι 120. Να αναπτύξετε πρόγραμμα το οποίο: α.θα καλεί υποπρόγραμμα που θα διαβάζει για κάθε φοιτητή το όνομα και τους βαθμούς που έλαβε στο μάθημα στα δύο εξάμηνα σε μονοδιάστατους πίνακες. Οι βαθμοί πρέπει να ανήκουν στο διάστημα [0,10]. ΜΟΝΑΔΕΣ 4 β. θα καλεί υποπρόγραμμα το οποίο θα υπολογίζει τη μεγαλύτερη βελτίωση βαθμολογίας που σημειώθηκε από κάποιον μαθητή από το πρώτο εξάμηνο στο δεύτερο ΜΟΝΑΔΕΣ 6 γ.θα εμφανίζει τα ονόματα όσων φοιτητών είχαν τη μεγαλύτερη βελτίωση βαθμολογίας. ΜΟΝΑΔΕΣ 6 δ. θα καλεί υποπρόγραμμα το οποίο θα εμφανίζει τα ονόματα όσων φοιτητών είδαν τη βαθμολογία τους να μειώνεται περισσότερο από 2 βαθμούς στο δεύτερο εξάμηνο σε σχέση με το πρώτο. ΜΟΝΑΔΕΣ 4
ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ 1Ο Α1. 1Σ,2Λ,3Λ,4Λ,5Σ Α2 Βλ. Σχ Βιβ. Σελ. 210 Βλ. Σχ Βιβ. Σελ. 137 Βλ. Σχ Βιβ. Σελ. 135 Α3 Σ 0 Π 0 Κ 0 _ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ Β ΑΝ Β>0 ΚΑΙ Β<=20 ΤΟΤΕ ΔΙΑΒΑΣΕ Ο Σ Σ+Β Π Π+1 ΑΝ Β>= 10 ΤΟΤΕ Κ Κ+1 ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΑΝ ΜΕΧΡΙΣ_ΟΤΟΥ Β<=0 Ή Β>20 ΑΝ Π<>0 ΤΟΤΕ Λ Σ/Π ΤΕΛΟΣ_ΑΝ ΓΡΑΨΕ Λ ΓΡΑΨΕ Κ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Όχι.Δεν γνωρίζω πλήθος επαναλήψεων.άρα δεν μπορώ να χρησιμοποιήσω τη δομή επανάληψης ΓΙΑ.
Α4 Σ 0 Π 0 Κ 0 ΔΙΑΒΑΣΕ Α ΟΧΙ Β>0 ΚΑΙ Β<=20 ΝΑΙ ΔΙΑΒΑΣΕ Ο ΑΝ Π<>0 Σ Σ+Β Π Π+1 Λ Σ/Π Β>=10 ΝΑΙ ΓΡΑΨΕ Λ Κ Κ+1 ΓΡΑΨΕ Κ ΔΙΑΒΑΣΕ Β ΤΕΛ
Α5. 1.Κατά την πρώτη επανάληψη ο μετρητής ι λαμβάνει την τιμή 4, επομένως ο δείκτης του πίνακα θα είναι 0. Αυτό όμως είναι λάθος, αφού δεν υφίσταται μηδενική θέση στον πίνακα.θα πρέπει να αλλάξει το Α[4-ι] σε Α[5-ι]. 2.Δεξία της εντολής εκχώρησης δημιουργείται η σωστή τιμή (2,3,4,5,6).Αριστερά όμως της εντολής εκχώρησης τα στοιχεία του πίνακα είναι τα Α[2],ΑΠ[3],Α[4],Α[5],Α[6], που είναι λάθος. Δεν είναι σωστός ο δείκτης, καθώς θα προσπελαστεί η έκτη θέση του πίνακα Α που δεν υπάρχει. Θα πρέπει το στοιχείο Α[Ι] να γίνει Α[ι-1]. ΘΕΜΑ 2Ο Β1. 1 16 2 14 3 18 4 16 5 20 Β2. Α) ΣΥΝΑΡΤΗΣΗ ΑΘΡΟΙΣΜΑ(Α,Β):ΠΡΑΓΜΑΤΙΚΗ ΠΡΑΓΜΑΤΙΚΕΣ:Α,Β ΑΘΡΟΙΣΜΑ Α+Β ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ Β)Αλγόριθμος α1 σ 0 για α από 1 μεχρι 99 σ σ+α/(α+1) τελός _επανάληψης εμφάνισε σ τέλος α1 ΘΕΜΑ 3ο Αλγόριθμος Α3 Για i από 1 μέχρι 50 Διαβασε Μ[i]
Τέλος _ επανάληψης J 0 Διάβασε κωδ Όσο κωδ <>0 και J<30 επανάλαβε J J+1 Κ[I,j] κωδ Αν j <30 τοτε Διάβασε κωδ Π[i] j Για i από 1 μέχρι 50 Αν Π[i]=0 τοτε Εκτυπωσε Μ[i]!ερώτημα δ όπως προηγούμενο... σ 0 Για i από 1 μέχρι 50 σ σ+π[i] Mo σ/50 Εκτύπωσε Μο μ Π[1] Για i από 2 μέχρι 50 Αν Π[i]> μ τοτε μ Π[i] Για i από 1 μέχρι 50 Αν Π[i]=μ τοτε Εκτύπωσε Μ[i] Διάβασε ον φ ψευδής i 1 pos 0 Όσο i <=50 και φ=ψευδής επανάλαβε Αν Μ[i]=ον τοτε pos i φ αληθής αλλιώς
i i+1 Αν pos<>0 τότε Αν Π[pos]=μ τότε Εμφάνισε περισσότερους λαχνούς Αλλιως Εμφάνισε όχι περισσότερους λαχνούς Αλλιώς Εμφάνισε λάθος όνομα Τέλος _αν Διάβασε καναζ Για i από 1 μέχρι 50 Για j από 1 μέχρι Π[i] Αν Κ[I,j]=καναζ τότε pos i Εμφάνισε Μ[pos] Τέλος Α3 ΘΕΜΑ 4ο ΠΡΟΓΡΑΜΜΑ Α4 ΣΤΑΘΕΡΕΣ Ν=120 ΠΡΑΓΜΑΤΙΚΕΣ:ΑΤΕΤ[Ν],ΒΤΕΤ[Ν],ΒΕΛΤΙΩΣΗ ΧAΡΑΚΤΗΡΕΣ: O[N] ΚΑΛΕΣΕ ΕΙΣΟΔΟΣ (Ο,ΑΤΕΤ,ΒΤΕΤ) ΒΕΛΤΙΩΣΗ ΒΡΕΣ (ΑΤΕΤ,ΒΤΕΤ) ΓΙΑ Α ΑΠΟ 1 ΜΕΧΡΙ Ν ΑΝ ΒΤΕΤ[Α]- ΑΤΕΤ [Α]= ΒΕΛΤΙΩΣΗ ΤΟΤΕ ΓΡΑΨΕ Ο[Α] ΤΕΛΟΣ _ ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΚΑΛΕΣΕ ΜΕΙΩΣΗ (Ο, ΑΤΕΤ,ΒΤΕΤ) ΤΕΛΟΣ_ ΠΡΟΓΡΑΜΜΑΤΟΣ... ΔΙΑΔΙΚΑΣΙΑ ΕΙΣΟΔΟΣ (Ο,ΑΤ,ΒΤ) ΣΤΑΘΕΡΕΣ
Ν=120 ΠΡΑΓΜΑΤΙΚΕΣ:ΑΤ[Ν],ΒΤ[Ν] ΑΚΕΡΑΙΕΣ:I ΧΑΡΑΚΤΗΡΕΣ:O[N] ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ Ν ΔΙΑΒΑΣΕ Ο[Ι] _ ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ ΑΤ[Ι] ΜΕΧΡΙΣ _ ΟΤΟΥ ΑΤ[Ι]>0 ΚΑΙ ΑΤ[Ι]<=20 _ ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ ΒΤ[Ι] ΜΕΧΡΙΣ _ ΟΤΟΥ ΒΤ[Ι]>0 ΚΑΙ ΒΤ[Ι]<=20 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ _ ΔΙΑΔΙΚΑΣΙΑΣ... ΣΥΝΑΡΤΗΣΗ ΒΡΕΣ (ΑΤ,ΒΤ):ΠΡΑΓΜΑΤΙΚΗ ΣΤΑΘΕΡΕΣ Ν=120 ΠΡΑΓΜΑΤΙΚΕΣ:ΑΤ[Ν],ΒΤ[Ν],ΒΕΛΤ ΑΚΕΡΑΙΕΣ:I Σ 0 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ Ν ΑΝ ΒΤ[Ι]-ΑΤ[Ι]>ΒΕΛΤ ΤΟΤΕ ΒΕΛΤ ΒΤ[Ι]-ΑΤ[Ι] ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΒΡΕΣ ΒΕΛΤ ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ... ΔΙΑΔΙΚΑΣΙΑ ΜΕΙΩΣΗ (Ο,ΑΤ,ΒΤ) ΣΤΑΘΕΡΕΣ Ν=120 ΠΡΑΓΜΑΤΙΚΕΣ:ΑΤ[Ν],ΒΤ[Ν] ΑΚΕΡΑΙΕΣ:I ΧΑΡΑΚΤΗΡΕΣ:O[N] ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ Ν ΑΝ ΒΤ[Ι]-ΑΤ[Ι]>2 ΤΟΤΕ ΓΡΑΨΕ Ο[Ι]
ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ