小甲鱼Python第六讲课后题

小甲鱼Python第六讲课后题

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

答案:1.0,Python会严格执行floor 除法;

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

答案:(a < b) and (b < c)

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

答案:0.04,也就是 1/25(幂运算操作符比其左侧的一元操作符优先级高,比其右侧的一元操作符优先级低。)

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

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

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

答案:4  ;not or and 的优先级是不同的:not > and > or

我们按照优先级给它们加上括号:(not 1) or (0 and 1) or (3 and 4) or (5 and6) or (7 and 8 and 9)== 0 or 0 or 4 or 6 or 9== 4

根据“短路逻辑”;3 and 4 == 4,而 3 or 4 == 3,所以结果是4

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

答案:因为上节课我们还没有教大家“求余”的操作,所以小甲鱼使用了“if year/400 == int(year/400)”这样的方式来“委曲求全”。

动动手答案:

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

答案:

for i in range(101):
    if i%2!=0:
        print(i,end=' ')
        i+=1
    else:
        i+=1

2. 我们说过现在的 Python 可以计算很大很大的数据,但是......真正的大数据计算可是要靠刚刚的硬件滴,不妨写一个小代码,让你的计算机为之崩溃?

print(2 ** 2 ** 32) # 一般很多机子都会在一会儿之后:Memory Overflow,内存不够用。

                           # 设计到幂操作,结果都是惊人滴。

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

答案:

flag=0
i=7
for j in range(100):


    if i%2==1 and i%3==2 and i%4==3 and i%5==4 and i%6==5 and i%7==0:
        flag=1
    else:
        i=7*(j+1)
    j+=1


if flag==1:
    print('总共的台阶数是',i)
else:
    print('在一定范围内没有对应的台阶数')



        




展开阅读全文

没有更多推荐了,返回首页