python第6课 课后作业 算台阶
x = 7i = 1
flag = 0
while i <= 100:
if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):
flag = 1
else:
x = 7 * (i+1) # 根据题意,x一定是7的整数倍,所以每次乘以7
i += 1
if flag == 1:
print('阶梯数是:', x)
else:
print('在程序限定的范围内找不到答案!')
求人解析,看不懂这个代码~~~~·{:10_266:}{:10_266:}{:10_266:} x = 7
i = 1
flag = 0
while i <= 100: #当i<= 100 执行while里面的语句(一直循环,直到i>100跳出循环)
if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5): #假如x对2求余,的余数等于1,且x对3求余,的余数等于2.....
flag = 1 #执行:把1赋值给flag
else: #if条件不成立,执行下面语句
x = 7 * (i+1) # 根据题意,x一定是7的整数倍,所以每次乘以7 #把7*(i +1) 赋值给x
i += 1 #i = i+1
if flag == 1:
print('阶梯数是:', x)
else:
print('在程序限定的范围内找不到答案!') 楼上正解 ButcherRabbit 发表于 2017-6-6 17:36
x = 7
i = 1
flag = 0
好吧 可能是我的提问 有问题~~~对不起,请问这个是怎么算出来结果的??为什么要假设一个flag?这个算法是怎么一回事??我是这个没明白··· ButcherRabbit 发表于 2017-6-6 17:36
x = 7
i = 1
flag = 0
还有个问题为什么只循环100次····万一100次找不到答案是不是就要循环200次2000次?为什么x=7*(i+1)??i+1 是 什么意思??
cyangyy 发表于 2017-6-7 09:06
还有个问题为什么只循环100次····万一100次找不到答案是不是就要循环200次2000次?为什么x=7* ...
http://www.runoob.com/python/python-while-loop.html
希望能帮到你,你对while循环不是很理解,多看看这个教程就理解了
while条件: 当条件成立执行while里面的值,你只要记住while 0: 和while Flase:两个不去执行while语句里面的循环就行
这题的whilei<=100:且while语句里面i = i +1 对吧,i = 0 ,while 0<=100对吧,执行while里面的语句。i = 0+1 ;while 1<=100对吧,执行while里面的语句。i = 1+1 ;依次类推,while 101 <=100:条件不成立,就不执行while里面的语句喽
flag = 0 是为了if flag == 1:做判断用的,方便输出阶梯数x
页:
[1]