Επειδή φέτος είδα πολλές λύσεις με δυναμικούς πίνακες, κάτι που δεν θυμάμαι να έχει ξαναγίνει θέτω το εξής πρόβλημα
Να δοθεί αλγόριθμος ο οποίος να διαβάζει αριθμούς μέχρι να δοθεί 0 και εμφανίζει τον μικρότερο θετικό αριθμό που διάβασε
Ένας μαθητής δίνει την παρακάτω λύση στο παραπάνω πρόβλημα
Διάβασε α
κ <- 0
Όσο α <> 0 Επανάλαβε
Αν α > 0 Τότε
κ <- κ + 1
Π[κ] <- α
Τέλος_Αν
Διάβασε α
Τέλος_Επανάληψης
Για i από 2 μέχρι κ
Για j από κ μέχρι i με βήμα -1
Αν Π[j]<Π[j-1] Τότε Αντιμετάθεσε Π[j], Π[j-1]
Τέλος_Επανάληψης
Τέλος_Επανάληψης
Εμφάνισε 'Το μικρότερο στοιχείο είναι το ',Π[1]
Αν το παραπάνω πρόβλημα έπιανε 10 μονάδες τότε εσείς πόσες από αυτές πιστεύετε ότι πρέπει να πάρει.
Δεν αναφέρομαι φυσικά στο γεγονός ότι βρίσκει το ελάχιστο με ταξινόμηση, αλλά στο ότι με τον τρόπο αυτόν "ξεγλιστρά" από την δυσκολία του προβλήματος να βρει τον ελάχιστο θετικό. Το πρόβλημα δεν είναι τόσο εύκολο και αυτό φαίνεται αν το δώσεις στους μαθητές πριν μπουν στους πίνακες.
Φοβάμαι ότι θα βλέπουμε όλο και συχνότερα τέτοιες λύσεις, οι οποίες βασίζονται στην φιλοσοφία του "αφού δουλεύει είναι σωστό".
Προσωπικά αυτό που με προβληματίζει είναι ότι κάνει όλη αυτή την φασαρία μόνο και μόνο για να μπορέσει να φτάσει στον ασφαλέστερο τρόπο που ξέρει για να βρίσκει ελάχιστα/μέγιστα, δηλαδή την ταξινόμηση