Python 3.x 如何在python中使用for循环生成三角形
我正在学习一门在线课程,这门课程应该会让我学习python的计算机科学(基础)。 我正在学习“for loop”,从理论上讲,它似乎很简单。 我无法按照以下代码制作作品:Python 3.x 如何在python中使用for循环生成三角形,python-3.x,Python 3.x,我正在学习一门在线课程,这门课程应该会让我学习python的计算机科学(基础)。 我正在学习“for loop”,从理论上讲,它似乎很简单。 我无法按照以下代码制作作品: n=int( input() ) for i in range( 0, 1 ) : X = 0 for j in range( n, 0 ) : X = ( X * 10 ) + 1 print( X ) 输出应为: 111 11 1 但是,当我运行它时,我得到以下错误: "Di
n=int( input() )
for i in range( 0, 1 ) :
X = 0
for j in range( n, 0 ) :
X = ( X * 10 ) + 1
print( X )
输出应为:
111
11
1
但是,当我运行它时,我得到以下错误:
"Did not pass tests. Please check details below and try again.
Results for test case 1 out of 2
Input:
3
Program executed without crashing.
Program output:
0
Expected this correct output:
111
11
一,
如果我尝试更改(n,0),我会将其输出:
1
11
111
有人能帮我吗
我做到了 你想要这样的东西吗 范围(n)内的i的
:
打印('1'*(n-i))
对于范围(n,0)中的j,语句运行0次,因为n已经大于0
对范围(n,0,-1)内的j尝试:
第三个参数-1表示第一个和第二个迭代器之间的步骤
这意味着每次迭代它都会减少1
这将是您正在寻找的解决方案
n = int(input())
for i in range(0,n):
for _ in range(0, n-i):
print('1',end = '')
print()
你是说范围(n)
而不是范围(n,0)
?现在它从n
一直迭代到0
,因此如果n
>=0,它将根本不会迭代。输出为:-11--11您是否动态获取输入?程序给我输入3。它工作并给我您想要的输出。我对它进行了编辑,以使输入动态化。现在试试,输出是:11/11/11对于n=3,range函数应该返回一个生成器,它给出[0,1,2],因此n-i应该给出[3,2,1]。所以我看不出你是如何得到三个“11”输出的。
n = int(input())
for i in range(0,n):
for _ in range(0, n-i):
print('1',end = '')
print()