What's new

Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

Μετατροπές σε συστήματα αρίθμησης

Chronomancy

Todd's Minion
Staff member
Joined
Oct 8, 2013
Messages
10,224
Αν έχει κάποιος την καλή διάθεση θα ήθελα μια βοήθεια όσων αφορά την μετατροπή από δυαδικό σε δεκαδικό τα αντίστροφα κτλπ. Προς το παρόν έχω κολλήσει από δεκάδικο σε δυαδικό.
Με ψάξιμο βρήκα πως γίνετε πάνω κάτω αλλά κολλάω στο εξής και θα ήθελα αν κάποιος θέλει και μπορεί να με βοηθήσει.
Μου δίνει το 123,45 από δεκαδικό να το κάνω δυαδικό. Ξεκινάω με το ακέραιο μέρος και διαιρώ με 2. -->123/2=61.5 υπόλοιπο 1 και συνεχίζω με το 61.5, εδώ λοιπόν έχω θεμά. Μετά θα διαιρέσω το 61.5 ή το 61?
 

kara

Kraken
Joined
Dec 15, 2012
Messages
9,095
για το ακέραιο μέρος είναι 123/2= 61 και υπόλοιπο 1 , συνεχίζεις με 61/2 = 30 και υπόλοιπο 1

http://datalibrary.wordpress.com/2009/07/20/%CE%BC%CE%B5%CF%84%CE%B1%CF%84%CF%81%CE%BF%CF%80%CE%AE-%CE%B1%CF%81%CE%B9%CE%B8%CE%BC%CF%8E%CE%BD-%CE%B1%CF%80%CF%8C-%CF%84%CE%BF-%CE%B4%CE%B5%CE%BA%CE%B1%CE%B4%CE%B9%CE%BA%CF%8C-%CF%83%CF%84%CE%BF/" class="bbcode_url">Κι αυτός έτσι το κάνει αν δεις τις πράξεις του.
 

ccwr

Mind-flayer
The Ultimate Sacrifice Never tell me the odds Hug the Snek PCMaster Veteran
Joined
Dec 19, 2012
Messages
2,222
Σ'εμάς ο καθηγητής ήταν λίγο περίεργος και ζητούσε μια συγκεκριμένη έκφραση σ αυτές τις ασκήσεις, που παραδόξως με βοήθησε να θυμάμαι το μπούσουλα...

Ο ορισμός της διαίρεσης γενικά είναι:
<span style="color:#0000ff">Διαιρετέος=διαιρέτης*πηλίκο + υπόλοιπο</span>
Το ίδιο πράγμα μπορείς να το πεις κι έτσι:
<span style="color:#0000ff">Διαιρετέος=υπόλοιπο+διαιρέτης*πηλίκο</span>,
δεν αλλάζει κάτι...

Τώρα, όταν πας να κάνεις μια μετατροπή και χρειάζονται διαιρέσεις, τις γράφεις όπως λέει ο ορισμός, απλώς κάθε φορά, εκφράζεις την κάθε διαίρεση, συνάρτηση της αρχικής διαίρεσης. <u>Οι διαιρέσεις μπορούν να έχουν μόνο ακέραια πηλίκα!</u> όπως εξηγεί και η kara...

Δηλαδή στο παράδειγμα σου:

123/2: 123=1+2*61 (1)
61/2: 61=1+2*30 άρα η (1) γίνεται: 123=1+2*(1+2*30)
30/2: ... αρα η (1)=> 123=1+2*(1+2*(0+2*15)
15/2
7/2
3/2
1/2 ... (1)=> 123=<span style="color:#880000">1</span>+2(<span style="color:#880000">1</span>+2(<span style="color:#880000">0</span>+2(<span style="color:#880000">1</span>+2(<span style="color:#880000">1</span>+2(<span style="color:#880000">1</span>+2(<span style="color:#bb0000">1</span>+2*0))))))

<u>Το πρώτο στοιχείο</u> του ακεραίου μέλους του αριθμού σου στο δυαδικό, είναι <u>το υπόλοιπο της τελευταίας διαίρεσης (πηλίκο=0)</u>

Άρα (123) με β=10 -> (1111011) με β=2
(ντάξ αν έκανα καμιά πράξη λάθος μη με κρεμάσεις <img src="/tongue.gif" width="" height="" alt=":p" title=":p" class="bbcode_smiley" /> )

Το κλασματικό μέλος είναι νομίζω ακόμα πιο απλό:

Πολλαπλασιάζεις τον αριθμό σου με την βάση του αριθμητικού συστήματος που θέλεις να πας και σε κάθε βήμα κρατάς το ακέραιο μέλος δλδ:

0,45*2=0,9 α(-1)=0
0,9*2=1,8 α(-2)=1
0,8*2=1,6 α(-3)=1
κτλ
Σταματάς ανάλογα με τα ζητούμενα...

'Αρα το (0,45) με β=10 -> (0,011...) με β=2

Τέλος ενώνεις τα δύο αποτελέσματα και είσαι μάγκας δλδ
(123,45) β=10 ->(1111011,011...) β=2

<span style="color:#0000bb">Γενικότερα για τις μετατροπές:</span>

<u>Από το 10αδικό σύστημα σε οποιοδήποτε άλλο "βηταδικό" σύστημα</u> κάνεις την παραπάνω διαδικασία, για ακέραιο και κλασματικό μέλος, απλά αντί για "2" βάζεις την βάση που σου ζητείται.

<u>Από οποιοδήποτε "βηταδικό" σύστημα, προς το δεκαδικό</u> κάνεις την "ανάλυση".

Αν πχ στο δικό σου παράδειγμα ο αριθμός 123,45 ήταν στο εξαδικό σύστημα(β=6) και θέλαμε να τον μετατρέψουμε στο δεκαδικό(β=10) θα κάναμε:
(123,45) με β=6 -> 3*6^0+2*6^1+1*6^2+4*6^-1+5*6^-2= (51,...) με β=10

Αν σου ζητάει να πας <u>από το 5αδικο στο 7δικο</u> πχ <u>αναγκαστικά πας μέσω 10δικου</u>
 

Chronomancy

Todd's Minion
Staff member
Joined
Oct 8, 2013
Messages
10,224
Ευχαριστώ πάρα πολύ και τους 2 σας. Το λινκ ξεκαθάρισε και τις επόμενες μετατροπές <img src="/tongue.gif" width="" height="" alt=":p" title=":p" class="bbcode_smiley" />

Για το δεκαδικό μέρος σταματάς τους πολλαπλασιασμούς όταν το ακέραιό σου γίνει 2 ή 3,4?

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

nina

Hobgoblin Captain
Joined
Jan 3, 2013
Messages
331
χωριζουμε τον αριθμο σε ακεραιο και κλασματικο μερος. Το ακεραιο το κανουμε διαδοχικες διαιρεσεις μεχρι να φτασει το πηλικο μηδεν

Το κλασματικο διαδοχικους πολλαπλασιασμους, μεχρι οσο θελουμε.

Επισυναπτω εικονα για καλυτερη κατανοηση <img src="/smile.gif" width="" height="" alt=":)" title=":)" class="bbcode_smiley" /> (αμα καταφερω και την ανεβασω...)

0vngwkj
 

nina

Hobgoblin Captain
Joined
Jan 3, 2013
Messages
331
Δυστυχως δεν τα παω καλα με το ανεβασμα εικονων.. σορι..
 
Top Bottom