使用嵌套的while循环和for循环,根据输入的数字,输出一个数字三角形。每一行的数字从1开始递增,
直到该行的行号为止,然后再递减回到1。例 输入5 输出如下结果
1
121
12321
1234321
123454321
可以使用嵌套的循环实现:
n = int(input("请输入一个数字:"))
for i in range(1, n+1): # 外层循环控制行数
for j in range(1, i+1): # 内层循环递增输出
print(j, end="")
for k in range(i-1, 0, -1): # 内层循环递减输出
print(k, end="")
print() # 换行输出
输出结果如下:
1
121
12321
1234321
123454321
for循环和while循环的嵌套写法:
def func(n):
for i in range(n):
str1 = ''
num = 0
while True:
if num == i + 1:
break
num += 1
str1 += str(num)
while True:
if num <= 1:
break
num -= 1
str1 += str(num)
print(str1)
if __name__ == '__main__':
func(9)
【以下回答由 GPT 生成】
解决方案如下:
# 获取输入的行数
n = int(input("请输入行数:"))
# 使用嵌套循环输出数字三角形
for i in range(1, n+1):
# 循环输出每一行的数字
for j in range(1, i+1):
print(j, end="")
# 循环逆序输出每一行的数字
for j in range(i-1, 0, -1):
print(j, end="")
# 输出换行符
print()
运行上述代码,用户输入行数为5时,将输出以下结果:
1
121
12321
1234321
123454321
解释:
嵌套的for循环用于控制输出数字三角形的每一行。外层for循环用于控制行数,内层for循环用于控制每行的数字。
每一行从1开始递增,直到该行的行号为止,再递减回到1。内层for循环第一部分用于输出递增的数字,第二部分用于递减的数字。
通过print函数的end=""
参数,可以实现在同一行输出数字而不换行。最后在内层循环结束后输出换行符,以开始新的一行的输出。
【相关推荐】