*

Αποστολέας Θέμα: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ  (Αναγνώστηκε 2340 φορές)

0 μέλη και 1 επισκέπτης διαβάζουν αυτό το θέμα.

Αποσυνδεδεμένος euler18

  • Νέο μέλος
  • *
  • Μηνύματα: 80
  • Λατρεύω την εκπαίδευση
    • Προφίλ
ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« στις: Μάρτιος 29, 2021, 10:41:58 μμ »
Αλγόριθμος Εύρεση_Μεγίστου
Εμφάνισε "Δώσε μου 3 αριθμούς"
Διάβασε α, β, γ
Αν α > β και α > γ τότε
  Εμφάνισε "ο μεγαλύτερος είναι ο ", α
Αλλιώς_αν β > α και β > γ τότε
  Εμφάνισε "ο μεγαλύτερος είναι ο ", β
Αλλιώς
  Εμφάνισε "ο μεγαλύτερος είναι ο ", γ
Τέλος_αν
Τέλος Εύρεση_Μεγίστου


Καλησπέρα, βρίσκετε κάποιο λάθος σε αυτόν τον αλγόριθμο?

Αποσυνδεδεμένος PDE ads

  • Ιστορικό μέλος
  • *****
  • Μηνύματα: 4006
  • Λατρεύω την εκπαίδευση
    • Προφίλ
    • E-mail
    • Προσωπικό μήνυμα (Εκτός σύνδεσης)
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Δημοσιεύτηκε: Σήμερα στις 02:28:41 »

Αποσυνδεδεμένος Landau

  • Ιστορικό μέλος
  • *****
  • Μηνύματα: 6022
  • Φύλο: Άντρας
  • Λατρεύω την εκπαίδευση.. BAZINGA!
    • Προφίλ
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Απάντηση #1 στις: Μάρτιος 29, 2021, 10:48:48 μμ »
Δεν χρειάζεται και συνθήκη if.. then.. και για το γ ?
"Physics is like sex: sure, it may give some practical results, but that's not why we do it."
(Richard P. Feynman ?)

"The first condition of progress is the removal of censorship."
(George Bernard Shaw)

Αποσυνδεδεμένος euler18

  • Νέο μέλος
  • *
  • Μηνύματα: 80
  • Λατρεύω την εκπαίδευση
    • Προφίλ
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Απάντηση #2 στις: Μάρτιος 29, 2021, 10:51:54 μμ »
Πιστεύω πως οχι, διαφωνείς?

Αποσυνδεδεμένος victor123

  • Global Moderator
  • Ιστορικό μέλος
  • *****
  • Μηνύματα: 2245
    • Προφίλ
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Απάντηση #3 στις: Μάρτιος 29, 2021, 10:53:16 μμ »
Αλγόριθμος Εύρεση_Μεγίστου
Εμφάνισε "Δώσε μου 3 αριθμούς"
Διάβασε α, β, γ
Αν α > β και α > γ τότε
  Εμφάνισε "ο μεγαλύτερος είναι ο ", α
Αλλιώς_αν β > α και β > γ τότε
  Εμφάνισε "ο μεγαλύτερος είναι ο ", β
Αλλιώς
  Εμφάνισε "ο μεγαλύτερος είναι ο ", γ
Τέλος_αν
Τέλος Εύρεση_Μεγίστου


Καλησπέρα, βρίσκετε κάποιο λάθος σε αυτόν τον αλγόριθμο?

Εγώ θα έλεγα το.λαθος είναι πως πρέπει να θεωρήσεις δεδομένο ότι όποιος τον τρέξει θα εισάγει τρεις διαφορετικούς αριθμούς. Αν δώσει για τιμές a=5, b=5, c=3 δεν θα τρέξει σωστά. Μάλιστα θα σου βγάλει ότι ο μεγαλύτερος είναι το c=3 που προφανώς είναι λάθος.  Επίσης ο αλγόριθμος με τη λογική αυτή θα μεγάλωνε δυσανάλογα αν ήθελες να συγκρίνεις 4 αριθμούς και παραπάνω. Το σωστότερο είναι να γίνει με max.
« Τελευταία τροποποίηση: Μάρτιος 29, 2021, 10:58:09 μμ από victor123 »

