| 
 | 
 
 
 楼主 |
发表于 2018-9-9 09:16:44
|
显示全部楼层
 
 
 
补作业09、 
1. 编写一个程序,求 100~999 之间的所有水仙花数。 
 
如果一个 3 位数等于其各位数字的立方和,则称这个数为水仙花数。例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一个水仙花数 
for i in range(100, 1000): 
    sum = 0 
    temp = i 
    while temp: 
        sum = sum + (temp%10) ** 3 
        temp //= 10         # 注意这里要使用地板除哦~ 
    if sum == i: 
        print(i) 
这道题不仅仅体现了编程能力还有数学思维,鱼哥就是吊 
 
 
有红、黄、蓝三种颜色的求,其中红球 3 个,黄球 3 个,绿球 6 个。先将这 12 个球混合放在一个盒子中,从中任意摸出 8 个球,编程计算摸出球的各种颜色搭配。 
print('red\tyellow\tgreen') 
for red in range(0, 4): 
    for yellow in range(0, 4): 
        for green in range(0, 7): 
        #甲鱼哥这个地方写的是2,7。我觉得是出入数学思维的考虑。这里0,7或者2,7不影响下面的输出结果,因为下面是有输出的判断条件的。但是出于数学思维甲鱼哥还是更胜一筹 
            if red + yellow + green == 8: 
                # 注意,下边不是字符串拼接,因此不用“+”哦~ 
                print(red, '\t', yellow, '\t', green) |   
 
 
 
 |