第6题:求解100以内的所有素数
题目描述:输出100以内的所有素数,素数之间以一个空格区分(注意,最后一个数字之后不能有空格)。
n = 100 t = [True]*n for i in range(2,n): j=i*2 while j<n: t[j]=False j += i p = [] for i in range(2,n): if t[i]: p.append(str(i)) print(' '.join(p))
结果:
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
注:直接用print(i,end=' ') 最后一个数字后会用空格
============================================================
第7题:求矩形面积
题目描述:
已知矩形长a,宽b,输出其面积和周长,面积和周长以一个空格隔开。
例如:a = 3, b = 8
则输出:24 22示例:
输入:a = 3
b = 8
输出:24 22
>>> a,b = 3,8 >>> print(a*b,(a+b)*2,sep=' ') 24 22 >>>
============================================================
第8题:求中位数
题目描述:
给你一个整数列表L, 输出L的中位数(若结果为小数,则保留一位小数)。
例如: L=[0,1,2,3,4]
则输出:2
示例:
输入:L = [0, 1, 8, 3, 4]
输出:3
def midnum(n): m,n = len(n),sorted(n) if m%2: return n[m//2] else: return (n[m//2]+n[m//2-1])/2 L = [2,7,4,9] print(midnum(L)) # ==5.5 L = [0,1,8,3,4] print(midnum(L)) # ==3
============================================================
第9题:最大公约数
题目描述:
给你两个正整数a和b, 输出它们的最大公约数。
例如:a = 3, b = 5
则输出:1
示例:
输入:a = 3
b = 5
输出:1
>>> from math import gcd >>> gcd(3,5) 1 >>> gcd(81,18) 9 >>> gcd(162,36) 18 >>>
注:最大公约数有多种算法,但math库有现成的函数可用。
============================================================
第10题:最小公倍数
题目描述:
给你两个正整数a和b, 输出它们的最小公倍数。
例如:a = 3, b = 5
则输出:15
示例:
输入:a = 3
b = 5
输出:15
>>> def LCM(a,b): from math import gcd return a*b//gcd(a,b) >>> print(LCM(3,5)) 15 >>> print(LCM(24,16)) 48 >>>