Обработка рубина Float, как Java - PullRequest
0 голосов
/ 24 июля 2011

если я создаю функцию, которая просто возвращает двойное значение, подобное этому

double example () 
{
   double i =  999999999;
   return i;
}

вывод будет:

пример () => 9.99999999E8

я не знаю, как получить его с помощью ruby ​​.. кто-нибудь может мне помочь?

Ответы [ 2 ]

1 голос
/ 24 июля 2011

Чтобы просто превратить его в число с плавающей точкой, вы можете использовать to_f, для отображения в научной нотации строка формата поможет:

>> 999999999.to_f #=> 999999999.0
>> "%E" % 999999999 #=> "1.000000E+09"
1 голос
/ 24 июля 2011

Для вашего примера используйте литерал с плавающей запятой вместо целочисленного. То есть введите 999999999.0 или 9.99999999e8 вместо 999999999. Если вместо этого в переменной (например, x), используйте x.to_f:

def f()
    999999999.0
end

или

def f()
    (999999999).to_f
end
...