Διευκρίνιση

Ξεκίνησε από dimpapp, 08 Μαρ 2012, 12:39:13 ΠΜ

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

dimpapp

υπάρχει διαφορά ανάμεσα σε αυτό

θέση <- 0
Ι <- 1
Οσο  Ι<= Ν και θέση=0 επανάλαβε
  Αν Π[Ι]= key τοτε
       θεση <- Ι
   αλλιώς
       Ι <- Ι+1
  Τελος_αν
Τελος_επαναληψης


και στο παρακάτω;

θέση <- 0
Ι <- 1
Οσο  Ι<= Ν και θέση=0 επανάλαβε
  Αν Π[Ι]= key τοτε
       θεση <- Ι
   Τέλος_αν
       Ι <- Ι+1
Τελος_επαναληψης

petrosp13

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

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

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

αν κάνουμε μία αναζήτηση με την "κλασσική" μορφή του βιβλίου και στο τέλος πούμε πχ

θέση <- 0
Ι <- 1
Οσο  Ι<= Ν και θέση=0 επανάλαβε
  Αν Π[Ι]= key τοτε
       θεση <- Ι
   αλλιώς
       Ι <- Ι+1
  Τελος_αν
Τελος_επαναληψης
ΑΝ έλεγος=αληθής τότε
   εμφάνισε "βρέθηκε στην θέση", i                
Αλλιώς                                               
   εμφάνισε "δεν βρέθηκε"           
Τέλος_αν


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

σωστή η σκέψη ή μου διαφεύγει κάτι ??

petrosp13

Σωστή η σκέψη σου
Απλά, ο αλγόριθμος σειριακής αναζήτησης, όπως ορίζεται στο βιβλίο, περιέχει 2 μεταβλητές εκτός από το i (λογική και θέση) και καλό θα είναι να χρησιμοποιούνται όταν η εκφώνηση προσδιορίζει να χρησιμοποιήσουμε τον αλγόριθμο
Αν και είναι περιττές και οι 2
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

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

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

ευχαριστώ

petrosp13

Η επανάληψη μπορεί να σταματήσει και με το i

i<--1
Όσο (i <= N) επανάλαβε
    Αν (Α=ζητούμενο) τότε
          Εμφάνισε ...
          i <-- N+100
    Αλλιώς
          i <-- i + 1
    Τέλος_Αν
Τέλος_Επανάληψης

Αν (i = N+100) τότε
     Εμφάνισε 'Δεν βρέθηκε'
Τέλος_Αν
   
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

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

ναι σωστά ευχαριστώ...

evry

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

Όσο (i <= N) επανάλαβε
    Αν (Α(i)=ζητούμενο) τότε
          Εμφάνισε ...
          i <-- N+100
    ΤΑ
     i <-- i + 1
    Τέλος_Αν
Τέλος_Επανάληψης


δεν ειναι ισοδυναμος με αυτον?
(όπου ισοδυναμος = έχουν το ιδιο διάγραμμα ροης)

i<--1
Για ι από 1 μεχρι Ν
    Αν (Α(i)=ζητούμενο) τότε
          Εμφάνισε ...
          i <-- N+100
    ΤΑ
    Τέλος_Αν
Τέλος_Επανάληψης


Γιατι ο ένας να ειναι κακη πρακτικη και ο άλλος όχι?

Να σημειώσω ότι η παρακάτω τεχνική θεωρείται πολύ καλή σε αρκετές σύγχρονες γλώσσες προγραμματισμού


i<--1
Για ι από 1 μεχρι Ν
    Αν (Α(i)=ζητούμενο) τότε
          Εμφάνισε ...
          break;
    ΤΑ
    Τέλος_Αν
Τέλος_Επανάληψης



@mkouv
το σκεπτικό σου ειναι πολύ σωστό, μπορείς  να πεις στους μαθητες σου να το χρησιμοποιουν αφοβα
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

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

καλησπέρα

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

τώρα σχετικά με το Για, δεν διακόπτει τις επαναλήψεις, οπότε "στα πλαίσια του μαθήματος" δεν το χρησιμοποιούμε...

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

καλό βράδυ σε όλους



itt

Παράθεση από: evry στις 12 Φεβ 2014, 07:58:12 ΜΜ
Ο παρακάτω αλγόριθμος έχει το πρόβλημα ότι δεν κρατάς τη θέση του ζητούμενου κατι που εχει ζητηθει πολλες φορες στις εξετασεις. Άρα η μεταβλητή θέση θα έλεγα ότι μάλλον ειναι απαραίτητη.

Δεν νομίζω ότι μπορείς να πεις ότι ειναι απαραίτητη άμα δεν θες να κρατάς την θέση.

