Το Στέκι των Πληροφορικών

Γενικό Λύκειο => Γ΄ Λυκείου => Θεωρία => Μήνυμα ξεκίνησε από: landreou στις 23 Ιαν 2013, 01:14:05 ΜΜ

Τίτλος: ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΑΛΑ ΡΩΣΙΚΑ ΜΕ ΑΛΛΑΓΗ
Αποστολή από: landreou στις 23 Ιαν 2013, 01:14:05 ΜΜ
Γεια σας φίλοι του ΣτΠ. Στο βιβλίο σελ.44 ξεκινάει το θέμα "Πολλαπλασιασμός αλά Ρώσικα" και λέει (σελ.45) : "Ωστόσο, η πράξη του πολλαπλασιασμού δεν εκτελείται από τον υπολογιστή με τον τρόπο αυτό. Πιο συγκεκριμένα, ο χρησιμοποιούμενος τρόπος είναι ο λεγόμενος πολλαπλασιασμός αλά ρωσικά. Χωρίς βλάβη της γενικότητας θεωρούμε ότι οι ακέραιοι είναι θετικοί (μεγαλύτεροι του μηδενός), αλλά η μέθοδος μπορεί εύκολα να μετατραπεί, ώστε να περιγράψει και την περίπτωση των αρνητικών ακεραίων."
Αν γίνεται αυτή η μετατροπη να εκφραστεί σε αλγόριθμο για να καλύψουμε και αυτή τη περίπτωση .

Εκ προοιμίου σας ευχαριστώ
Τίτλος: Απ: ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΑΛΑ ΡΩΣΙΚΑ ΜΕ ΑΛΛΑΓΗ
Αποστολή από: gthal στις 23 Ιαν 2013, 08:46:45 ΜΜ
Υποθέτω εφαρμόζεις τον αλγόριθμο κανονικά (για τις απόλυτες τιμές των αριθμών) και στο τέλος, ανάλογα με τα πρόσημα των αριθμών που πολ/σιάζεις καθορίζεις και το πρόσημο του αποτελέσματος.
Τίτλος: Απ: ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΑΛΑ ΡΩΣΙΚΑ ΜΕ ΑΛΛΑΓΗ
Αποστολή από: landreou στις 30 Ιαν 2013, 10:02:22 ΠΜ
Ο αλγόριθμος του σχ. βιβλίου αναφέρεται σε θετικούς ακέραιους. Τι συνθήκες πρεπει να έχουμε στην γενικότερη περίπτωση ακεραίων; (μαζί και αρνητκών δηλαδή).
Τίτλος: Απ: ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΑΛΑ ΡΩΣΙΚΑ ΜΕ ΑΛΛΑΓΗ
Αποστολή από: nikolasmer στις 30 Ιαν 2013, 10:12:50 ΠΜ
Θα προσθέσεις τις εξής εντολές:

Διάβασε χ, ψ ! που μπορεί να είναι και ομόσημοι και ετερόσημοι.
α <- Α_Τ(χ)
β <- Α_Τ(ψ)
! κάνεις πολ/σμό Αλά Ρώσικα με τις α και β μεταβλητές και στο τέλος
Αν χ * ψ >0 τότε ! ομόσημοι
   Εμφάνισε αποτέλεσμα
Αλλιώς  ! ετερόσημοι
   Εμφάνισε - αποτέλεσμα
Τέλος_αν

Τίτλος: Απ: ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΑΛΑ ΡΩΣΙΚΑ ΜΕ ΑΛΛΑΓΗ
Αποστολή από: gthal στις 31 Ιαν 2013, 02:51:58 ΠΜ
ε, εντάξει, επειδή είναι λίγο ειρωνεία να παλεύουμε τόση ώρα για να βρούμε το γινόμενο χ*ψ με πολ/σμό αλά ρωσικά και στο τέλος να λέμε
"Αν χ*ψ >0 "  (δηλ. να χρησιμοποιούμε έτοιμο το γινόμενο για να βρούμε το πρόσημό του)
θα προτιμούσα τις στοιχειώδεις συγκρίσεις με το μηδέν

Αν (χ<0 και ψ>0) ή (χ>0 και ψ<0) τότε
  αποτέλεσμα <-  - αποτέλεσμα
τέλος_αν
Τίτλος: Απ: ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΑΛΑ ΡΩΣΙΚΑ ΜΕ ΑΛΛΑΓΗ
Αποστολή από: nikolasmer στις 31 Ιαν 2013, 09:56:38 ΠΜ
Ναι έχεις  απόλυτο δίκαιο. Δε μου πέρασε καθόλου από το μυαλό.
Διορθώνω
Παράθεση από: gthal στις 31 Ιαν 2013, 02:51:58 ΠΜ

Αν (χ<0 και ψ>0) ή (χ>0 και ψ<0) τότε
  αποτέλεσμα <-  - αποτέλεσμα
τέλος_αν

Τίτλος: Απ: ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΑΛΑ ΡΩΣΙΚΑ ΜΕ ΑΛΛΑΓΗ
Αποστολή από: Κωστας τζιαννης στις 09 Δεκ 2018, 04:50:29 ΠΜ
Παράθεση από: gthal στις 31 Ιαν 2013, 02:51:58 ΠΜ
ε, εντάξει, επειδή είναι λίγο ειρωνεία να παλεύουμε τόση ώρα για να βρούμε το γινόμενο χ*ψ με πολ/σμό αλά ρωσικά και στο τέλος να λέμε
"Αν χ*ψ >0 "  (δηλ. να χρησιμοποιούμε έτοιμο το γινόμενο για να βρούμε το πρόσημό του)
θα προτιμούσα τις στοιχειώδεις συγκρίσεις με το μηδέν

Αν (χ<0 και ψ>0) ή (χ>0 και ψ<0) τότε
  αποτέλεσμα <-  - αποτέλεσμα
τέλος_αν

και γιατι να μην το ελεγξεις ως εξης?
ΑΝ X/Y>0 ...κτλ κτλ (δεν χρησιμοποιεις το γινομενο αλλα διαιρεση) ;) ;) ;)
Τίτλος: Απ: ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΑΛΑ ΡΩΣΙΚΑ ΜΕ ΑΛΛΑΓΗ
Αποστολή από: dpats στις 04 Ιαν 2019, 02:09:45 ΜΜ
Αν και το σχολικό αναφέρει ότι "Χωρίς βλάβη της γενικότητας θεωρούμε ότι οι ακέραιοι είναι θετικοί", ωστόσο η μέθοδος του πολ/σμού αλά ρωσικά δουλεύει και για Υ = 0, ενώ η διαίρεση Χ/Υ όχι. Μια άλλη λύση θα ήταν
ΑΝ Χ < 0 ΤΟΤΕ
  αποτέλεσμα <- - αποτέλεσμα
ΤΕΛΟΣ_ΑΝ
ΑΝ Υ < 0 ΤΟΤΕ
  αποτέλεσμα <- - αποτέλεσμα
ΤΕΛΟΣ_ΑΝ
ΓΡΑΨΕ αποτέλεσμα