Итак, я пробую код для преобразования чисел в строки. Однако я заметил, что в некоторых случаях он не сохраняет последние два десятичных знака. Например, я набираю 1.01 и 1.04 для добавления, и я возвращаюсь 2.04. Если я наберу только 1.05, он сохранит число и вернет его точно. Я понимаю, что происходит, вещи округляются. Я не знаю, как не допустить его округления. Должен ли я просто посылать (1.01 + 1.04) себе только один вход?
Внимание! Я еще не пробовал, поэтому не знаю, поддерживается ли он:
user_input = (1.04+1.01) #entry from user
user_input = gets.to_f
user_input.to_test_string
Что у меня так далеко:
class Float
def to_test_string
cents = self % 1
dollars = self - cents
cents = cents * 100
text = "#{dollars.to_i.en.numwords} dollars and #{cents.to_i.en.numwords} cents"
puts text
text
end
end
puts "Enter two great floating point numbers for adding"
puts "First number"
c = gets.to_f
puts "Second number"
d = gets.to_f
e = c+d
puts e.to_test_string
puts "Enter a great floating number! Example 10.34"
a = gets.to_f
puts a.to_test_string
Спасибо за помощь! Разместите код, чтобы я мог попробовать!