Παράθεση από: evry στις 12 Φεβ 2014, 07:58:12 ΜΜ

Γιατι ο ένας να ειναι κακη πρακτικη και ο άλλος όχι?

Να σημειώσω ότι η παρακάτω τεχνική θεωρείται πολύ καλή σε αρκετές σύγχρονες γλώσσες προγραμματισμού

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

Παράθεση από: mkouv στις 12 Φεβ 2014, 10:18:36 ΜΜ
στον δρόμο απ το φροντιστήριο σκεφτόμουν ότι όντως αν θέλουμε την θέση να την κρατήσουμε δεν βολεύει ο αλγόριθμος δίχως την "θέση"

Όπως είπα, δεν ειναι θέμα του κατα πόσον βολεύει. Άμα χρειάζεσαι την θέση, κρατάς την θέση άμα δεν την χρειάζεσαι δεν την κρατάς.

evry

Παράθεση από: itt στις 13 Φεβ 2014, 12:27:34 ΠΜ
Δεν νομίζω ότι μπορείς να πεις ότι ειναι απαραίτητη άμα δεν θες να κρατάς την θέση.
Απαραίτητη για τις εξετάσεις είναι, γιατί η συντριπτική πλειοψηφία των θεμάτων που έχει πέσει με σειριακή αναζήτηση σου ζητάει τη θέση.

Παράθεση
Υποθέτω στα πλαίσια του μαθήματος, καλό είναι αυτό που θεωρείται περισσότερο δομημένο, οπότε και οι δύο αντιμετωπίσεις ειναι αρκετά άκομψες.
προφανώς το ερώτημα ήταν ρητορικό
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

itt

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

Νομίζα ότι η ουσία είναι τα παιδιά να αποκτήσουν μια κριτική αντιμετώπιση, όχι να σκέφτονται με ποσόδειξη. Τελοσπάντων, δεν διαφωνούμε σε κάτι ουσιώδες.

Παράθεσηπροφανώς το ερώτημα ήταν ρητορικό

Είναι όμως ενδιαφέρον.

evry

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

Παράθεση από: itt στις 13 Φεβ 2014, 10:56:43 ΜΜ
Νομίζα ότι η ουσία είναι τα παιδιά να αποκτήσουν μια κριτική αντιμετώπιση, όχι να σκέφτονται με ποσόδειξη. Τελοσπάντων, δεν διαφωνούμε σε κάτι ουσιώδες.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

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

Παράθεση από: evry στις 13 Φεβ 2014, 11:17:07 ΜΜ
Δυστυχώς, όταν δουλεύεις σε φροντιστήριο η ουσία είναι τα παιδιά να πετύχουν στις εξετάσεις κάτι που δεν συνεπάγεται αυτόματα κριτική αντιμετώπιση.
Για αυτό απάντησα με σκεπτικό που πρέπει να δώσουν βάρος σε σχέση πάντα με τα θέματα που μπαίνουν.


καλημέρα σε όλους...

ήθελα να πω την άποψη μου πάνω σε αυτό...εγώ είμαι κάπου στη μέση σαν φιλοσοφία....δηλαδή τα παιδιά και να αποκτήσουν κριτική σκέψη, όμως μέσα σε ένα πιο "περιορισμένο" πλάισιο... και αυτό γιατί έχουν και άλλα μαθήματα, περιορισμένο χρόνο, πίεση, και μη ξεχνάμε ότι τα βλέπουν πρώτη φορά...εγώ που διδάσκω για παράδειγμα 3 χρόνια το μάθημα, είμαι δηλαδή νέος, ακόμη μελετάω κάθε χρόνο για να γίνω όσο το δυνατόν καλύτερος, πόσο μάλλον οι μαθητές που μπαίνουν πρώτη φορά στην λογική αυτή....το ότι δίνουν πανελλήνιες είναι μία πραγματικότητα, οπότε ο σκοπός είναι να πετύχουν στις πανελλήνιες...δεν γίνεται να μην το λάβουμε αυτό δεδομένο... οπότε μπορούμε να τους οδηγήσουμε στην κριτική/αλγοριθμική σκέψη, μέσα σε ένα πλαίσιο που δεν πολύ-ξεφεύγει και από το πνεύμα των εξετάσεων

ευχαριστώ

itt

Μιλάμε όμως για κάτι που έχει εξαιρετικά μικρό cognitive load, πολύ μικρότερο σε σχέση π.χ με τα θεωρήματα του απειροστικού λογισμού. Επίσης μιλάμε για κάτι relatively straigthforward που δείχνει και την κατανόηση του πρόβληματος. Ie, κατα πόσον εξετάζω την ύπαρξη vs ψάχνω τη θέση ενός στοιχείου.