e-ΜΑΘΗΜΑΤΑ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό περιβάλλον

Λύσεις ασκήσεων από θέματα Πανελλαδικών εξετάσεων


ΠΡΟΓΡΑΜΜΑ ΕΜΠΟΔΙΑ_110
! Ε2008-Θ4
! Στο άθλημα των 110 μέτρων μετ' εμποδίων, στους δύο
! ημιτελικούς αγώνες συμμετέχουν δέκα έξι (16) αθλητές
! (8 σε κάθε ημιτελικό). Σύμφωνα με τον κανονισμό στον τελικό
! προκρίνεται ο πρώτος αθλητής κάθε ημιτελικού. Η οκτάδα του
! τελικού συμπληρώνεται με τους αθλητές που έχουν τους έξι (6)
! καλύτερους χρόνους απ' όλους τους υπόλοιπους συμμετέχοντες.
! Να θεωρήσετε ότι δεν υπάρχουν αθλητές με ίδιους χρόνους.
! 1. Να γράψετε πρόγραμμα στη «ΓΛΩΣΣΑ» το οποίο
!   α. περιλαμβάνει το τμήμα δηλώσεων.
!   β. καλεί τη διαδικασία ΕΙΣΟΔΟΣ για κάθε ημιτελικό ξεχωριστά.
!      Η διαδικασία διαβάζει το όνομα του αθλητή και τoν χρόνο
!      του (με ακρίβεια δεκάτου του δευτερολέπτου).
!   γ. καλεί τη διαδικασία ΤΑΞΙΝΟΜΗΣΗ για κάθε ημιτελικό
!      ξεχωριστά. Η διαδικασία ταξινομεί τους αθλητές ως προς
!      τον χρόνο τους με αύξουσα σειρά.
!   δ. δημιουργεί τον πίνακα ΟΝ με τα ονόματα και τον πίνακα ΧΡ
!      με τους αντίστοιχους χρόνους των αθλητών που προκρίθηκαν
!      στον τελικό.
!   ε. εμφανίζει τα ονόματα και τους χρόνους των αθλητών που θα
!      λάβουν μέρος στον τελικό.
! 2. Να γράψετε
!   α. τη διαδικασία ΕΙΣΟΔΟΣ.
!   β. τη διαδικασία ΤΑΞΙΝΟΜΗΣΗ.

!1α
ΜΕΤΑΒΛΗΤΕΣ
  ΠΡΑΓΜΑΤΙΚΕΣ: χρονοι_ημ1[8], χρονοι_ημ2[8], ΧΡ[8] 
  ΧΑΡΑΚΤΗΡΕΣ: ονόματα1[8], ονόματα2[8], ΟΝ[8]
  ΑΚΕΡΑΙΕΣ: i, j, k

ΑΡΧΗ
!1β
!      καλεί τη διαδικασία ΕΙΣΟΔΟΣ για κάθε ημιτελικό ξεχωριστά.
!      Η διαδικασία διαβάζει το όνομα του αθλητή και τoν χρόνο
!      του (με ακρίβεια δεκάτου του δευτερολέπτου).
  ΓΡΑΨΕ '1ος ημιτελικός'
  ΚΑΛΕΣΕ ΕΙΣΟΔΟΣ (χρονοι_ημ1, ονόματα1) 
  ΓΡΑΨΕ '2ος ημιτελικός'
  ΚΑΛΕΣΕ ΕΙΣΟΔΟΣ (χρονοι_ημ2, ονόματα2) 

!1γ
!      καλεί τη διαδικασία ΤΑΞΙΝΟΜΗΣΗ για κάθε ημιτελικό
!      ξεχωριστά. Η διαδικασία ταξινομεί τους αθλητές ως προς
!      τον χρόνο τους με αύξουσα σειρά.
  ΚΑΛΕΣΕ ΤΑΞΙΝΟΜΗΣΗ (χρονοι_ημ1, ονόματα1) 
  ΚΑΛΕΣΕ ΤΑΞΙΝΟΜΗΣΗ (χρονοι_ημ2, ονόματα2) 

