#质数 n=0
import math
j=int(input(\请输入一个数\b=int(math.sqrt(j)) for i in range(2,b+2): if(j%i==0):break if (i==b+1):
print(j,\是\ n=n+1 else:
print(j,\否\ \ n=n+1 if (n==9): print()
n=0
运行结果如图:
分析: 质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定1既不是质数也不是合数)。
要写出一个求质数的代码,首先要了解质数的性质,这里举个例子帮助理解。
例1:假如输入的这个数是5。都知道5质数,这时候把5入代码中在脑海里运行一遍可以得到:j=5,b=√5,时候引入一个i范围是2到b+2之间。即范围是2,3不包括4。
当5%i=0的时候直接跳出。如果满足 (i==b+1),则这个数就是质数。
在考试中通常遇见的是这样的:
阅读下面的python程序,请问程序的功能是什么:
n=0
import math
for j in range(1,101): b=int(math.sqrt(j)) for i in range(2,b+2): if(j%i==0):break if (i==b+1):
print(j,\是\ n=n+1 else:
print(j,\否\ \ n=n+1 if (n==9): print() n=0
对比以上两个python小程序可以知道第二个将for j in range(1,101):代替了了j=int(input(\请输入一个数\因此第二个功能就是输出1-100以内的质数,并满9个换行。运行结果如图:
#三角形面积 import math
a=int(input(\请输入三角形的第一条边\b=int(input(\请输入三角形的第二条边\c=int(input(\请输入三角形的第三条边\if b>a:a,b=b,a if c>a:a,c=c,a if c>b:b,c=c,b if b+c>a:
p=(a+b+c)/2
s=math.sqrt(p*(p-a)*(p-b)*(p-c))
print(s)
输入三角形三条边求三角形的面积。运行结果如下:
#求解一元二次方程 x*x-10x+16 import math a=1;b=-10;c=16
x1=(-b+math.sqrt( b*b-4*a*c))/(2*a) x2=(-b-math.sqrt( b*b-4*a*c))/(2*a)
print(\方程x*x-10x+16的解为:\
# 两个数互换
a=input(\请输入一个数\b=input (\请输入另一个数\a,b=b,a print(a,b)
运行结果如图:
打印10行杨辉三角: def create(P): L = [1]
for x in range(1, len(P)): L.append(P[x] + P[x-1]) L.append(1) return L
def prin(L): s = \
for x in L:
s += str(x) + \ \ print(s.center(100)) P = [1]
for x in range(10): prin(P)
P = create(P) 运行结果如图:
#print(sum(range(1,101))) i=1 sum=0
while i<101: if i%2==0:
sum=sum+i i=i+1 print(sum)
打印1+2+3+4+5.。。。。+100=。运行结果如图: