Στο τελευταίο φεστιβάλ ψηφιακής δημιουργίας συμμετείχαν 10 ομάδες μαθητών. Κάθε ομάδα παρουσίασε μια εργασία. Από κάθε ομάδα ζητήθηκε να βαθμολογήσει όλες τις εργασίες, τόσο τη δική της όσο και των υπολοίπων 9 ομάδων. Να κατασκευάσετε πρόγραμμα το οποίο:
Δ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων.
Μονάδες 2
Δ2. Να καταχωρίζει:
α. τα ονόματα των ομάδων, σε πίνακα Ο[10].(μονάδες 2)
β. τους ακέραιους βαθμούς, σε πίνακα Β[10,10]. Οι βαθμοί να εισάγονται, για κάθε ομάδα με τη σειρά, από την πρώτη μέχρι τη δέκατη, ως εξής:

  • να εισάγεται πρώτα ο βαθμός που έδωσε στη δική της εργασία.
  • για καθεμιά από τις υπόλοιπες ομάδες, με τη σειρά, που έχουν καταχωριστεί στον πίνακα Ο, να εμφανίζεται το όνομά της και να εισάγεται ο αντίστοιχος βαθμός. (μονάδες 4)

Μονάδες 6
Δ3. Να εμφανίζει το όνομα της ομάδας που συγκέντρωσε τον μεγαλύτερο μέσο όρο βαθμολογίας. Κατά τον υπολογισμό του μέσου όρου να εξαιρούνται ο μεγαλύτερος και ο μικρότερος βαθμός της.
Μονάδες 5
Δ4. Να εμφανίζει το όνομα της ομάδας η οποία βαθμολόγησε τον εαυτό της πλησιέστερα στον μέσο όρο των βαθμών που έλαβε από τις υπόλοιπες ομάδες.
Μονάδες 7

(Για το ερώτημα Δ3 να θεωρήσετε ότι οι τιμές του μέσου όρου, του μικρότερου και του μεγαλύτερου βαθμού είναι μοναδικές. Για το ερώτημα Δ4 να θεωρήσετε ότι η τιμή του μέσου όρου είναι μοναδική).

ΛΥΣΗ

ΠΡΟΓΡΑΜΜΑ Δ_2017_ΕΠΑΝ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Ι, J, Β[10, 10], ΜΙΝ[10], ΜΑΧ[10], SUM, ΘΕΣΗ
  ΠΡΑΓΜΑΤΙΚΕΣ: ΜΟ[10], ΑΠ[10], ΜΙΝ2, ΜΑΧ2
  ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[10] 
ΑΡΧΗ
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΔΙΑΒΑΣΕ ΟΝ[Ι] 
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
!Δ2Α
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10
! Η ΚΑΘΕ ΟΜΑΔΑ ΒΑΘΜΟΛΟΓΕΙ ΤΟ ΕΑΥΤΟ ΤΗΣ ΣΤΗΝ ΚΥΡΙΑ ΔΙΑΓΩΝΙΟ
    ΔΙΑΒΑΣΕ Β[Ι, Ι] 
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
!Δ2Β
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 10
! Η ΚΑΘΕ ΟΜΑΔΑ ΒΑΘΜΟΛΟΓΕΙ ΟΛΕΣ ΤΙΣ ΑΛΛΕΣ ΕΚΤΟΣ ΤΟΥ ΕΑΥΤΟΥ ΤΗΣ
! ΔΗΛΑΔΗ ΕΞΑΙΡΟΥΜΕ ΤΑ ΣΤΟΙΧΕΙΑ ΤΗΣ ΚΥΡΙΑΣ ΔΙΑΓΩΝΙΟΥ
      ΑΝ Ι <> J ΤΟΤΕ
        ΓΡΑΨΕ ΟΝ[Ι], ' , ΒΑΘΜΟΛΟΓΕΙ ΤΗΝ ', ΟΝ[J] 
        ΔΙΑΒΑΣΕ Β[Ι, J] 
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

!Δ3
!ΚΑΤΑ ΓΡΑΜΜΗ
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΜΙΝ[Ι] <- Β[Ι, 1] 
    ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 10
      ΑΝ ΜΙΝ[Ι] > Β[Ι, J] ΤΟΤΕ
        ΜΙΝ[Ι] <- Β[Ι, J] 
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

!ΚΑΤΑ ΓΡΑΜΜΗ
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΜΑΧ[Ι] <- Β[Ι, 1] 
    ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 10
      ΑΝ ΜΑΧ[Ι] < Β[Ι, J] ΤΟΤΕ
        ΜΑΧ[Ι] <- Β[Ι, J] 
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΜΟ[Ι] <- 0
    SUM <- 0
    ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 10
! AN Β[Ι,J] <> MIN[I] KAI Β[Ι,J] <> MAX[I] TOTE
      SUM <- SUM + Β[Ι, J] 
!ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    SUM <- SUM - ΜΙΝ[Ι] - ΜΑΧ[Ι] 
    ΜΟ[Ι] <- SUM/ 8
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΜΑΧ2 <- ΜΟ[1] 
  ΘΕΣΗ <- 1
  ΓΙΑ Ι ΑΠΟ 2 ΜΕΧΡΙ 10
    ΑΝ ΜΑΧ2 < ΜΟ[Ι] ΤΟΤΕ
      ΜΑΧ2 <- ΜΟ[Ι] 
      ΘΕΣΗ <- Ι
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ 'ΟΜΑΔΑ ΜΕ ΤΟΝ ΜΑΧ ΜΟ'
  ΓΡΑΨΕ ΟΝ[ΘΕΣΗ] 

! ΑΠΟΣΤΑΣΗ === ΑΠΟΛΥΤΗ ΤΙΜΗ
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΑΠ[Ι] <- Α_Τ( ΜΟ[Ι] - Β[Ι, Ι]) 
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΜΙΝ2 <- ΑΠ[1] 
  ΘΕΣΗ <- 1
  ΓΙΑ Ι ΑΠΟ 2 ΜΕΧΡΙ 10
    ΑΝ ΜΙΝ2 > ΑΠ[Ι] ΤΟΤΕ
      ΜΙΝ2 <- ΑΠ[Ι] 
      ΘΕΣΗ <- Ι
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ 'ΟΜΑΔΑ ΜΕ ΜΙΝ ΑΠΟΣΤΑΣΗ'
  ΓΡΑΨΕ ΟΝ[ΘΕΣΗ] 

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ</code class="language-javascript">
Share This