1.判断2-100之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法,用一个数分别去除2到(这个数),如果能被整除,则表明此数不是素数,反之是素数。
for i in range(2,101):
#如果从头到尾都没有因数,则是素数
foe k in range(2,i+1):
if x==y:
print(f"{x}:是素数")
elif x%y==0:取余数
break
2.打印出所有的”水仙花数“,所谓”水仙花数“是指一个三位数,其各位数字立方和等于该数本身。列如:153是一个水仙花数。因为153=1的三次方+5的三次方+3的三次方
for i in range(100,1000):
a=i//100
b=i//10%10
c=i%10
if i==a**3+b**3+c**3:
print(f"{i}:是一个水仙花数")
3.将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
n=int(input("请输入一个正整数:"))
k=2
print(n,"=",end="")
while k<n:
if n%k==0:
print(f"{k}*",end="")
n//=k
else:
k+=1
else:
print(k)
4. 求s=a+aa+aaa+aaaa+aaaa...a,其中a是一个数字。例如5+55+555+5555+55555
a=int(input("请输入一个10以内的正整数:"))
num=a
sum=num
for i in range(a-1):
num=num*10+a
sum+=num
print(sum)
5.一个数如果恰好能等于它的因子之和,这个数就称为”完数“。例如6=1+2+3.编程找出1000以内的所有完数。
for i in range(2,1000):
sum = 0
for j in range(1,i):
if i%j==0:
sum+=j
if sum==i:
print("完数:",sum)
6.一个球从100米的高度自由落下,每次落地后反跳回原来高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高
height=100
sum=0
for i in range(0,10):
height/=2
sum+=height
print("共经过:%f"%sum,"第10次反弹:%f"%height,"高")
7.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
count=0
for a in range(1,5):
for b in range(1,5):
for c in range(1,5):
if a!=b&a!=c&b!=c:
print(a,b,c)
count+=1
print(f"能组成{count}个互不相同且无重复的三位数")
8. 企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
profit=float(input("请输入当月利润I:"))
bouns=0
if profit <=100000:
bouns=profit*0.1
print("应发放奖金总数:%f"%bouns)
elif profit <200000:
bouns = 100000*0.1+(profit-100000)*0.075
print("应发放奖金总数:%f"%bouns)
elif profit <400000:
bouns = 100000*0.1+100000*0.075+(profit-200000)*0.05
print("应发放奖金总数:%f"%bouns)
elif profit <600000:
bouns = 100000*0.1+100000*0.075+200000*0.05+(profit-400000)*0.03
print("应发放奖金总数:%f"%bouns)
elif profit <1000000:
bouns = 100000*0.1+100000*0.075+200000*0.05+200000*0.03+(profit-600000)*0.015
print("应发放奖金总数:%f"%bouns)
elif profit >1000000:
bouns = 100000*0.1+100000*0.075+200000*0.05+200000*0.03+400000*0.015+(profit-1000000)*0.01
print("应发放奖金总数:%f"%bouns)
9.一个整数,它加上100后是一个完全平方数,在加上168又是一个完全平方数,请问该数是多少?以10000以内
for i in range(1,10000):
for j in range(1,450):
if (j == (i + 100) ** (1 / 2)):
for k in range(1,450):
if(k==(i+268)**(1/2)):
print(i)
10.用*打印出棱形、等腰三角形和等腰梯形:在三角基础上打印(5层)
#棱形
for i in range(1,6):
for k in range(5-i):
print(" ",end="")
for l in range(2*i-1):
print("*",end="")
print()
for i in range(1,5):
for k in range(i):
print(" ",end="")
for l in range((5-i)*2-1):
print("*",end="")
print()
#等腰梯形
for i in range(1,6):
for k in range(5-i):
print(" ",end="")
for j in range(2*i+6):
print("*",end="")
print()