Αποστολέας Θέμα: Θέμα Δ  (Αναγνώστηκε 3403 φορές)

tsak

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 183
Απ: Θέμα Δ
« Απάντηση #45 στις: 24 Ιούν 2020, 03:08:30 μμ »
Ευχαριστώ για τις επισημάνσεις. Κι εγώ πιστεύω ότι πρέπει να κοπούν, αλλά όχι πάνω από 2-3... Είναι και αυτό που επικαλούνται πολλές φορές οι μαθητές: "αφού παίζει καλά το πρόγραμμα..." και ανοίγει η κουβέντα...

Λαμπράκης Μανώλης

  • Ομάδα διαγωνισμάτων 2017
  • *
  • Μηνύματα: 836
Απ: Θέμα Δ
« Απάντηση #46 στις: 24 Ιούν 2020, 03:24:06 μμ »
Το Δ2 εμένα μου άρεσε γενικά σαν ιδέα, για κάτι πιο δύσκολο , αν και όντως και οι δικοί μου μαθητές είχαν πολλές διαφορετικές λύσεις .. εγώ πάντως έχω βαρεθεί να μπαίνει ταξινόμηση με δευτερο κριτήριο αλφαβητικά τα ονόματα...εντάξει το καταλάβαμε πως γίνεται, έχει μπει σερί χρονιές, ας μπει του χρόνου και κάτι άλλο  >:D :angel: :D

taxata

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 102
  • Live long and prosper \\//
    • Πληροφορική στο ΕΠΑΛ
Απ: Θέμα Δ
« Απάντηση #47 στις: 24 Ιούν 2020, 03:28:37 μμ »
Ερώτηση περιέργειας εάν κάποιος λύσει πρώτα το Δ4 δηλαδή ταξινομήσει τους πίνακες και μετά το Δ3 δηλαδή εμφανίσει τα πάνω πάνω στοιχεία θα πάρει 6 + 3 ναι όχι και γιατί ?
Τάσος_Χατζηπαπαδόπουλος
http://users.sch.gr/chatzipap/

taseas

  • Οπαδός
  • **
  • Μηνύματα: 10
Απ: Θέμα Δ
« Απάντηση #48 στις: 24 Ιούν 2020, 03:29:20 μμ »
Δεν είναι ασάφεια και πρέπει να κοπούν μονάδες γιατί έτσι ξεγλιστράει από τη δυσκολία του θέματος. Ουσιαστικά είναι σαν να χρησιμοποιεί break.
Είμαι από τους λίγους που πιστεύω ότι η αλλαγή του μετρητή μέσα στη Για δεν πρέπει να θεωρείται λάθος, σε κάποιες περιπτώσεις πρέπει να είμαστε ελαστικοί αλλά αυτή δεν είναι μια από αυτές τις περιπτώσεις.

Το θέμα δεν είναι αν θα κοπούν μονάδες αλλά πόσες, γιατί το σκεπτικό του είναι αλγοριθμικά σωστό.

ΥΓ. Υπάρχει σχετική οδηγία, είναι στις τελευταίες οδηγίες που είχαν στείλει που είχε μέσα και άλλες για τα υποπρογράμματα.

Και γιατί να μη χρησιμοποιήσει την Όσο... επανάλαβε ; Εγώ εξηγώ στα παιδιά ότι η Για... είναι τρένο και δεν τη σταματάμε για κανένα λόγο. Αν θέλουν να κάνει "break" να βάζουν την Όσο... με flag.

Θα επανέλθω με μια δικιά μου λύση για το Θέμα Δ προσεχώς.

andreas_p

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 1059
Απ: Θέμα Δ
« Απάντηση #49 στις: 24 Ιούν 2020, 03:48:30 μμ »
Και το  break ... χάνει.
Η συνθήκη που ελέγχει η "Για  j " ...  είναι  j <= 100
Άρα ... j <- 101   και  όχι  j <- 100

Επίσης :  Β4  σελ. 73  8.3  τελευταία παράγραφος.

SuperTz

  • Βετεράνος
  • ****
  • Μηνύματα: 56
Απ: Θέμα Δ
« Απάντηση #50 στις: 24 Ιούν 2020, 03:52:46 μμ »
Νομίζω ότι το ερώτημα Δ4 είναι ίδιο με αυτό του 2004 (2ο κριτήριο ταξινόμησης) απλά είναι με διαδικασία. Αλφαβητική σειρά δεν σημαίνει κάτι άλλο παρά ταξινόμηση.

Επειδή ο μεγαλύτερος κριτής είναι οι μαθητές, δεν είδα να τους προβλημάτισε η διατύπωση.

