Python总结暨小甲鱼零基础学Python课后习题(六)

0. Python 的 floor 除法现在使用 “//” 实现,那 3.0 // 2.0 您目测会显示什么内容呢?

Python 这里会义无反顾地执行 floor 除法原则,答案是:1.0

如果回答是 1.5 那么很遗憾,您受到 C 语言的影响比较大

1. a < b < c 事实上是等于?

(a<b)and(b<c)

2. 不使用 IDLE,你可以轻松说出 5 ** -2 的值吗?

五的负二次方即0.04

3. 如何简单判断一个数是奇数还是偶数?

使用求余可以简单得到答案:能被 2 整除为偶数,所以 x % 2 == 0,否则为奇数。

4. 请用最快速度说出答案:not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9

(not 1) or (0 and 1) or (3 and 4) or (5 and 6) or (7 and 8 and 9)

== 0 or 0 or 4 or 6 or 9

==4

那为什么是4呢?

not or and 的优先级是not and or

以及3 or 4 == 3

关于优先级的问题:

当然我们始终可以使用圆括号更改默认优先级

5. 还记得我们上节课那个求闰年的作业吗?如果还没有学到“求余”操作,还记得用什么方法可以“委曲求全”代替“%”的功能呢?

使用了“if year/400 == int(year/400)”这样的方式来“委曲求全”。

6. 请写一个程序打印出 0~100 所有的奇数。

7.题目:请编程求解该阶梯至少有多少阶?

爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。

法一:

num=int(input("请输入一个整数:"))

for i in range(num):

print(" "*(num-1-i)+"*"*(num-i))

for i in range(100):

if i%2!=0:

print(i)

for i in range(19999):

if i%2==1 and i%3==2 and i%5==4 and i%6==5 and i%7==0:

print(i)

break

法二:

1.    x = 7

2.     i = 1

3.     flag = 0

4.      

5.     while i <= 100:

6.         if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):

7.             flag = 1

8.         else:

9.             x = 7 * (i+1) # 根据题意,x一定是7的整数倍,所以每次乘以7

10.       i += 1

11.    

12.   if flag == 1:

13.       print('阶梯数是:', x)

14.   else:

15.       print('在程序限定的范围内找不到答案!')

猜你喜欢

转载自blog.csdn.net/weixin_41809192/article/details/81748065