|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : octobre 2004 Messages : 114 ![]() |
Rebonjour,
J'ai encore une seconde et dernière question à poser pour la soirée Comment peut-on additionner 2 nombres binaires en ruby ? Après avoir fait plusieurs tentatives, lorsque j'écris quelque chose comme ça : 1001 + 1101, ruby prend mes valeur pour des nombres décimaux et rien ne fonctionne. Merci à vous |
|
|
00
|
|
|
#2 | |
|
Expert Confirmé Sénior
![]() ![]() Inscription : décembre 2003 Messages : 3 716 ![]() |
en Ruby, un nombre binaire se présente comme suit :
Citation:
PB
__________________
Globalement inoffensif Merci de respecter les règles du forum. Aucune question technique par MP ! _______________________________________________________________________ La rubrique Ruby / Rails recrute. Contactez moi ! _______________________________________________________________________ Cours Ruby et Ruby on Rails (RoR) - FAQ Ruby / Rails - Livres Ruby / Rails Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS Tutoriaux HTML/CSS et PHP |
|
|
|
00
|
|
|
#3 |
|
Membre actif
![]() Inscription : septembre 2003 Messages : 172 ![]() |
Bonjour,
Pour écrire un binaire en Ruby, il faut ajouter "0b" en tête du nombre : >> 0b1001 + 0b1101 => 22 Par défaut, les nombres s'affichent en décimal. Si on veut un résultat en base 2, il faut le convertir en chaine: >> (0b1001 + 0b1101).to_s(2) => "10110" >> Côme |
|
|
00
|
|
|
#4 | ||
|
Membre du Club
![]() Inscription : octobre 2004 Messages : 114 ![]() |
Merci pour votre réponse. Cette écriture me fait penser au temps de la TI89... qui est toujours d'actualité, d'ailleur.
Cependant, j'avoue que je n'arrive toujours pas à régler mon problème. Je m'explique : Pour que Ruby interprète un nombre comme étant en base binaire, je dois lui ajouter "0b". Mais pour cela, il faut que je convertisse le nombre initial en une chaîne de caractères. Ainsi, je peux écrire ça : Code :
D'où mon problème. A l'inverse, pour que Ruby comprenne qu'un nombre est hexadécimal (par exemple), il me suffit de lui ajouter la méthode .hex... mais la méthode .bin n'existe pas à priori. |
||
|
|
00
|
|
|
#5 | ||
|
Expert Confirmé Sénior
![]() ![]() Inscription : décembre 2003 Messages : 3 716 ![]() |
faut savoir...
Code :
a = 10 # c'est de la base 10 pour Ruby ça... Code :
__________________
Globalement inoffensif Merci de respecter les règles du forum. Aucune question technique par MP ! _______________________________________________________________________ La rubrique Ruby / Rails recrute. Contactez moi ! _______________________________________________________________________ Cours Ruby et Ruby on Rails (RoR) - FAQ Ruby / Rails - Livres Ruby / Rails Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS Tutoriaux HTML/CSS et PHP |
||
|
|
00
|
|
|
#6 |
|
Membre du Club
![]() Inscription : octobre 2004 Messages : 114 ![]() |
Merci titoumimi
![]() J'n'avais pas pensé à la méthode .to_i(2)... c'est bougrement intelligent ![]() Bonne fin de journée. |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com