!1δ
!      δημιουργεί τον πίνακα ΟΝ με τα ονόματα και τον πίνακα ΧΡ
!      με τους αντίστοιχους χρόνους των αθλητών που προκρίθηκαν
!      στον τελικό.

  ΟΝ[1] <- ονόματα1[1] 
  ΧΡ[1] <- χρονοι_ημ1[1] 
  ΟΝ[2] <- ονόματα2[1] 
  ΧΡ[2] <- χρονοι_ημ2[1] 

  i <- 2
  j <- 2
  k <- 3
  ΟΣΟ k <= 8 ΕΠΑΝΑΛΑΒΕ
    ΑΝ χρονοι_ημ1[i] < χρονοι_ημ2[j] ΤΟΤΕ
      ΟΝ[k] <- ονόματα1[i] 
      ΧΡ[k] <- χρονοι_ημ1[i] 
      i <- i + 1
    ΑΛΛΙΩΣ
      ΟΝ[k] <- ονόματα2[j] 
      ΧΡ[k] <- χρονοι_ημ2[j] 
      j <- j + 1
    ΤΕΛΟΣ_ΑΝ
    k <- k + 1
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ


!   ε. εμφανίζει τα ονόματα και τους χρόνους των αθλητών που θα
!      λάβουν μέρος στον τελικό.
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 8
    ΓΡΑΨΕ i, ' ', ΟΝ[i], ' ', ΧΡ[i] 
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ


!2α
ΔΙΑΔΙΚΑΣΙΑ ΕΙΣΟΔΟΣ (χρόνοι, ονόματα) 
ΜΕΤΑΒΛΗΤΕΣ
  ΠΡΑΓΜΑΤΙΚΕΣ: χρόνοι[8] 
  ΧΑΡΑΚΤΗΡΕΣ: ονόματα[8] 
  ΑΚΕΡΑΙΕΣ: i
ΑΡΧΗ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 8
    ΓΡΑΨΕ 'Δώσε το ', i, 'ο όνομα: '
    ΔΙΑΒΑΣΕ ονόματα[i] 
    ΓΡΑΨΕ 'Δώσε το χρόνο : '
    ΔΙΑΒΑΣΕ χρόνοι[i] 
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


!2β
ΔΙΑΔΙΚΑΣΙΑ ΤΑΞΙΝΟΜΗΣΗ (χρόνοι, ονόματα) 
ΜΕΤΑΒΛΗΤΕΣ
  ΠΡΑΓΜΑΤΙΚΕΣ: χρόνοι[8] 
  ΧΑΡΑΚΤΗΡΕΣ: ονόματα[8] 

  ΑΚΕΡΑΙΕΣ: i, j
  ΠΡΑΓΜΑΤΙΚΕΣ: temp
  ΧΑΡΑΚΤΗΡΕΣ: tempON
ΑΡΧΗ
  ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ 8
    ΓΙΑ j ΑΠΟ 8 ΜΕΧΡΙ i ΜΕ ΒΗΜΑ -1
      ΑΝ (χρόνοι[j - 1] > χρόνοι[j]) ΤΟΤΕ
        temp <- χρόνοι[j] 
        χρόνοι[j] <- χρόνοι[j - 1] 
        χρόνοι[j - 1] <- temp

        tempON <- ονόματα[j] 
        ονόματα[j] <- ονόματα[j - 1] 
        ονόματα[j - 1] <- tempON
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


 

Κεντρική Σελίδα Αλλα e-μαθήματα ΑΕΠΠ Αλλη άσκηση Επιστροφή στην κορυφή της σελίδας
© 2010 - 2ο Γενικό Λύκειο Γέρακα - Βασίλειος Αναστόπουλος