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

Γενικό Λύκειο => Γ΄ Λυκείου => Μήνυμα ξεκίνησε από: klitos στις 16 Σεπ 2009, 11:48:47 πμ

Τίτλος: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: klitos στις 16 Σεπ 2009, 11:48:47 πμ
Πως γίνεται η διαίρεση χρησιμοποιώντας την πρόσθεση ?
Αφαιρώ τον παρονομαστή μέχρι να βρω μικρότερο (αρα βρισκω το πηλίκο ) κλπ κλπ ?
μηπως υπαρχει κατι καλύτερο ?
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: P.Tsiotakis στις 16 Σεπ 2009, 12:53:48 μμ
πολλές προσθέσεις του ιδίου αριθμού = πολλαπλασιασμός
διαίρεση = το αντίθετο του πολαπλασιασμού
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: klitos στις 16 Σεπ 2009, 02:15:10 μμ
Παναγιώτη θεωρητικά ετσι ειναι, αλλα πρακτικά?
ας που με οτι εχω 5 * 7 τοτε γινεται 5+5+5+5+5+5+5
αλλα το 5/7 πως γίνεται ?
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: pgrontas στις 16 Σεπ 2009, 02:23:15 μμ
Αυτό που ρώτησε ο Κλήτος πάντα με έτρωγε και μένα.
Πώς υλοποιείται η διαίρεση πρακτικά - όχι κατ' ανάγκη στην πραγματικότητα αλλά με έναν τρόπο που να μπορείς να πείσεις
περίεργους (με την θετική έννοια) μαθητές.

Νομίζω η σωστότερη απάντηση είναι με τον αλγορίθμο της διαίρεσης που μαθαίναμε στο δημοτικό
Συνδυασμός δηλαδή Πολλαπλασιασμού Αφαίρεσης και Δοκιμών - Αν,Όσο.
Εδώ κολλάω όμως στο ότι πλέον πρόκειται για αλγόριθμο αρκετά πιο σύνθετο.
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: alkisg στις 16 Σεπ 2009, 02:44:49 μμ
Νομίζω ότι ανάγεται στις βασικές πράξεις του υπολογιστή, δηλαδή πρόσθεση, negation (με τις δύο αυτές υλοποιείται και η αφαίρεση), shifting κτλ:
http://www.bearcave.com/software/divide.htm
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: za√‘ag στις 16 Σεπ 2009, 03:30:11 μμ
Αν δεν κάνω λάθος υπάρχει η εντολή DIV στην assembly... και στην ουσία σε επίπεδο μηχανής εκτελεί έναν "μικροκώδικα" ... Το θυμάμαι σωστά;
Δείτε κι εδώ  (http://pdos.csail.mit.edu/6.828/2008/readings/i386/DIV.htm)(το link το είχε βάλει ο Άλκης για άλλο τόπικ)

Κάποτε είχα φτιάξει ένα προγραμματάκι σε Basic που έκανε πολ/σμό με μεγάλους αριθμούς (έπαιρνε 2 αριθμούς με μορφή string και έκανα τον πολ/σμό όπως τον μάθαμε στο Δημοτικό και το αποτέλεσμα ήταν ένα string με μέγεθος το πολύ 256 ψηφία)
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: Wizard στις 16 Σεπ 2009, 03:53:38 μμ
Στο συνημμένο υπάρχει η διαίρεση δυαδικών αριθμών (στα αγγλικά).
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: P.Tsiotakis στις 16 Σεπ 2009, 07:14:26 μμ
τον μαθηματικό τους, που τους είπε στην Α γυμνασίου για τις πράξεις γιατί δεν τον ρώτησαν?   :o  :o  :D
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: tropheus στις 16 Σεπ 2009, 07:42:10 μμ
Εγώ για τους περίεργους μαθητές που ρωτάνε πως γίνεται η διαίρεση με προθέσεις (γενικώς) τους δείχνω ένα απλό παράδειγμα ...

Έστω ότι θέλω να διαιρέσω το 17 με το 3 τότε κάνουμε διαδοχικά τις πράξεις :

17+(-3)=14
14+(-3)=11
11+(-3)=8
8+(-3)=5
5+(-3)=2

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

Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: za√‘ag στις 16 Σεπ 2009, 08:44:17 μμ
Εγώ για τους περίεργους μαθητές που ρωτάνε πως γίνεται η διαίρεση με προθέσεις (γενικώς) τους δείχνω ένα απλό παράδειγμα ...

Έστω ότι θέλω να διαιρέσω το 17 με το 3 τότε κάνουμε διαδοχικά τις πράξεις :

17+(-3)=14
14+(-3)=11
11+(-3)=8
8+(-3)=5
5+(-3)=2

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




Ως μαθηματικός θα συμφωνήσω ... :)
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: klitos στις 17 Σεπ 2009, 10:28:09 πμ
Εγώ για τους περίεργους μαθητές που ρωτάνε πως γίνεται η διαίρεση με προθέσεις (γενικώς) τους δείχνω ένα απλό παράδειγμα ...