Η αλφαβητική σειρά είναι ταξινόμηση αλλά εδώ είναι ένα δεύτερο κριτήριο το οποίο το αναφέρει στην Εμφάνιση και όχι στην Ταξινόμηση. Θα μπορούσε η διατύπωση να ήταν: "Να  εμφανίζει  τα  ονόματα  των  περιοχών,  ταξινομημένα  σε  φθίνουσα
σειρά ως προς το πλήθος των  θετικών δειγμάτων που εντοπίστηκαν. Σε περίπτωση  που  δύο  ή  περισσότερες  περιοχές  έχουν  το  ίδιο  πλήθος θετικών  δειγμάτων,  η ταξινόμηση να γίνεται κατά  αλφαβητική σειρά των ονομάτων των περιοχών. "

Υ.Γ. ωραίο το σχόλιο για την αμοιβή!:-)

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3525
  • to Iterate is human to Recurse divine
Απ: Θέμα Δ
« Απάντηση #51 στις: 24 Ιούν 2020, 04:17:04 μμ »
Ανδρέα δεν ξέρω αν χάνει με το j <- 100 γιατί αμέσως μετά η Για κάνει την αύξηση, η αύξηση γίνεται μετά το τέλος επανάληψης και πριν ελεγχθεί η συνθήκη της Όσο (Για) άρα δουλεύει αν δεχθούμε ότι επιτρέπεται η αλλαγή του μετρητή της Για. Έτσι στην επιστροφή θα έχει ήδη γίνει 101 πριν τον έλεγχο.
Και το  break ... χάνει.
Η συνθήκη που ελέγχει η "Για  j " ...  είναι  j <= 100
Άρα ... j <- 101   και  όχι  j <- 100

Επίσης :  Β4  σελ. 73  8.3  τελευταία παράγραφος.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

andreas_p

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 1059
Απ: Θέμα Δ
« Απάντηση #52 στις: 24 Ιούν 2020, 04:32:08 μμ »
Ευριπίδη  , ΝΑΙ έτσι είναι !
Δεν το πρόσεξα  ... Βρίσκεται μέσα στην ΑΝ και πριν το Τέλος_επανάληψης  !
Αλλά ... Να γυρίσουμε στο συνέδριο  του Ισραήλ  1964 ; Ν ' ανακαλύψουμε ξανά τον ... 'τροχό ' ;

George Eco

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 334
Απ: Θέμα Δ
« Απάντηση #53 στις: 24 Ιούν 2020, 06:27:20 μμ »
Το θέμα Δ ήταν τσιμπημένο. Και πολύ καλά έκαναν. Διαχωρίζει παπαγάλους από καλούς γνώστες του αντικειμένου, είναι εξαιρετικό θέμα βασικά.
Κλασικά στοιχεία θέματος Δ, δεμένα με πολύ ωραίο τρόπο όμως. Ταξινόμηση, παράλληλοι πίνακες, υποπρόγραμμα, δομές επιλογής κι επανάληψης, τι άλλο να θέλουμε, μια χαρά θέμα!


taseas

  • Οπαδός
  • **
  • Μηνύματα: 10
Απ: Θέμα Δ
« Απάντηση #54 στις: 24 Ιούν 2020, 07:02:35 μμ »
Τώρα βρήκα λίγο χρόνο και το έλυσα και εγώ. Ο τρόπος που έκανα τη διαδικασία είναι ίσως λίγο "χαζός" αλλά θα έλεγα ότι είναι περισσότερο quick-n-dirty και βγάζει σωστό αποτέλεσμα στην ταξινόμηση όπως και να 'χει.

Κώδικας: [Επιλογή]
ΠΡΟΓΡΑΜΜΑ θεμα_δ_by_taseas
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: i, j, k, max, sum_θετ[20]
  ΧΑΡΑΚΤΗΡΕΣ: Π[20], αποτελ, ΑΠ[20, 100]

ΑΡΧΗ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 20
    ΔΙΑΒΑΣΕ Π[i]
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 20
    j <- 1
    ΔΙΑΒΑΣΕ αποτελ
    ΟΣΟ αποτελ <> "ΤΕΛΟΣ" ΚΑΙ j <= 100 ΕΠΑΝΑΛΑΒΕ
      ΑΠ[i, j] <- αποτελ                                      !σίγουρα "Α" ή "Θ"
      j <- j + 1
      ΔΙΑΒΑΣΕ αποτελ                                        !"Α" ή "Θ" ή "ΤΕΛΟΣ"
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΙΑ k ΑΠΟ j ΜΕΧΡΙ 100!k=101 εάν έχουν ληφθεί όλα τα αποτελέσματα, οπότε δεν μπαίνει να βάλει "Χ"
      ΑΠ[i, k] <- "Χ"
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  max <- -1
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 20
    sum_θετ[i] <- 0
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 100
      ΑΝ ΑΠ[i, j] = "Θ" ΤΟΤΕ
        sum_θετ[i] <- sum_θετ[i] + 1
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΑΝ max < sum_θετ[i] ΤΟΤΕ
      max <- sum_θετ[i]
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 20
    ΑΝ sum_θετ[i] = max ΤΟΤΕ
      ΓΡΑΨΕ Π[i]
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΚΑΛΕΣΕ ΤΑΞΙΝΟΜΗΣΗ(sum_θετ, Π)

  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 20
    ΓΡΑΨΕ Π[i]
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ



ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ


