Python小白一枚,欢迎各位大佬指教。
11、求10!
nums = 1
for i in range(2,11):
nums *= i
print(nums)
运行结果:
12、企业发放的奖金根据利润提成。
profit=float(input("请输入利润金额:"))
if profit <= 10:
print ("你的奖金总数为%.2f:"%(profit*1.1))
elif profit <=20:
print ("你的奖金总数为%.2f:"%(11+(profit-10)*1.075))
elif profit <= 40:
print ("你的奖金总数为%.2f:"%(21.75+(profit-20)*1.05))
elif profit <= 60:
print ("你的奖金总数为%.2f:"%(42.75+(profit-40)*1.03))
elif profit <= 100:
print ("你的奖金总数为%.2f:"%(63.35+(profit-60)*1.015))
else:
print ("你的奖金总数为%.2f:"%(103.95+(profit-100)*1.01))
运行结果:
13、一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
import math
for i in range(1,1000):
x = math.sqrt(i + 100)
y = math.sqrt(i + 268)
if x == int(x) and y == int(y):
print(i)
运行结果:
14、输入某年某月某日,判断这一天是这一年的第几天?
month_days = [0,31,28,31,30,31,30,31,31,30,31,30,31]
sum = 0
year, month, day = map(int, input("请输入年月:").split('.'))
if (year % 4 == 0 or year % 400 == 0) and year % 100 != 0:
month_days[2] = 29
for i in range(month):
sum += month_days[i]
sum += day
print(sum)
运行结果:
15、输出斐波那契额数量的前n项,n由键盘输入。
def fib(n):
if n==1 or n==2:
return 1
else:
return fib(n-1)+fib(n-2)
n = int(input("请输入N: "))
for i in range(1,n+1):
print(fib(i),end=' ')
运行结果:
16、输出 9*9 乘法口诀表
for i in range(1, 10):
for j in range(1, i + 1):
print('%d*%d=%d' % (j, i, j * i), end=' ')
print()
运行结果:
17、判断101-200之间有多少个素数,并输出所有素数
import math
def isPrime(n):
if(n < 1):
return False
sqr = int(math.sqrt(n))
for i in range(2,sqr+1):
if n % i == 0:
return False
return True
for i in range(101,201):
if isPrime(i):
print(i, end=' ')
运行结果:
18、打印出所有的"水仙花数"
for i in range(1,10):
for j in range(10):
for k in range(10):
temp1= i*100 + j*10 + k
temp2= i**3 + j**3 + k**3
if temp1==temp2:
print('水仙花:%4d'%temp1)
运行结果:
19、将一个正整数分解质因数。例如:输入90,打印出90=233*5。
n = int(input("Input Number n : "))
string = str(n) + " = "
for i in range(2,n+1):
while n % i == 0:
string += str(i) + "*"
n /= i
print(string[:-1])
运行结果:
20、输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
string=input('请输入一行字符:\n')
flag = [0,0,0,0]
for i in string:
if i.isalpha():
flag[0] += 1
elif i.isspace():
flag[1]+=1
elif i.isdigit():
flag[2]+=1
else:
flag[3]+=1
print('英文字母有%d个,空格有%d个,数字有%d个,其他字符有%d个'%(flag[0],flag[1],flag[2],flag[3]))
运行结果: