У меня есть код здесь, который проверяет ввод числа на ноль и плавает:Что делает этот рубиновый код?
def integer?(input)
input.to_i.to_s == input
end
def float?(input)
input.to_f.to_s == input
end
def valid_number?(input)
integer?(input) || float?(input)
end
loop do # main loop
number1 = ''
loop do
prompt(messages('first_number', LANGUAGE))
number1 = Kernel.gets().chomp()
if valid_number?(number1)
break
else
prompt(messages('not_a_valid_number', LANGUAGE))
end
end
number2 = ''
loop do
prompt(messages('second_number', LANGUAGE))
number2 = Kernel.gets().chomp()
if valid_number?(number2)
break
else
prompt(messages('not_a_valid_number', LANGUAGE))
end
end
end
result = case operator
when '1'
number1.to_i() + number2.to_i()
when '2'
number1.to_i() - number2.to_i()
when '3'
number1.to_i() * number2.to_i()
else
number1.to_f()/number2.to_f()
end
prompt("The answer is: #{result}")
Что делает этот код делать в срок непрофессионала или в объяснении, что манекен может понять?
def integer?(input)
input.to_i.to_s == input
end
def float?(input)
input.to_f.to_s == input
end
def valid_number?(input)
integer?(input) || float?(input)
end
Любая помощь здесь? Я был бы признателен, если бы вы могли объяснить это за счет линии!
Извините, новичок здесь!
Ваш вопрос слишком широк. Вам нужно сузить его, сообщив нам, что * точно * вы * не понимаете, что вы * делаете * понимаете, каков ваш уровень знаний и т. Д. В приведенном вами коде используется очень большой процент всех функций Ruby , и совершенно непонятно, о каких из них вы говорите. Вы знаете, что такое объект? Вы знаете, что такое метод? Вы знаете, что такое сообщение? Вы понимаете разницу между методами, процедурами, функциями и другими видами подпрограмм? Вы понимаете динамический ad-hoc-полиморфизм включения? Вы знаете, что такое класс? –
Знаете ли вы, что такое определение метода? Вы знаете, что такое переменная? Вы знаете, что такое аргумент? Вы знаете, что такое параметр? Вы знаете, какова разница и соотношение между аргументом и параметром? Вы знаете, что такое boolean? Вы знаете, насколько правдивость и ложность определены в Ruby? Вы знаете, что такое оператор? Вы знаете, что строка в Ruby? Вы знаете, что такое целое число в Ruby? Вы знаете, что такое float в Ruby? Вы знаете, как синтаксис оператора относится к отправке сообщений? Вы знаете, где найти документацию Ruby? Вы знаете, как читать? –
http://meta.stackoverflow.com/questions/253894/how-to-handle-explain-how-this-code-dump-works-questions/253896#comment17104_253896 –