Έστω ότι θέλω να διαιρέσω το 17 με το 3 τότε κάνουμε διαδοχικά τις πράξεις :

17+(-3)=14
14+(-3)=11
11+(-3)=8
8+(-3)=5
5+(-3)=2

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


αυτό ειπα και εγω στην αρχή , αλλα αν πρεπει να κανεις το 3 δια 17 ?
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: gpapargi στις 17 Σεπ 2009, 02:20:20 μμ
Έχω την αίσθηση ότι ο υπολογιστής χρησιμοποιεί τον αλγόριθμο της διαίρεσης που κάναμε στο δημοτικό. Δεν είναι το ίδιο με το να ξεκινάς από το διαιρετέο και να αφαιρείς ποσότητα ίση με το διαιρέτη γιατί αν πχ ο διαιρετέος είναι 9999 και ο διαιρέτης είναι 3 θα γίνουν 3333 βήματα. Μετράει δηλαδή και η βαρύτητα του κάθε ψηφίου.

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

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

Στη συνέχεια ο πολλαπλασιασμός του νέου ψηφίου του υπολοίπου με το διαιρέτη είναι τετριμμένος αφού το ψηφίο είτε είναι 1 (και κάνεις απλή μεταφορά) ή 0 και βάζεις 0. Μένει η αφαίρεση.

Η αφαίρεση είναι άλλη ιστορία και έχει να κάνει με το πως αναπαρίσταται ο αρνητικός στον υπολογιστή. Συνήθως παίζει το συμπλήρωμα του 2. Σε αυτή την περίπτωση για την αφαίρεση μετατρέπονται τα 0 σε 1 και τα 1 σε 0, προστίθεται 1, γίνεται πρόσθεση και απορρίπτεται το πρώτο ψηφίο. Το να κάνεις τέτοια αφαίρεση σε υπολογιστή που αναπαριστά τον αρνητικό με συμπλήρωμα του 2 είναι σα να κάνεις πρόσθεση με τον αντίθετο.

Κάποτε είχα δώσει στην τάξη ένα ανάλογο «δεκαδικό» πρόβλημα υπό μορφή σπαζοκεφαλιάς: «Να αφαιρεθεί πχ το 17 από το 65 με κομπιουτεράκι που έχει χαλάσει τι πλήκτρο – καθώς και η δυνατότητα αλλαγής πρόσημου»

Απάντηση:

