4讲 课后题目
temp = input('请输入一个整数:')number = int(temp)
i = 1
while number:
print(i)
i = i + 1
number = number - 1
##这个是不懂怎么打出那样的效果,如果我输入2 最后2-1 不是等1了吗?怎么会有 12 的呢 2是怎么来的?
第2个代码
temp = input('请输入一个整数:')
number = int(temp)
while number:
i = number - 1
while i:
print('',end ='')
i =i - 1
j = number
while j:
print('*',end='')
j = j - 1
print()
number = number - 1 这个看不懂。可以解释一下吗?大神们 循环就是条件为真的时候反复执行循环内部的代码,
你的问题不在于这两段代码,而是没有理解循环的含义 循环就是一直循环循环体内的执行语句,直到执行条件不符时结束循环! 第一个:while后面的条件永远为真,输入2后,在IDLE里执行的是 print(i) 这条指令,所以是1,然后会继续往下走,i=i+1,number=number-1,此时number=1,条件为真,所以会执行 拼图(i),此时因为上面i=i+1=2,所以输出2,然后继续i=i+1=3,而number=1-1=0,此时条件为假所以退出循环,所以最后是输出1,2.
第二个:用8做例子,输入8 ,条件为真所以进入循环,先执行 i=number-1=7,然后执行 print(‘ ’,end=' '),输出的就是7个空格,然后 i=i-1=6,此时 j=number=8,执行print(‘*’,end=‘ ’),就是输出8个*,然后 j=j-1=7,后面在循环7次直到 i=0,j=1,此时number=1,所以在进行循环,但是因为 i=0,所以i的那个循环就退出了,只执行j的循环,就是输出一个*,number=1-1=0,整个的循环都结束,最后出现的就是课后题那里那样的效果。 暖风处处 发表于 2017-12-6 19:24
第一个:while后面的条件永远为真,输入2后,在IDLE里执行的是 print(i) 这条指令,所以是1,然后会继续 ...
拼图是print 【捂脸】
页:
[1]