Αποσυνδεδεμένος PDE ads

  • Ιστορικό μέλος
  • *****
  • Μηνύματα: 4006
  • Λατρεύω την εκπαίδευση
    • Προφίλ
    • E-mail
    • Προσωπικό μήνυμα (Εκτός σύνδεσης)
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Δημοσιεύτηκε: Σήμερα στις 02:28:41 »

Αποσυνδεδεμένος euler18

  • Νέο μέλος
  • *
  • Μηνύματα: 80
  • Λατρεύω την εκπαίδευση
    • Προφίλ
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Απάντηση #4 στις: Μάρτιος 29, 2021, 10:56:17 μμ »
Σωστός!

Αποσυνδεδεμένος victor123

  • Global Moderator
  • Ιστορικό μέλος
  • *****
  • Μηνύματα: 2245
    • Προφίλ
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Απάντηση #5 στις: Μάρτιος 29, 2021, 10:59:55 μμ »
Σωστός!

Αν χρειαστείς βοήθεια να τον κάνεις με max πες το μου να σου τον γράψω.

Αποσυνδεδεμένος euler18

  • Νέο μέλος
  • *
  • Μηνύματα: 80
  • Λατρεύω την εκπαίδευση
    • Προφίλ
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Απάντηση #6 στις: Μάρτιος 29, 2021, 11:09:39 μμ »
Την ξερω τη μεθοδολογια με το max, απλα ειπα να σκεφτω κατι άλλο... (για 3 παντα αριθμους) Ευχαριστώ!

Αποσυνδεδεμένος euler18

  • Νέο μέλος
  • *
  • Μηνύματα: 80
  • Λατρεύω την εκπαίδευση
    • Προφίλ
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Απάντηση #7 στις: Απρίλιος 25, 2021, 08:41:20 μμ »
Αλγόριθμος Μέγιστος
βρεθηκε_μεγ ← Ψευδής
max ← 0
Για i από 1 μέχρι 3
  Εμφάνισε "Δωσε μου έναν αριθμό"
  Διάβασε α
  Αν βρεθηκε_μεγ = Ψευδής και max = 0 τότε
    βρεθηκε_μεγ ← Αληθής
    max ← α
  αλλιώς_αν α > max και βρεθηκε_μεγ = Αληθής τότε
    max ← α
  Τέλος_αν
Τέλος_επανάληψης
Εμφάνισε max
Τέλος Μέγιστος


Καλύπτει όλες τις περιπτώσεις?

Αποσυνδεδεμένος victor123

  • Global Moderator
  • Ιστορικό μέλος
  • *****
  • Μηνύματα: 2245
    • Προφίλ
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Απάντηση #8 στις: Απρίλιος 25, 2021, 10:29:05 μμ »
Αλγόριθμος Μέγιστος
βρεθηκε_μεγ ← Ψευδής
max ← 0
Για i από 1 μέχρι 3
  Εμφάνισε "Δωσε μου έναν αριθμό"
  Διάβασε α
  Αν βρεθηκε_μεγ = Ψευδής και max = 0 τότε
    βρεθηκε_μεγ ← Αληθής
    max ← α
  αλλιώς_αν α > max και βρεθηκε_μεγ = Αληθής τότε
    max ← α
  Τέλος_αν
Τέλος_επανάληψης
Εμφάνισε max
Τέλος Μέγιστος


Καλύπτει όλες τις περιπτώσεις?

