2019-02-12Python入门经典编程题1
1、
身体质量指数(BMI)的计算公司为:BMI=体重/身高的平方(国际单位:kg/m2)。现在定义BMI
过轻:低于18.5
正常:18.5-23.9
过重:24-27.9
肥胖:高于28
请输入体重和身高,计算出BMI和肥胖程度
w,h=eval(input()) bmi=w/(h**2) print('Your BMI is{0:.1f}'.format(bmi)) if bmi<18.5: print("过轻") elif bmi<24: print("正常") elif bmi<27.9: print("过重") else: print("肥胖")
知识点:
{0:.1f}
表示小数点后保留1位,且输出结果为浮点数。
2、按公式:C=5/9x(F-32),将华氏温度转换为摄氏温度,并产生一张华氏温度0~300度与对应摄氏温度之间的对照表(每隔50度输出一次)
for f in range(0,301,50): c=5/9*(f-32) print("{}f={:.0f}c".format(f,c))
输出结果为:
0f=-18c
50f=10c
100f=38c
150f=66c
200f=93c
250f=121c
300f=149c
3、
角谷静夫是日本的一位著名学者,他提出的角谷猜想如下:对于一个正整数n,若为偶数则除以2,若为奇数则乘以3加1,得到一个新的数后按照之前的两条规则继续演算,若干次后得到的结果必然是1.请用程序实现输入任一正整数,得到演算过程。
【输入样例】
10
【输出样例】
10/2=5
5*3+1=16
16/2=8
8/2=4
4/2=2
2/2=1
n=int(input()) while n!=1: if n%2==0: print("{}/2={}".format(n,n//2)) n//=2 else: print("{}*3+1={}".format(n,3*n+1)) n=3*n+1
4、输入n,用代码实现1+2!+3!+...+n!的和并输出。
n=int(input()) s=t=1 for i in range(2,n+1): t*=i s+=t print(s)
5、编程求解1-4这4个数字可以组成多少个无重复的四位数,并按照从小到大的顺序输出这些数字。
for i in range(1,5): for j in range(1,5): for k in range(1,5): for m in range(1,5): if i!=k and i!=j and i!=m and j!=k and j!=m and k!=m: print(1000*i+100*j+10*k+m)
输出结果如下:
1234
1243
1324
1342
1423
1432
2134
2143
2314
2341
2413
2431
3124
3142
3214
3241
3412
3421
4123
4132
4213
4231
4312
4321
6、一个数如果等于它的因子之和则称这个数为完数,例如6,6=1+2+3,编程计算1000之内的所有完数并输出。
for i in range(1,1001): s=0 for j in range(1,i): if i%j==0: s+=j if s==i: print("\n",i,",",end="") print("它的因子有:",end="") for j in range(1,i): if i%j==0: print(j,end="、")
输出的结果为:
6 ,它的因子有:1、2、3、
28 ,它的因子有:1、2、4、7、14、
496 ,它的因子有:1、2、4、8、16、31、62、124、248、
7、验证哥德巴赫猜想之一:2000以内的正偶数(大于等于4)都能分解为两个质数之和。每隔偶数表达成,如4=2+2
import math def prime(x): if x==1: return False n=int(math.sqrt(x)) for i in range(2,n+1): if x%i==0: return False return True def GC(n): k=3 while k<n: t=n-k if t<k: break if prime(k) and prime(t): return k,t k+=2 n=int(input()) if n>4: a,b=GC(n) print("{}={}+{}".format(n,a,b)) elif n==4: print("{}={}+{}".format(4,2,2))
致谢:本文采用的题目来自于https://www.icourse163.org
上一篇:新年插花有感
相关文章
- Python报错:SyntaxError: Missing parentheses in call to 'print'
- 一篇文章入门Python
- Python入门经典编程题2
- Python中移动函数
- anaconda安装好了只有anaconda prompt,而没有Spyder,Anaconda Navigator等等
- Python如何在一个文本的不同行前加入序号?
- Python中with open语句写入文件时显示“io.UnsupportedOperation: not writable”
- Python入门经典编程题1
- Python 中 'unicodeescape' codec can't decode bytes in position XXX: trun错误解决方案
- Python 3.6.0 Shell中print时候出现SyntaxError: invalid syntax解决方法