num = "0000001000000000011000000000000010010011000011110000000000000000"
for n in 0...num.length
temp = num[n]
dec = dec + temp*(2**(num.length - n - 1))
end
puts dec
Lorsque j'exécute ce code dans irb, le message d'erreur suivant est la sortie. et quand j'ai compilé la même logique en python, ça marche absolument bien. J'ai googlé « RangeError: bignum trop grand pour convertir en` long »: mais n'a pas trouvé la réponse pertinente S'il vous plaît me aider :(Merci à l'avanceRangeError: bignum trop grand pour être converti en `long '
RangeError: bignum too big to convert intolong' from (irb):4:in
*' from (irb):4:inblock in irb_binding' from (irb):2:in
each' from (irb):2 from C:/Ruby193/bin/irb:12:in `'
Comme je l'ai dit ci-dessous, Ruby a ce built-in sous la forme de 'num.to_i (2)' :-) –