实例001:数字求和
题目:请你编写程序计算出1-m的和。例如:1+2+3=6 或 1+3+5=9
num = 0 m = int(input('请你输入终点数字:')) n = int(input('请你输入间隔数字:')) for i in range(1, m + 1, n): num += i print(num)
实例002:寻找素数
题目:素数又称质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数
例如:2、3、5、7、11、13、17......请你找出100以内的素数。
for x in range(2, 100): for y in range(2, x): if x % y == 0: break else: print(x)
实例003:数字阶乘
题目:请你输入一个正整数,并返回该数字的阶乘是多少?
方法一: n = int(input('请您输入一个正整数:') sum = 1 for i in range(1,n+1): sum*=i print(sum)
方法二: n = int(input('请您输入一个正整数:')) def a(x): if x == 1: return 1 return x * a(x-1) print(a(n))
实例004:水仙花数
题目:水仙花数是指一个三位数,
其各位数字3次幂和等于该数本身。
例如:153=1^3+5^3+3^3。
for i in range(100, 1000): x = i // 100 y = i // 10 % 10 z = i % 10 if x ** 3 + y ** 3 + z ** 3 ==i: print(i)
实例005:玫瑰花数
题目:玫瑰花数是指一个四位数,
其各位数字4次幂和等于该数本身。
例如:1634=1^4+6^4+3^4+4^4。
for i in range(1000, 10000): a = i // 1000 b = i % 1000 // 100 c = i % 100 // 10 d = i % 10 if a ** 4 + b ** 4 + c ** 4 + d ** 4 == i: print(i)
实例006:马匹驮货
题目:100匹马驮100担货,大马一匹驮3担,
中马一匹驮2担,小马两匹驮1担,
计算大、中、小马各有多少组合?
for x in range(1, 100): for y in range(1, 100): z = 100 - x - y if 3 * x + 2 * y + z / 2 == 100: print(x, y, z)
实例007:神秘数字
题目:请你找出200-300之间的三位数,各位之积为42,各位之和为12的神秘数字是多少?
for i in range(200, 300): x = x = i // 100 y = y = i // 10 % 10 z = z = i % 10 if x * y * z == 42 and x + y + z == 12: print(i)
实例008:卡普雷卡
题目:数学家卡普雷卡偶然发现铁路旁的里程碑“3025”被雷击得一分为二:
变成30与25,他敏锐地注意到:(30+25)^2=3025。请你找出10000以内的四位卡普雷卡数。
for i in range(1000, 10000): a = int(str(i)[:2]) b = int(str(i)[2:]) if (a + b) ** 2 == i: print(i)
实例009:幸运盒子
题目:一个同学抽了一个幸运数字宝盒,工作人员给出了如下提示:
是100以内的奇数、能被7整除、十位数字是个位数字的2倍
编程求这个数字可能是多少?
for i in range(1, 100): if i % 2 == 1 and i % 7 == 0 and (i // 10) / (i % 10) == 2: print(i)
实例010:幸运数字
题目:请你按题目要求找出 1—1000之间的完全幸运数要求如下:
该数是6的倍数、末尾是6、左右对称。
for i in range(1, 1000): if i % 6 == 0 and str(i) == str(i)[::-1] and str(i)[-1] == '6': print(i)
实例011:鸡兔同笼
题目:定义一个函数实现输入鸡兔总头数(h)和总脚数f,
计算当鸡数c和兔数r,如数据不合理,输出无解。
def aaa(h, f): b = f / 2 - h a = h - b if a == int(a) or b == int(b): print('鸡有{}只,兔有{}只'.format(int(a), int(b))) else: print('无解') aaa(21, 55) aaa(21, 66)
实例012:米粒棋盘
题目:在棋盘的第1格放1粒大米,第2格放2粒,第3格放4粒,
之后的每一格中的米粒数目都是相邻前一格的两倍,
一直放到最后的第64格,请你计算第64各中应放多少米?
for i in range(64): x = 2 ** i print('第64格应放米{}粒'.format(x))
实例013:自守数字
题目:自守数是指一个数的平方的尾数等于该数自身的自然数。
例如:6^2=36、25^2 =625、76^2=5776求1000以内的自守数。
for i in range(1,1000): if str(i**2)[-len(str(i)):]==str(i): print(i)
实例014:等差数和
题目:编写一个等差数列,通用式为:S=n(a1+an)/2
n为数字个数,a1为开始数字,an为结尾数字
a = int(input('请你输入开始数字是:')) b = int(input('请你输入结尾数字是:')) c = int(input('请你输入几个数字和:')) s = int(c * (a + b) / 2) print(s)
实例015:等比数和
题目:编写一个等比数列,通用式为:S=a1(1-q**n)/(1-q)
n为数字个数,a1为开始数字,q为公比数字(q≠1)。
a = int(input('请你输入开始数字是:')) q = int(input('请你输入等比公比是:')) n = int(input('请你输入几个数字和:')) if q == 1: print('输入有误,q≠1') else: s = int(a * (1 - q ** n) / (1 - q)) print(s)