在Ruby中打印一些东西

时间:2017-03-22 22:59:51

标签: ruby

我需要编写一个方法,将一个数字作为参数并在一行中返回该数量的星号例如,输入5返回:应返回" *****"所有在同一条线上

到目前为止,我所拥有的只是......

member_count = 0
#loop into the data json object to get name (household name)
for h in data['info']['name']:
    # we loop into the member object
    for member in data['members']:
        #add the looped member to our counter
        member_count += 1
        #print the household and the total number of it's members
        print h, member_count

2 个答案:

答案 0 :(得分:2)

  

编写一个以数字作为参数的方法

首先,你已经编写了一个方法,但目前它不需要参数,你需要修复它。

您需要知道的其他事情是类String包含方法#*,其中#表示实例方法。这意味着您可以创建任何所需字符串的倍数。 输入'a' * 5将返回'aaaaa'

答案 1 :(得分:1)

实施例

有时通过示例更容易学习:

puts 'a' * 2 #=> aa
puts 'b' * 3 #=> bbb
puts 'c' * 5 #=> ccccc

因此,如果您想要*打印,请写下:

puts '*' * 7 #=> *******

定义方法

定义一个带有一个参数的方法:

def stars(n)
  puts n
end  

要调用此方法:

stars(5)  #=> 5
stars(66) #=> 66

这应该足以让您能够根据需要构建方法。另请注意,在Ruby中,我们通常使用两个空格进行缩进。