ΑΠΟΤΕΛΕΣΜΑΤΙΚΟΤΗΤΑ

Ξεκίνησε από droopy, 01 Οκτ 2007, 01:33:57 ΜΜ

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

droopy

Δίνεται το τμήμα αλγορίθμου:

Διάβασε α,β,γ
Αν α>β ΚΑΙ α>γ Τότε
   Εμφάνισε "μεγαλύτερος ο ", α
αλλιώς
  Εμφάνισε "μεγαλύτερος ο ", β
Τέλος_αν

Ικανοποιεί το κριτήριο της αποτελεσματικότητας Σ ή Λ

Άποψη μου είναι ότι είναι σωστό, αν και το είδα σε ένα βιβλίο σαν λάθος.
Θεωρώ ότι πουθενά στο βιβλίο δεν αναφέρει ότι αν δίνει λάθος αποτέλεσμα ο αλγόριθμος παραβιάζεται το κριτήριο της αποτελεσματικότητας.


Επίσης:

Διάβασε χ,y
Αν χ<>0 τότε
κ<-- y/x
αλλιως
κ<-- "δεν υπάρχει"
Τέλος_αν

πιο κριτήριο παραβιάζεται? (στην μεταβλήτή κ την μία φορά βάζουμε αριθμό και την άλλη αλφαριθμητικό)

Ευχαριστώ


gpapargi

Droopy η αποτελεσματικότητα είναι μια πονεμένη ιστορία. Τη γνώμη μου την έγραψα στο παρακάτω θέμα

https://alkisg.mysch.gr/steki/index.php?topic=944.0

Γενικά έχω δει διάφορους καθηγητές και διάφορά βιβλία να δίνουν διάφορες ερμηνείες. Καμία δε με έχει πείσει. Νομίζω πως το βιβλίο απλά έχει μεταφέρει λάθος από το βιβλίο του Knuth (που έχει σα reference) το effectiveness. Από πουθενά μέσα στο σχολικό βιβλίο δεν προκύπτει αυτό που λέει ο Knuth στα παραδείγματά του.

Προσωπικά θα πρότεινα ασκήσεις σχετικές με την αποτελεσματικότητα να αφήνονται στην άκρη. Εκτός αν κάποιος μπορέσει να μας εξηγήσει με ισχυρά και επαρκή επιχειρήματα τι είναι η αποτελεσματικότητα.

P.Tsiotakis

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

Στο δεύτερο παράδειγμα, πιθανώς δεν παραβιάζεται κανένα κριτήριο...Απλά δεν γίνεται σωστή εκχώρηση

Συμφωνώ με το Γιώργο.

Παράδειγμα πάντως υπάρχει: η εντολή "Φτιάξε τη σαλάτα" παραβιάζει την αποτελεσματικότητα καθώς δεν είναι απλή ούτε εκτελέσιμη: περιλαμβάνει πληθώρα υπο-εντολών που πρέπει να περιγραφούν επακριβώς ώστε να εκτελεστούν

kkoutsak

Συμφωνώ  απολύτως  μαζί  σας.Άλλο  η  αποτελεσματικότητα  και  άλλο  το  σωστό  αποτέλεσμα.Επίσης  το  ότι  κάποιος  αλγόριθμος  έχει  λάθος  δεν  σημαίνει  πως  παραβιάζει  κάποιο  κριτήριο.

gpapargi

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

Αλγόριθμος είναι τα συγκεκριμένα βήματα που πρέπει να κάνεις δηλαδή οι συγκεκριμένες ενέργειες. Απλά για να τις περιγράψεις χρειάζεσαι και μια μορφή αναπαράστασης.

Η παραβίαση ενός αλγοριθμικού κριτηρίου αφορά τον αλγόριθμο δηλαδή τις ενέργειες και είναι «υπεράνω» της μορφής αναπαράστασης.

Στο δεύτερο παράδειγμα παραβιάζεται κάποιος συντακτικός κανόνας της ψευδογλώσσας (αυτό γίνεται πολύ πιο σαφές αν μιλάμε για την αυστηρή ΓΛΩΣΣΑ). Δηλαδή πρόκειται για κάποιο σφάλμα που αφορά την μορφή αναπαράστασης του αλγορίθμου (κωδικοποίηση) και όχι τον αλγόριθμο καθαυτό.

d_bam

πιστεύω πως ο πρώτος αλγόριθμος δεν παραβιάζει κανένα κριτήριο

ο δεύτερος με τη μέθοδο δια αποκλεισμού θα έλεγα αποτελεσματικότητας!