|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
答案:
- x = 7
- i = 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('在程序限定的范围内找不到答案!')
复制代码
问题:
0、flag = 0,是为了提前定义变量吗?,否则后边的循环体调用的时候,会报错是吗?我发现好多地方都是这样的
1、while i <= 100,这里为什么限定是100?
2、整个代码的逻辑没看明白(这个可能牵扯到数学了~_~),我用
if (x%2==1)and(x%3==2)and(x%5==4)and(x%6==5)and(x%7==0):
print(x)
好像也能算出来,而且这个题目答案,第一个满足条件的是119,后边还有很多满足条件的整数
0、flag的作用是用来指示程序的限定范围内是否找到了答案,以便代码第12~15行进行判断。
1、这里是程序的限定范围,即7≤x≤7*(100+1)=707。可以通过修改i的值来修改限定范围。
2、这个代码本身就有点冗余,你的方法更加简便。如果想求得后边同样满足条件的数,可使用列表来实现。
|
|