num = "0000001000000000011000000000000010010011000011110000000000000000"
for n in 0...num.length
temp = num[n]
dec = dec + temp*(2**(num.length - n - 1))
end
puts dec
Wenn ich diesen Code in Irb ausführen, ist die folgende Fehlermeldung die Ausgabe. und wenn ich die gleiche Logik in Python kompiliert habe, funktioniert es absolut gut. Ich habe gegoogelt „Auslöser Range: bignum zu groß in` lange zu konvertieren ': aber nicht die entsprechende Antwort gefunden haben Bitte helfen Sie mir :(Vielen Dank im VorausRangeError: bignum zu groß, um in `long 'umzuwandeln
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 `'
Wie ich unten gesagt habe, hat Ruby das in Form von 'num.to_i (2)' eingebaut :-) –