спасибо за клик. Я изучаю Ruby по этому руководству.
А вот немного кода для метода, который дает квадратные значения.
def first_square_numbers(number_of_squares)
squares = []
idx = 0
while idx < number_of_squares
squares.push(idx * idx)
idx = idx + 1
end
return squares
end
puts("How many square numbers do you want?")
number_of_desired_squares = gets.to_i
squares = first_square_numbers(number_of_desired_squares)
idx = 0
while idx < squares.length
puts(squares[idx])
idx = idx + 1
end
# Output:
# How many square numbers do you want?
# 7
# 0
# 1
# 4
# 9
# 16
# 25
# 36
Мой вопрос заключается в том, чтобы распечатать вывод вместо этого кода:
idx = 0
while idx < squares.length
puts(squares[idx])
idx = idx + 1
end
Могу я просто поставить это?
puts(squares)
Я попробовал и получил тот же результат, но я не уверен, что "более правильно" и почему.
Спасибо!
puts
печатает массивы по одному элементу в строке, так что ваш код абсолютно правильный. По мере изучения Ruby вы обнаружите, что все циклы не нужны, и мы можем написать весь скрипт всего в 3 строки. - person Aetherus   schedule 21.08.2016