Ναι. Αν θέλεις όμως τη γνώμη μου και επειδή το μάθημα το κάνω πάνω από 10 χρόνια είναι λάθος να το κάνεις έτσι. Ναι μεν βγάζει σωστό αποτέλεσμα αλλά είναι αναίτια πολύπλοκος ο αλγόριθμος. Σκέψου να είναι κομμάτι ή συνάρτηση κάποιου μεγαλύτερου προγράμματος. Να βιάζεσαι κιόλας. Το πιο πιθανό είναι να το κάνεις λάθος. Αν πρόκειται για 3 αριθμούς ο πιο σωστός τρόπος και ο απλούστερος είναι:

Διάβασε a,b,c
max<-a
Αν b->max τότε
max<-b
Τέλος_αν
Αν c->max τότε
max<-c
Τέλος_αν
Εμφάνισε max

Ξαναλέω όσο πιο πολύπλοκο κάνουμε κάτι αυξάνουμε γεωμετρικά τις πιθανότητες λάθους. Αν θες για παραπάνω αριθμούς μπορεί ο αλγόριθμος να μετατραπεί ώστε να σε ρωτάει αν θες να εισάγεις και άλλο αριθμό και αν πεις ναι να συνεχίζει και να ζητάει τον επόμενο αριθμό ενώ αν πεις όχι να τερματίζει. Μπορείς και με counter να βγάζεις στο τέλος εκτός από το max και πόσους αριθμούς εισήγαγες.
« Τελευταία τροποποίηση: Απρίλιος 25, 2021, 10:31:20 μμ από victor123 »

Αποσυνδεδεμένος gf

  • Πλήρες μέλος
  • ***
  • Μηνύματα: 441
  • Γηράσκω αεί διδάσκων
    • Προφίλ
Απ: ΑΛΓΟΡΙΘΜΟΣ ΕΥΡΕΣΗΣ ΜΕΓΙΣΤΟΥ
« Απάντηση #9 στις: Απρίλιος 26, 2021, 10:15:33 πμ »
Δεν θα μπορούσες να έχεις καλύτερη συμβουλή από όσα έγραψε από πάνω ο viktor123.

Ενημερωτικά μόνο, και επειδή έχεις το nickname που έχεις, δουλεύει και αυτό:

Κώδικας: [Επιλογή]
Αλγόριθμος μ
Διάβασε  α, β, γ
max <- ( (α+β+Α_Τ(α-β))/2 + γ + Α_Τ((α+β+Α_Τ(α-β))/2 -γ ) )/2
Εμφάνισε max
ΤΕΛΟΣ μ

Μην αρχίσεις να επιδιώκεις τέτοιες λύσεις και προς Θεού μην γράψεις κάτι τέτοιο στις πανελλήνιες.

Παραλλαγή του απλούστερου τρόπου:
Παράθεση
Διάβασε a,b,c
Αν a<b τότε
  max <-  b
Αλλίως
  max <-  a
Τέλος_αν
Αν c>max τότε
  max <-  c
Τέλος_αν
Εμφάνισε max
« Τελευταία τροποποίηση: Απρίλιος 26, 2021, 10:23:25 πμ από gf »

 

Pde.gr, © 2005 - 2024

Το pde σε αριθμούς

Στατιστικά

μέλη
  • Σύνολο μελών: 32288
  • Τελευταία: Dialeimma
Στατιστικά
  • Σύνολο μηνυμάτων: 1159609
  • Σύνολο θεμάτων: 19212
  • Σε σύνδεση σήμερα: 418
  • Σε σύνδεση έως τώρα: 1964
  • (Αύγουστος 01, 2022, 02:24:17 μμ)
Συνδεδεμένοι χρήστες
Μέλη: 3
Επισκέπτες: 395
Σύνολο: 398

Πληροφορίες

Το PDE φιλοξενείται στη NetDynamics

Όροι χρήσης | Προφίλ | Προσωπικά δεδομένα | Υποστηρίξτε μας

Επικοινωνία >

Powered by SMF 2.0 RC4 | SMF © 2006–2010, Simple Machines LLC
TinyPortal 1.0 RC1 | © 2005-2010 BlocWeb

Δημιουργία σελίδας σε 0.128 δευτερόλεπτα. 35 ερωτήματα.