好吧,我是Python初学者 要使用嵌套循环打印的图案:
1@
1#3#
1@3@5@
1#3#5#7#
(优先使用For循环) 谢谢
我尝试过的代码:
n = int(input("Enter no:"))
for i in range(1, n + 1):
for j in range(1, 2 * i):
if j % 2 == 0:
print("#", end="")
else:
print(str(j), end="@")
print()
输出:
Enter no:7
1@
1@#3@
1@#3@#5@
1@#3@#5@#7@
1@#3@#5@#7@#9@
1@#3@#5@#7@#9@#11@
1@#3@#5@#7@#9@#11@#13@
“@”似乎每一行都出现,而“#”并不是每第二行打印一次
正如@Scott Hunter在评论中指出的那样,偶数行和奇数行之间的差异应该基于
i
的值而不是j
的值。
这是您的代码,经过上述修改以及更新的打印:
n = int(input("Enter no:"))
for i in range(1, n + 1):
for j in range(1, 2 * i, 2):
if i % 2 == 0:
print(f"{j}#", end="")
else:
print(f"{j}@",end="")
print()
这是我使用输入值
7
运行代码时得到的输出:
1@
1#3#
1@3@5@
1#3#5#7#
1@3@5@7@9@
1#3#5#7#9#11#
1@3@5@7@9@11@13@