ΔΙΑΔΙΚΑΣΙΑ ΤΑΞΙΝΟΜΗΣΗ(sum_θετ, Π)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: i, j, temp1, sum_θετ[20]
  ΧΑΡΑΚΤΗΡΕΣ: temp2, Π[20]

ΑΡΧΗ
  ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ 20
    ΓΙΑ j ΑΠΟ 20 ΜΕΧΡΙ i ΜΕ_ΒΗΜΑ -1
      ΑΝ Π[j] < Π[j - 1] ΤΟΤΕ

        temp2 <- Π[j - 1]
        Π[j - 1] <- Π[j]
        Π[j] <- temp2

        temp1 <- sum_θετ[j - 1]
        sum_θετ[j - 1] <- sum_θετ[j]
        sum_θετ[j] <- temp1


      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ 20
    ΓΙΑ j ΑΠΟ 20 ΜΕΧΡΙ i ΜΕ_ΒΗΜΑ -1
      ΑΝ sum_θετ[j] > sum_θετ[j - 1] ΤΟΤΕ

        temp1 <- sum_θετ[j - 1]
        sum_θετ[j - 1] <- sum_θετ[j]
        sum_θετ[j] <- temp1

        temp2 <- Π[j - 1]
        Π[j - 1] <- Π[j]
        Π[j] <- temp2

      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Απ: Θέμα Δ
« Απάντηση #55 στις: 24 Ιούν 2020, 07:05:10 μμ »
Η διόρθωση/προσθήκη με έντονα γράμματα


ΠΡΟΓΡΑΜΜΑ θεμα_δ_by_taseas

    j <- 1
    ΔΙΑΒΑΣΕ αποτελ
    ΟΣΟ αποτελ <> "ΤΕΛΟΣ" ΚΑΙ j <= 100 ΕΠΑΝΑΛΑΒΕ
      ΑΠ[i, j] <- αποτελ                                      !σίγουρα "Α" ή "Θ"
      j <- j + 1
      ΑΝ j <= 100 ΤΕΛΟΣ
          ΔΙΑΒΑΣΕ αποτελ                                        !"Α" ή "Θ" ή "ΤΕΛΟΣ"
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
   

taseas

  • Οπαδός
  • **
  • Μηνύματα: 10
Απ: Θέμα Δ
« Απάντηση #56 στις: 24 Ιούν 2020, 07:21:34 μμ »
Η διόρθωση/προσθήκη με έντονα γράμματα


Σωστός! Δεν θα εισαχθεί τίποτα λάθος, αλλά δεν υπάρχει λόγος να διαβαστεί κάτι εάν το j έχει γίνει 101, έχουν ήδη δοθεί 100 δεδομένα ("Θ" ή "Α")!


andreas_p

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 1059
Απ: Θέμα Δ
« Απάντηση #57 στις: 24 Ιούν 2020, 07:29:03 μμ »
taseas

Διαδικασία ΤΑΞΙΝΟΜΗΣΗ

Παίζει ;

taseas

  • Οπαδός
  • **
  • Μηνύματα: 10
Απ: Θέμα Δ
« Απάντηση #58 στις: 24 Ιούν 2020, 07:33:04 μμ »
taseas

Διαδικασία ΤΑΞΙΝΟΜΗΣΗ

Παίζει ;

Ναι, σε ό,τι δοκιμές έκανα μέχρι τώρα παίζει κομπλέ. Αυτό που έκανα και λέω ότι είναι χαζό, είναι ότι κάνω 2 ταξινομήσεις: μία για να βάλω τις περιοχές σε αύξουσα (αλφαβητική) σειρά και έπειτα άλλη μία για να βάλω σε φθίνουσα σειρά με βάση το πλήθος των θετικών κρουσμάτων.

Σίγουρα inefficient (από άποψη reads στη μνήμη) αλλά σίγουρα και πιο απλό. Φαντάζομαι θα το έχουν κάνει αρκετά παιδιά έτσι.

juandojas

  • Νέος
  • *
  • Μηνύματα: 1
Απ: Θέμα Δ
« Απάντηση #59 στις: 24 Ιούν 2020, 09:30:45 μμ »
Μαθητής μου στη διαδικασία, έκανε 2 παράλληλες ταξινομήσεις. Την πρώτη με κριτήριο τα ονόματα σε αύξουσα σειρα και τη δεύτερη με κριτήριο τον κατασκευασμενο πίνακα με τα πλήθη των Θ κάθε περιφέρειας σε φθίνουσα. Πόσο πιθανόν είναι ο διορθωτής να μην καταλάβει ότι η λύση δουλεύει μια χαρά κ να του αφαιρέσει;