Как добавить еще один год к данному вводу? - PullRequest
0 голосов
/ 27 февраля 2019

Я хочу получить вывод, чтобы он добавлял еще один год к возрасту.

Это мой код:

print "Age: "
age = gets.chomp.to_i

def age_next_year(int)
  age.each do |int|
  int += 1
end

puts "Next year I’ll be " + age_next_year(age)

Кажется, я не могу получить правильныйвыход.

Ответы [ 2 ]

0 голосов
/ 01 марта 2019

Я просто спрашиваю, но почему бы вам не сделать что-то вроде этого:

print "Age: "
age = gets.chomp.to_i + 1
printf "Next year I'll be %d\n", age
# OR
puts "Next year I'll be " + age.to_s

Это прекрасно работает для меня, и оно меньше и быстрее, чем вы.

0 голосов
/ 27 февраля 2019

Вам не нужно вызывать each, так как он предназначен для итерации массивов и у вас есть целое число.Кроме того, вам не нужно переназначать значение обратно на int локальную переменную, просто верните его из метода:

def age_next_year(int)
  int + 1
end

Другая проблема заключается в том, что вы пытаетесь + какой age_next_year методвозвращает (целое) в строку.Там требуется явное преобразование:

puts "Next year I’ll be " + age_next_year(age).to_s
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...