实现这样的方法: 可以动态创建一个二维Array, 内容如下
获得: [ [1], [2,2], [3,3,3], [4,4,4,4] ] 再如: generate_array(5) 获得: [ [1], [2,2], [3,3,3], [4,4,4,4], [5,5,5,5,5] ] 使用loop do 循环
def generate_small_array n
result = []
i = 1
loop do
result.push(n)
i = i + 1
if i > n
break
end
end
return result
end
def generate_array n
result = []
i = 1
loop do
small_array = generate_small_array(i)
result.push(small_array)
i = i + 1
if i > n
break
end
end
return result
end
puts generate_array(5).inspect
使用for in
def generate_array n
result =[]
for i in (1..n)
small_array = []
for i in (1..i)
small_array.push(i)
end
result.push(small_array)
end
return result
end
puts generate_array(5).inspect

本文介绍了一种生成特定模式的二维数组的方法,通过两种不同的循环结构实现:一种使用了嵌套的loopdo循环,另一种则采用了嵌套的for循环。这两种方法均可根据指定的整数n生成一个二维数组,其中每个子数组的长度与位置对应,且填充相同数值。

426

被折叠的 条评论
为什么被折叠?