Βρίσκεις το συμπλήρωμα του 17 (δηλαδή αυτό που πρέπει να του προσθέσεις για να γίνει 99). Είναι το 82.
Προσθέτεις 1 και γίνεται 83.
Προσθέτεις 83 + 65 και βρίσκεις 148
Αγνοείς το πρώτο ψηφίο και βρίσκεις 48 (Είναι ίσο με 65-17 ).

Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: Wizard στις 17 Σεπ 2009, 05:45:35 μμ
Από τη σελίδα του μαθήματος "Τεχνολογία Υπολογιστικών Συστημάτων & Λειτουργικά Συστήματα" στο Π.Ι.: Πολλαπλασιασμός και διαίρεση ακεραίων (http://pi-schools.att.sch.gr/download/lessons/computers/lykeio/books/technology-operating-system/multDiv.zip)
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: klitos στις 18 Σεπ 2009, 10:24:43 πμ
σας ευχαριστω ...κλητος
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: gpapargi στις 18 Σεπ 2009, 11:07:18 πμ
Μια που τέθηκε και το θέμα του πολλαπλασιασμού, έχει ενδιαφέρον να δούμε στο κείμενο του Wizard ότι στο δυαδικό σύστημα ο γνωστός αλγόριθμος του κάθετου πολλαπλασιασμού «ενοποιείται» με τον πολλαπλασιασμό αλλά ρωσικά. Κάθε πράξη του κάθετου είναι ισοδύναμη με μια πράξη του αλά ρωσικά.

Δηλαδή ξεκινάει να κάνει τον κλασσικό κάθετο πολλαπλασιασμό του δημοτικού. Πρέπει λοιπόν κάθε ψηφίο του ενός αριθμού (εδώ του Α, ενώ στον κάθετο είναι ο κάτω) να το πολλαπλασιάσει με τον άλλο. Σε κάθε νέο ψηφίο του κάτω που παίρνουμε ξεκινάμε μετά από μια θέση αριστερότερα (ολίσθηση στο δεκαδικό). Εδώ το υλοποιεί με αριστερή ολίσθηση του Β.
Προσέξτε ότι αυτή η αριστερή ολίσθηση του Β είναι το επί 2 που κάνει ο αλά ρωσικά.
Το να διατρέχεις από δεξιά προς τα αριστερά είναι σα να αγνοείς το τελευταίο του ψηφίο (είναι το div 2 του αλά ρωσικά)
Τέλος το ότι προσθέτεις τον ολισθημένο Β ή 0 στο γινόμενο ανάλογα με το αν το ψηφίο σάρωσης του Α είναι 1 ή 0 είναι στον αλά ρωσικά η πρόσθεση του Μ1 στο γινόμενο όταν έχεις μονό Μ2. Αυτό ισχύει γιατί αν το τελευταίο ψηφίο του δυαδικού είναι 0 είναι ζυγός, ενώ αν είναι 1 είναι μονός (και είπαμε ότι το να σαρώνεις διαδοχικά τα ψηφία του Α είναι σαν να κόβεις ένα κάθε φορά και να αλλάζεις το τελευταίο που καθορίζει την αρτιότητα του αριθμού).

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

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


Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: za√‘ag στις 18 Σεπ 2009, 11:57:19 πμ
Δείτε κι ένα τρόπο πολλαπλασιασμού χωρίς προπαίδεια και χωρίς υπολογιστή ;)

http://www.youtube.com/watch?v=kZKOPKIHsrc
Τίτλος: Απ: Πραξεις που εκτελεί ο Η/Υ
Αποστολή από: gpapargi στις 18 Σεπ 2009, 12:33:23 μμ
ΑΠό ότι βλέπω το 21 Χ 13 το κάνει (20+1) Χ (10+3) και μετά εφαρμόζει επιμεριστική ιδιότητα και βγαίνει: 20 Χ 10 + 20 Χ 3 + 1 Χ 10 + 1 Χ 3.
Αγνοεί τα μηδενικά που δίνουν βάρος πχ στην τάξη δεκάδων και γράφει με γραμμές τα ψηφία. Τα σημεία τομής δίνουν τα 4 επι μέρους γινόμενα.

Το πρόβλημα είναι αν βάλεις μεγάλα ψηφία πχ το 9. Αν οι 2 αριθμοί έχουν από πχ ένα 9 τότε κατά τον υπολογισμό του επιμέρους γινομένου τους θα γίνει κόλαση. Ο τρόπος με τον οποίο αποφεύγουν την προπαίδεια είναι με το να μετράνε ένα ένα τα σημεία τομής. Αν έχεις κάποια στιγμή 9 Χ 9 θα με τρήσεις 81 σημεία τομής. Καλύτερα με προπαίδεια. Για αυτό βγήκε, για να γλιτώσεις όλο αυτό το μέτρημα.