1.求勾股数
题目描述
求100以内的所有勾股数。
所谓勾股数,是指能够构成直角三角形三条边的三个正整数(a,b,c)。
输出格式
3 4 5
5 12 13
6 8 10
7 24 25......
60 63 87
60 80 100
65 72 97
参考代码
for x in range(1,100): #x表示第一个数字
for y in range(x+1,100):
z=int((x**2+y**2)**0.5)
if x**2+y**2==z**2 and x+y>z and x+z>y and y+z>x and z<=100:
print(x,y,z)
print(c)
2.求回文数
•问题描述
打印所有不超过256的其平方具有对称性质的数(也称回文数)。
•示例输入
无
•示例输出
11
24
39
11121
22484
26676
10110201
11112321
12114641
20240804
21244944
代码:
for x in range(1,257):
a = str(x**2)
if a[::-1]==a:
print("%d %s"%(x,a))
3.求水仙花数
问题描述
输出所有的“水仙花数”,所谓的“水仙花数”是指一个三位数其各位数字的立方和等于该数本身,例如153是“水仙花数”
参考代码:
for x in range(100,1000):
a = str(x)
b = int(a[0])
c = int(a[1])
d = int(a[2])
if x==b**3+c**3+d**3:
print(x)
4 . 问题描述
猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃发现只剩下一个桃子了。编写程序求猴子第一天摘了多少个桃子。
参考代码:
num = 1 # 桃子的个数
for x in range(9):
num = (num + 1)*2
print("第%d天,有%d个桃子"%(9-x,num))
网友评论