返回值有问题

时间:2015-06-21 22:50:11

标签: ruby

我正在学习当前卡住的codecademy课程,不知道如何继续 - 这是关于返回值。

说明如下:

编写一个以整数作为参数的方法,并返回十倍的整数倍。在定义代码后调用代码中的times_ten并打印出其返回值。

脚本中给出的内容是:

def times_ten(integer)
  # your code here
end

# call times_ten here

这是它给出的例子,但我很难理解:

def first_squares(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_squares = gets.to_i
squares = first_squares(number_of_squares)

idx = 0
while idx < squares.length
  puts(squares[idx])
  idx = idx + 1
end

感谢您的帮助

3 个答案:

答案 0 :(得分:1)

应该是:

def ten_times(n)
  n*10 # you don't have to use 'return' explicitly
end

ten_times(n) - 但是放入一个实际的整数而不是n(或者你可能需要根据他们的需要放置或打印它)

你的例子与你的结果并没有关系。

答案 1 :(得分:0)

示例脚本应该是这样的:

def ten_times(integer)
  # integer * 10 #for implicit return 
  return integer * 10 #for explicit return
end

print ten_times(any number you want goes in here)

答案 2 :(得分:0)

您可以在www.rubyplus.biz上运行以下代码:

隐性回报:

def times_ten(integer)
  integer * 10
end

p times_ten(1)

明确的回报:

def times_ten(integer)
  return integer * 10
end

p times_ten(2)