1.输入一个十进制数,输出二进制、八进制、十六进制
a = int(input('请输入一个十进制整数:')) print(a,'转化的二进制为',bin(a))
print(a,'转化的八进制为',oct(a)) print(a,'转化的十六进制为',hex(a)) # 请输入一个十进制整数:12 # 12
转化的二进制为 0b1100 # 12 转化的八进制为 0o14 # 12 转化的十六进制为 0xc
2.输入华氏温度,输出摄氏温度,公式为:C=5/9*(F-32)
f=int(input('请输入华氏温度:')) c=5/9*(f-32) print('摄氏温度为%.2f'%c) # 请输入华氏温度:75 #
摄氏温度为23.89
3.键盘输入两个整数a和b,合并成一个新四位数,例如:a=54,b=12,c=5142
a=int(input('请输入一个两位数整数:')) b=int(input('请输入一个两位数整数:')) if a>=100 and b>=100:
print('输入数据有误,请重新输入!') elif a<=10 and b<=10: print('输入数据有误,请重新输入!') else:
c=a//10*1000+b//10*100+a%10*10+b%10 print('合成的新四位数为:',c) # 请输入一个两位数整数:54 #
请输入一个两位数整数:12 # 合成的新四位数为: 5142
4.发工资遇到一个问题,根据每个人工资总额计算钞票面值的张数,且总张数最少。如:15896
a=int(input('请输入你的工资总额:')) print('100元的张数为:',a//100)
print('50元的张数为:',a%100//50) print('20元的张数为:',a%100%50//20)
print('10元的张数为:',a%100%50%20//10) print('5元的张数为:',a%100%50%20%10//5)
print('1元的张数为:',a%100%50%20%10%5) # 请输入你的工资总额:15896 # 100元的张数为: 158 # 50元的张数为:
1 # 20元的张数为: 2 # 10元的张数为: 0 # 5元的张数为: 1 # 1元的张数为: 1
5.输入三角形边长,输出面积:

其中s=(a+b+c)/2
import math a = int(input('请输入边长:')) b = int(input('请输入边长:')) c =
int(input('请输入边长:')) s = (a+b+c)/2 area = math.sqrt(s*(s-a)*(s-b)*(s-c))
print('面积为:',area) # 请输入边长:3 # 请输入边长:4 # 请输入边长:5 # 面积为: 6.0
6.输入两个数,输出最大值
a=int(input('请输入第一个值:')) b=int(input('请输入第二个值:')) max=a if a<b: max=b
print('最大值为:',max) # 请输入第一个值:12 # 请输入第二个值:23 # 最大值为: 23
7.输入一个整数,判断奇偶数
a = int(input('请输入一个整数:')) if a%2==0: print('该数是偶数') else: print('该数是奇数') #
请输入一个整数:12 # 该数是偶数
8.判断一个数能被7或11整除,但不能同时被7或11整除
a = int(input('请输入一个整数:')) if (a%7==0 or a%11==0) and a%77!=0: print('yes')
else: print('no') # 请输入一个整数:7 # yes
9.判断闰年:可被4整除,不能被100整除,可被400整除
y = int(input('请输入一个四位数年份:')) if y%4==0 and y%100!=0 or y%400==0:
print('该年是闰年') else: print('该年是平年') # 请输入一个四位数年份:2020 # 该年是闰年
10. 输入三个整数,降序输出:
a = int(input('请输入第一个整数:')) b = int(input('请输入第二个整数:')) c =
int(input('请输入第三个整数:')) if a>b>c: print(a,b,c) elif a>c>b: print(a,c,b) elif
b>c>a: print(b,c,a) elif b>a>c: print(b,a,c) elif c>a>b: print(c,a,b) else:
print(c,b,a) # 请输入第一个整数:3 # 请输入第二个整数:4 # 请输入第三个整数:2 # 4 3 2
11.输入一个百分制成绩,输出等级
a = int(input('请输入一个百分制成绩:')) if a <= 0 or a > 100: print('输入数据有误,请重新输入!')
elif 100 >= a >= 90: print('优秀') elif 80 <= a < 90: print('良好') elif a >= 60:
print('及格') else: print('不及格') # 请输入一个百分制成绩:79 # 及格
12.计算下列多项式的值:

sum=1 for i in range(2,101): sum = sum + 1 / i print('%.6f'%sum) # 5.187378
13.计算下列多项式的值

sum = 1 f = -1 for i in range(2,101): sum= sum+1/i*f f = -f print('%.6f'%sum)
# 0.688172
14.计算下列多项式的值

sum = 1 num = 1 for i in range(2,101): num = num +i sum = sum + 1/num
print('%.6f'%sum) # 1.980198
15.计算下列多项式的和

z = 3 m = 2 t = 0 sum = 0 for i in range(20): t = z z = m+z m = t sum = sum +
z/m print('%.6f'%sum) # 32.396329
16.计算π的近似值公式

pi = 1 f = -1 i = 3 while 1/i>1e-6: pi = pi +1/i*f f = -f i = i+2
print('pi=%.6f'%(pi*4)) # pi=3.141591
17.用泰勒级数计算e的近似值

sum = 1 t = 1 i = 1 while 1/t>1e-6: t = t*i sum = sum + 1/t i += 1
print('sum=%.6f'%sum) # sum=2.718282
18.计算a+aa+aa+aaa…aaa的值,计算前六项和,a=2
a = 2 sum = 0 for i in range(6): sum = sum + a a = a*10 + 2 print('sum =
',sum) # sum = 246912
19.计算r=1到r=10时的圆的面积,直到面积大于100为止
import math as a for r in range(1,11): area = a.pi*r*r if area>100: break
print('r:',r,'area: is:%.6f'%area) # r: 6 area: is:113.097336
20.将100-150之间的不能被3整除的数输出,一行输出10个数
i = 0 for n in range(100,151): if n%3 == 0: continue print(n,end=' ') i+= 1 if
i%10 == 0: print() # 100 101 103 104 106 107 109 110 112 113 # 115 116 118 119
121 122 124 125 127 128 # 130 131 133 134 136 137 139 140 142 143 # 145 146 148
149
21.找出2,3,5的最小公倍数
for i in range(1, 100): if i % 2 == 0 and i % 3 == 0 and i % 5 == 0:
print('%d是2,3,5的最小公倍数' % i) break else: print('未找到!') # 30是2,3,5的最小公倍数
22.输入整数,判断是否为素数:
# 法1 p = int(input('请输入一个正整数:')) if p<2: # 保证输入数据大于2 print('请输入大于2的正整数!')
else: for i in range(2,p): if p%i == 0: print('平数') break else: # 循环顺利结束后执行
print('素数') # 请输入一个正整数:12 # 平数 # 法2 p = int(input('请输入一个正整数:')) i = 2 if p<2: #
保证输入数据大于2 print('请输入大于2的正整数!') else: while p%i !=0: # 检测结果是否为非0 i = i+1 if i ==
p: print('素数') else: print('平数') # 请输入一个正整数:11 # 素数
23.输出100以内的素数
for i in range(2,100): #遍历2-99 for j in range(2,i): if i%j == 0: break else:
print(i,end=' ') # 输出素数 # 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67
71 73 79 83 89 97
24.输出200-400的非素数
t = 0 for m in range(200, 400): for n in range(2, m): if m % n == 0: print(m,
end=' ') t = t+1 if t%10==0: print() break
25.输出大于s且紧随s的k个素数
s = int(input('请输入起始值:')) k = int(input('请输入需要的素数个数:')) i = s + 1 t = 0 #
计数器,记录找到的素数个数 while t < k: # 当自己找到的素数个数t小于指定个数k的时候,继续寻找 for j in range(2, i): #
判断i是否为素数 if i % j == 0: break else: t = t + 1 # 记录找到的素数个数 print(i, end=' ') #
输出素数 i = i + 1 # 继续下一个数的寻找 # 请输入起始值:12 # 请输入需要的素数个数:3 # 13 17 19
26.输入100以内被9整除,余数为2的数,计算其平均值的平方根并输出
a = 0 t = 0 # 计数器 for i in range(100): if i % 9 == 2: # 计算对9取余,余数为2
print(i,end=' ') a = a + i # 计算和值 t = t + 1 # 记录个数 print('\n
a=%.2f'%((a/t)**0.5)) # 2 11 20 29 38 47 56 65 74 83 92 # a=6.86
27.输出水仙花数,一个三位数,每位立方和等于原值
for i in range(100,1000): if (i%10)**3 + (i//10%10)**3 + (i//100)**3 ==i:
print('水仙花数:',i) # 水仙花数: 153 # 水仙花数: 370 # 水仙花数: 371 # 水仙花数: 407
28.输出1000以内的完数,完数:因子之和等于原值,如:6==1+2+3
for i in range(6,1000): #遍历0-999 sum = 0 # 每判断一个i,必须先清零其因子之和 for j in
range(1,i): # 寻找因子 if i%j == 0: sum = sum + j # 计算因子之和 if sum==i: print(i,end='
') # 6 28 496
29.输出100以内的同构数,同构数:一个正整数出现在它的平方书的右侧则为同构数。
如:5==25  6==36  25==625
for i in range(100): # 100以内同构数平方后可能为2位数或者3位数 if i==i*i%10 or i==i*i%100:
print(i,end=' ') # 0 1 5 6 25 76
30.输出200以内的回文数字
for i in range(200): t = 0 # 倒置后数 m = i while m > 0: #对i进行整数倒置 t = t*10 + i%10
m=m//10 if t == i: print(i,end=' ') # 0 1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77
88 99 111
31.求整数a与b的最小公倍数
# 法1: a = int(input('请输入第一个整数:')) b = int(input('请输入第二个整数:')) i = 1 while 1: #
循环恒真时执行下列语句 if i % a == 0 and i % b == 0: print('最小公倍数:', i) break #
第一次找到公倍数就跳出,保证是最小公倍数 i = i + 1 # 请输入第一个整数:12 # 请输入第二个整数:23 # 最小公倍数: 276 # 法2 a
= int(input('请输入第一个整数:')) b = int(input('请输入第二个整数:')) i = 0 while 1: #
循环恒真时执行下列语句 i += a # i默认是a的倍数, if i % b == 0: print('最小公倍数:', i) break #
第一次找到公倍数就跳出,保证是最小公倍数 # 请输入第一个整数:12 # 请输入第二个整数:42 # 最小公倍数: 84
32.求整数x和y的大公约数以及最小公倍数
x = int(input('请输入第一个整数:')) y = int(input('请输入第二个整数:')) l = x * y # l是最小公倍数
while x % y != 0: # 辗转相除法 t = x % y x = y y = t g = y # g是最大公约数 l = l // g
print('最大公约数:', g, '最小公倍数', l) # 请输入第一个整数:12 # 请输入第二个整数:23 # 最大公约数: 1 最小公倍数 276
33.在键盘输入四位数整数,转换为英文单词输出。如:1024  one zero two four
a = int(input('请输入一个四位数整数:')) t = 1000 if a >= 1000 and a < 10000: while t >
0: if a // t % 10 == 0: print('zero', end=' ') elif a // t % 10 == 1:
print('one', end=' ') elif a // t % 10 == 2: print('two', end=' ') elif a // t
% 10 == 3: print('three', end=' ') elif a // t % 10 == 4: print('four', end='
') elif a // t % 10 == 5: print('five', end=' ') elif a // t % 10 == 6:
print('six', end=' ') elif a // t % 10 == 7: print('seven', end=' ') elif a //
t % 10 == 8: print('eight', end=' ') elif a // t % 10 == 9: print('nine', end='
') t = t // 10 else: print('您输入的数据有误') # 整数由左向右拆分 # 请输入一个四位数整数:1024 # one zero
two four
34.fibonacci数列,古典数学问题:一对兔子,出生后第三个月都生出一对兔子,小兔子到第三个月又生出一对兔子,兔子不死,问兔子的出生规律:1 1 2
3 5 8 13……
a1 = 1 a2 = 1 for i in range(6): print(a1,a2,end=' ') a1 = a1 + a2 a2 = a1 +
a2 # fibonacci:当前项等于前两项之和 # 1 1 2 3 5 8 13 21 34 55 89 144
35.计算fibonacci数列中大于t的最小值,如:t = 6,输出8
a1 = 0 a2 = 1 a3 = 1 t = int(input('请输入需要的t的大小:')) while a3 <= t: a1 = a2 a2 =
a3 a3 = a1 + a2 print('大于t的fibonacci最小值为:', a3) # 请输入需要的t的大小:4 #
大于t的fibonacci最小值为: 5
36.有一张足够大的纸,厚度为0.09mm,对折多少次后超过8848m(珠穆朗玛峰高度)
t = 0 h = 0.09e-3 # 纸的厚度,单位统一为米 while 1: h = h * 2 # 对折,厚度乘2 t = t + 1 #
记录对折次数 if h>8848: break print('对折了',t,'次') # 对折了 27 次
37.爱因斯坦阶梯问题,多级阶梯,每步跨2阶余1阶、跨3阶余2阶、跨5阶余4阶、跨6阶余5阶、跨7阶正好到顶。一共多少阶?
i = 7 while 1: if i%2==1 and i%3==2 and i%5==4 and i%6==5 : break i +=7
print('阶梯总数为:',i) #119
38.百钱买百鸡问题。鸡翁值钱5,鸡母值钱3,鸡雏3值1钱,百钱买白鸡,鸡翁,鸡母,鸡雏各几何?
for c in range(101): for h in range(101): for ch in range(101): if c + h + ch
==100 and c*5 + h*3 + ch//3 == 100 and ch%3 ==0:
print('公鸡=',c,'只','母鸡=',h,'只','小鸡=',ch,'只') # 公鸡= 0 只 母鸡= 25 只 小鸡= 75 只 # 公鸡= 4
只 母鸡= 18 只 小鸡= 78 只 # 公鸡= 8 只 母鸡= 11 只 小鸡= 81 只 # 公鸡= 12 只 母鸡= 4 只 小鸡= 84 只
39.搬砖问题:36个人36块砖,男4女3,小孩2人1块,一次性搬完,需要各多少人?
for m in range(10): for w in range(14): for c in range(37): if m + w + c == 36
and m * 4 + w * 3 + c // 2 == 36 and c % 2 == 0: print('男=', m, '人', '女=', w,
'人', '小孩=', c, '人') # 男= 3 人 女= 3 人 小孩= 30 人
40.猴子偷桃:一天吃一半还多吃一个,第七天吃完,偷桃总数?
n = 0 for i in range(7): n = (n + 1) * 2 print('桃子总数:', n) # 桃子总数: 254
41.打印图形

h = int(input('请输入图形高度:')) for i in range(h): for j in range(0, h - i - 1):
print(' ', end='') for k in range(0, 2 * i + 1): print('*', end='') print() #
请输入图形高度:6 # * # *** # ***** # ******* # ********* # ***********
42.打印图形

h = int(input('请输入图形高度:')) for i in range(h): for j in range(i): print(' ',
end='') for k in range( 2 *(h-i)-1 ,0, -1): print('*', end='') print() #
请输入图形高度:7 # ************* # *********** # ********* # ******* # ***** # *** # *
43.打印图形

h = int(input('请输入图形高度:')) for i in range(h): for j in range(h-i): print('
',end='') for k in range(i+1): print('*',end='') print() # 请输入图形高度:7 # * # ** #
*** # **** # ***** # ****** # *******

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信