打印出所有的“水印花数”,所谓“水印花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水印花数”,因为153=1的三次方+5的三次方+3的三次方。需求:打印所有“水印数”,例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方思路:利用for循环控制100-999个数,每个数分解出个位,十位,百位。for n in range(100,1000):i = n // 100 #百位数_________________ #十位数k = n % 10 #个位数if n == i ** 3 + j ** 3 + k ** 3:print(n)
A. j = (n % 10) // 10
B. j = (n // 10) % 10
C. j = (n / 10) % 10
D. j = (n % 10) % 10
查看答案
:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5.思路:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。from sys import stdoutn = int(input("input number:"))print ("n = %d" % n)for i in range(2,n + 1):while __________if n % i == 0:stdout.write(str(i))stdout.write("*")n = n / ielse:breakprint( "%d" % n)
A. n B. n != i:
C. n == i:
D. n >i:
利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-80分之间的用B表示,60分以下的用C表示。思路:(a>b)?a:b这是条件运算符的基本例子。score = int(input('input score:'))if score >= 90:grade = 'A'______________grade = 'B'elif score >= 70:grade = 'C'elif score >= 60:grade = 'D'else:grade = 'E'print ('%d belongs to %s' % (score,grade))
A. elif score > 80:
B. elif score < 80:
C. elif score <= 80:
D. elif score >= 80:
求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+222...2(此时共有5个数相加),几个数相加有键盘控制。需求:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。思路:先计算出每一项的值。Tn = 0Sn = []n = int(input('n = :'))a = int(input('a = :'))for count in range(n):#先循环计算每一项的值Tn = Tn + a_______________Sn.append(Tn)print TnSn = reduce(lambda x,y : x + y,Sn)#在计算和print( Sn)
A. a = a // 10
B. a = a + 10
C. a = a * *10
D. a = a * 10
一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该书是多少?import mathfor i in range(10000):x = int(math.sqrt(i + 100))y = int(math.sqrt(i + 168))if ____________________________________:print(i)
A. (x * x == i + 100) and (y * y == i + 168)
B. (x * x == i + 100) && (y * y == i + 168)
C. (x *2 == i + 100) and (y **2 == i + 168)
D. (x * x = i + 100) and (y * y = i + 168)