Άσκηση με Ταξινόμηση επιμέρους τμημάτων πίνακα

Ξεκίνησε από Sergio, 27 Φεβ 2011, 05:26:54 ΠΜ

« προηγούμενο - επόμενο »

Sergio

Μία από τις ασκήσεις που μπορούν να λειτουργήσουν ως ευκαιρία εμπέδωσης του μηχανισμού της ταξινόμησης αλλά, περισσότερο, να βοηθήσει στην ανάπτυξη της φαντασίας τους σχετικά με τη χρήση των πινάκων σε προβλήματα

Τα ονόματα και τα επίθετα των 300 μαθητών ενός σχολικού συγκροτήματος βρίσκονται καταχωρημένα σε πίνακες Ο και Ε αντίστοιχα.  Στην αρχή του πίνακα βρίσκονται τα στοιχεία για τους 80 μαθητές του δημοτικού, στη συνέχεια τα στοιχεία των 120 μαθητών του Γυμνασίου και τέλος των 100 μαθητών του Λυκείου.  Να σχεδιάσετε αλγόριθμο που να ταξινομεί τα στοιχεία των μαθητών του συγκροτήματος αλφαβητικά με βάση το επίθετο και το όνομα, διατηρώντας τους χωρισμένους κατά βαθμίδα.
Απ τη μια η θητεία μου σε σχολικές αίθουσες: να φλυαρώ - να ελπίζω πως κατι κατάλαβαν - να εξερευνώ - να μαθαίνω. Απ την άλλη, σχεδόν συνομήλικη, η Διδακτική της Πληροφορικής: ερευνά διαδικασίες μάθησης - φλερτάρει με την Ψυχολογία - με καλεί να αφήσω το βλέμμα του Πληροφορικού και να δω με τα μάτια του δασκάλου. Τέκνα των 2, οι απόψεις μου.. (προσαρμοσμένο από τον πρόλογο του βιβλίου "Το μακρόν Φυσική προ του βραχέως διδάσκω" του Ανδρέα Κασσέτα)

gpapargi

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

Sergio

Όντως υπάρχουν πολλές λύσεις για το συγκεκριμένο πρόβλημα..

Αφού ο μαθητής δώσει τη δική του, εφόσον υπάρχει χρόνος, μπορούν να παρουσιαστούν και καποιες από τις υπόλοιπες ώστε να διαπιστωθούν συγκριτικά πλεονεκτήματα και μειονεκτήματα..

1) Τρεις διαδοχικές ταξινομήσεις:
Για ι από 2 μέχρι 80
  Για κ από 80 μέχρι ι με_βήμα -1
    ..

Για ι από 82 μέχρι 200
  Για κ από 200 μέχρι ι με_βήμα -1
    ..

Για ι από 202 μέχρι 300
  Για κ από 300 μέχρι ι με_βήμα -1
    ..


2) Δημιουργία πίνακα βαθμίδας (1, 2 ή 3) για κάθε μαθητή.  Στη συνέχεια ταξινόμηση με τη βαθμίδα ως πρωτεύον κριτήριο και στη συνέχεια επίθετο και όνομα
Για ι από 1 μέχρι 80
  Β[ι] <- 1
Τέλος_επανάληψης

Για ι από 81 μέχρι 200
  Β[ι] <- 2
Τέλος_επανάληψης

Για ι από 201 μέχρι 300
  Β[ι] <- 3
Τέλος_επανάληψης

Για ι από 2 μέχρι 300
  Για κ από 300 μέχρι ι με_βήμα -1
    Αν Β[κ] < Β[κ-1] Ή
        (Β[κ] = Β[κ-1] ΚΑΙ Ε[κ] < Ε[κ-1]) Ή
        (Β[κ] = Β[κ-1] ΚΑΙ Ε[κ] = Ε[κ-1] ΚΑΙ Ο[κ]<Ο[κ-1]) τότε
      Αντιμετάθεσε Β[κ], Β[κ-1]
      Αντιμετάθεσε Ε[κ], Ε[κ-1]
      Αντιμετάθεσε ΒΟ[κ], Ο[κ-1]
    Τέλος_αν
  Τέλος_επανάληψης
Τέλος_επανάληψης


3) Ταξινόμηση με .. διακοπές
Για ι από 2 μέχρι 300
  Για κ από 300 μέχρι ι με_βήμα -1
    Αν κ <> 81 ΚΑΙ κ <> 201 τότε
      ...


4) Ταξινόμηση με μεταβλητά άκρα και επιλογή
Για ι από 1 μέχρι 3
  Αν ι = 1 τότε 
    Α <- 2 
    Β <- 80
  αλλιώς_αν ι = 2 τότε
    Α <- 82
    Β <- 200
  αλλιώς
    Α <- 202
    Β <- 300
  Τέλος_αν

  Για κ από Α μέχρι Β
    Για λ από Β μέχρι κ με_βήμα -1
      Αν Ε[λ] < Ε[λ-1] ...


5. Ταξινόμηση με μεταβλητά άκρα σε πίνακες
Α[1] <- 2 
Β[1] <- 80
Α[2] <- 82
Β[2] <- 200
Α[3] <- 202
Β[3] <- 300

Για ι από 1 μέχρι 3
  Για κ από Α[ι] μέχρι Β[ι]
    Για λ από Β[ι] μέχρι κ με_βήμα -1
      Αν Ε[λ] < Ε[λ-1] ...


6. Ταξινόμηση με μεταβλητά άκρα σε πίνακες και κλήση διαδικασίας
Α[1] <- 2 
Β[1] <- 80
Α[2] <- 82
Β[2] <- 200
Α[3] <- 202
Β[3] <- 300

Για ι από 1 μέχρι 3
  ΚΑΛΕΣΕ Ταξινόμηση(Ο, Ε, Α[ι], Β[ι])
Τέλος_επανάληψης
..
..
Διαδικασία Ταξινόμηση(Π1, Π2, Α, Β)
..
Για ι από Α μέχρι Β
  Για κ από Β μέχρι ι με_βήμα -1
    Αν Π1[κ] ..


Τι λέτε; Να σχολιάσουμε τα σχετικά πλεονεκτήματα και μειονεκτήματα της κάθε λύσης ;
Απ τη μια η θητεία μου σε σχολικές αίθουσες: να φλυαρώ - να ελπίζω πως κατι κατάλαβαν - να εξερευνώ - να μαθαίνω. Απ την άλλη, σχεδόν συνομήλικη, η Διδακτική της Πληροφορικής: ερευνά διαδικασίες μάθησης - φλερτάρει με την Ψυχολογία - με καλεί να αφήσω το βλέμμα του Πληροφορικού και να δω με τα μάτια του δασκάλου. Τέκνα των 2, οι απόψεις μου.. (προσαρμοσμένο από τον πρόλογο του βιβλίου "Το μακρόν Φυσική προ του βραχέως διδάσκω" του Ανδρέα Κασσέτα)