python例题

1.九九乘法表

#1九九乘法表
import time #导入模块
print('Loading:',end='')
for i in range(5):
    print('.',end='',flush=True)
    time.sleep(0.5)
print('"\n\t\t\t九九乘法表"')
print(end='\t')
for i in range(1,10):
    print(i,end='\t')
print()
print(end='\t')
for i in range(1,34):
    print(end='\t')
    for j in range(1,10):
        if i>j:
            print(i*j,end='\t')
    print()

2.计算一元二次方程ax2+bx+c=0的两个实根,(a!=0 b2-4ac>0

python例题_第1张图片

import math
a=float(input('请输入二次项系数:'))
b=float(input('请输入一次项系数:'))
c=float(input('请输入常数项:'))
x1=(-b+math.sqrt(b*b-4*a*c))/(2*a)
x2=(-b-math.sqrt(b*b-4*a*c))/(2*a)
print('x1=',x1,'x2=',x2)



#由于sqrt开平方根方法在math模块中,则需要导入。
#且input()函数在python3中返回值为字符串,需要使用float()函数进行转换。

 3.输入一个四位整数,输出每一位及后三位

x=int(input('请输入一个四位整数'))
print('千位=',x//1000)
print('百位=',x//100%10)
print('十位=',x//10%10)
print('个位=',x%10)
print('前三位=',x//10)
print('后三位=',x%1000)

4.对浮点数进行四舍五入,如:8.32433->8.32 8.32533->8.33

x=float(input('请输入一个浮点数:'))
y=round(x,2)
print('四舍五入:',y)
x=int(x*100+0.5)/100
print('四舍五入:',x)

5.绘制三角形

import turtle as t
t.pensize(10)
t.right(60)
t.forward(100)
t.right(120)
t.forward(100)
t.right(120)
t.forward(100)
t.done()

6.绘制五角星

import turtle as t
t.pensize(10)
t.color('red')
t.right(72)
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)
t.done()

7.绘制奥林匹克环

import turtle
turtle.pensize(10)
turtle.color('blue')
turtle.penup()
turtle.goto(-110,-25)
turtle.pendown()
turtle.circle(45)
turtle.color('black')
turtle.penup()
turtle.goto(0, -25)
turtle.pendown()
turtle.circle(45)
turtle.color("red")
turtle.penup()
turtle.goto(110,-25)
turtle.pendown()
turtle.circle(45)
turtle.color('yellow')
turtle.penup()
turtle.goto(-55,-75)
turtle.pendown()
turtle.circle(45)
turtle.color('green')
turtle.penup()
turtle.goto(55,-75)
turtle.pendown()
turtle.circle(45)
turtle.done()

8.输入一个十进制数,转换为二进制、八进制、十六进制数

num = int(input("输入数字:"))
print('十进制数为:',num)
print('转换为二进制为:',bin(num))
print('转换为八进制为:',oct(num))
print('转换为十六进制为:',hex(num))

9.输入一个华氏温度,要求输出摄氏温度,公式为;C=5/9*(F-32)

F=int(input('请输入华氏温度:'))
C=5/9*(F-32)
print('摄氏温度为:%.2f'%C)

10.从键盘读入两个整数a,b合并生成一个新的四位数c, 例如 a=54,b=12.c的值应该是5142

a=int(input('请输入一个2位数:'))
b=int(input('请输入一个2位数:'))
c=a//10*1000+b//10*100+a%10*10+b%10
print(c)

11.财务人员给员工发工资时经常遇到这样一个问题,即根据每个人 的工资额(单位:元)计算出各种面值的钞票的张数,且要求总张数最少

gz=int(input('请输入本月工资:'))
print('100元:',gz//100,'张')
gz = gz % 100
print("50元:", gz // 50, "张")
gz = gz % 50
print("20元:", gz // 20, "张")
gz = gz % 20
print("10元:", gz // 10, "张")
gz = gz % 10
print("5元:", gz // 5, "张")
print("1元:", gz % 5, "张")

12.输入三角形的三边长,求三角形面积。

import math
a = int(input())
b = int(input())
c = int(input())
s = (a + b + c) / 2
area = math.sqrt(s * (s - a) * (s - b) * (s - c))
# area=(s*(s-a)*(s- b)*(s-c))**0.5
print(area)

13.输入2个数,输出最大值

a=int(input())
b=int(input())
max =a
if a

14.输入一个整数判断奇数偶数

num=int(input('请输入数字:'))
if num%2==1:
    print('奇数')
else:
    print('偶数')

num=int(input('请输入数字:'))
if num &1==1:
    print('奇数')
else:
    print('偶数')

15.判断一个数是否能被711整除但不能同时整除

num=int(input('请输入数字:'))
if(num%7==0 or num %11==0 ) and num %77!=0:
    print('yes')
else:
    print('no')

16.判断某一年是否为闰年:能被4整除但不能被100整除,或者能被400整除


year=int(input('请输入四位数年份'))
if year %4==0 and year%100 !=0 or year %400==0:
    print('闰年')
else:
    print('平年')

17.《车辆驾驶人员血液、呼气酒精含量阈值与检验》标准中规定:驾驶员血液酒精小20mg/100ml 不构成酒驾,大于或等于20mg/ml、小于80mg/ml为饮酒驾驶则暂扣6个月 机动车驾驶1000~2000元罚款、一次记12分;驾驶员血液酒精大于或等于80mg/ml醉酒驾驶则约束至酒醒、吊销驾驶证、5年内不得重新获取驾驶证、追究刑事责任(注意:饮用350mL(约相当于1小瓶)啤酒或半两白酒(20ml)后,血液酒精浓度可达 20mg/100ML,即达到饮酒驾驶的处罚条件)

proof = int(input("请输入100ml血液的酒精含量:"))
if proof <20:
    print('不构成酒驾,请注意安全!')
else:
    if proof<80:
        print('酒驾,暂扣6个月机动车驾证,1000-2000元罚款,一次记12分')
    else:
        print('醉驾,约束至酒醒,吊销驾驶证,5年内不得重新获取驾驶证,追究刑事责任')

18.输入三个整数,降序输出

a=int(input())
b=int(input())
c=int(input())
if a>b:
    if a>c:
        if b>c:
            print(a,b,c)
        else:
            print(a,c,b)
    else:
        print(c,a,b)
else:
    if a>c:
        print(b,a,c)
    elif b>c:
        print(b,c,a)
    else:
        print(c,b,a)

19.输入一个百分制成绩,根据输出等级成绩

num=int(input('请输入百分制成绩:'))
if num>100 or num<0:
    print("数据错误,请输入0-100范围内数字!")
elif num>=90:
    print('优秀')
elif num>=80:
    print("良好")
elif num>=60:
    print('及格')
else:
    print("补考")

20.计算1+2+3+4+5+……+100之和

#while循环

num=0
i=1
while i<100:
    sum=sum+i
    i+=1
print("sum=",sum)
sum=0
for i in range(101):
    sum+=i
print("sum=",sum)

21.计算下列多项式之和

python例题_第2张图片

sum=0
for i in range(1,101):
    sum=sum+1/i
print('sum=%.6f'%sum)

22.计算下列多项式之和

 

sum=1
f=-1
for i in range(2,101):
    sum=sum+1 /i*f
    f=-f
print('sum=%.6f'%sum)

23.计算下列多项式之和

 

sum=0
t=0
for i in range(1,101):
    t=t+i
    sum=sum+1/t
print("sum=%.6f"%sum)

24.计算下列多项式的值

python例题_第3张图片

sum = 1
num = 1
for i in range(2,101):
    num = num +i
    sum = sum + 1/num
print('%.6f'%sum)
# 1.980198

25.计算下列多项式的和

 

z = 3
m = 2
t = 0
sum = 0
for i in range(20):
    t = z
    z = m+z
    m = t
    sum = sum + z/m
print('%.6f'%sum)
# 32.396329

26.计算π的近似值公式

pi = 1
f = -1
i = 3
while 1/i>1e-6:
    pi = pi +1/i*f
    f = -f
    i = i+2
print('pi=%.6f'%(pi*4))
# pi=3.141591

27.用泰勒级数计算e的近似值,直到最后一项小于1e-6止,e=1+1/1!+ 1/2! +1/3!+……1/n!

sum = 1
t = 1
i = 1
while 1/t>1e-6:
    t = t*i
    sum = sum + 1/t
    i += 1
print('sum=%.6f'%sum)
# sum=2.718282

28.计算a+aa+aa+aaa…aaa的值,计算前六项和,a=2

a = 2
sum = 0
for i in range(6):
    sum = sum + a
    a = a*10 + 2
print('sum = ',sum)
# sum =  246912

29.计算r=1到r=10时的圆的面积,直到面积大于100为止

import math as a
for r in range(1,11):
    area = a.pi*r*r
    if area>100:
        break
print('r:',r,'area: is:%.6f'%area)
# r: 6 area: is:113.097336

30.将100-150之间的不能被3整除的数输出,一行输出10个数

i = 0
for n in range(100,151):
    if n%3 == 0:
        continue
    print(n,end='  ')
    i+= 1
    if i%10 == 0:
        print()

31.找出2,3,5的最小公倍数

for i in range(1, 100):
    if i % 2 == 0 and i % 3 == 0 and i % 5 == 0:
        print('%d是2,3,5的最小公倍数' % i)
        break
else:
    print('未找到!')
# 30是2,3,5的最小公倍数

32.输入一个整数,判断是否为素数:

#方法1
prime=int(input('请输入一个正整数:'))
if prime<2:     #保证输入数据大于2
    print('请输入大于2的正整数!')
else:
    for i in range(2,prime):
        if prime%i==0:
            print('平数')
            break
    else:    #循环顺利结束后执行
        print('素数')




#方法:2
prime=int(input('请输入一个正整数:'))
i=2
if prime<2:
    print('请输入大于2的整数!')
else:
    while prime%i:
        i=i+1
    if i==prime:
        print('素数')
    else:
        print('平数')

33.输出100以内的素数

for i in range(2,100):  #遍历2到99
    for j in range(2,i):  #判断i是否为素数
        if i%j==0:
            break
    else:
        print(i,end=' ') #输出素数

34.输出200到400间的非素数

for i in range(200,400):
    for j in range(2,i):
        if i%j==0:
            print(i)
            break

35.输出大于m且紧随m的k个素数,如:m=5 k=3 结果为:7 11 13

#变量初始值
m=int(input('请输入起始值:'))
k=int(input('请输入需要的素数个数:'))
i=m+1
t=0     #计数器,记录找到的素数个数
while  t

36.输出100以内的能被9整除余数为2的数,计算其平均值的平方根并输出

aver=0   
t=0	 	#计算器
for i in range(1,101):
    if i%9==2:    #计算对9取余余数为2
        print(i,end=' ')
        aver=aver+i		#计算和值
        t=t+1		#记录个数
print('\n aver=%.2f'%((aver/t)**0.5))

37.输出水仙花数,每位数的立方和等于原值,如:153==1^3+5^3+3^3

for i in range(100,1000):
    if(i%10)**3+(i//10%10)**3+(i//100)**3==i:
        print('水仙数:',i)

38.输出1000以内的完数,完数:因子之和等于原值,如:6==1+2+3

i in range(6,1000):   #遍历0到999,最小完数为6
    sum=0     #每判断一个i必须先清零其因子之和
    for j in range(1,i):    #寻找i的因子
        if i%j==0:
            sum=sum+j     #计算因子之和sum
    if sum==i:      #判断因子之和是否等于原数
            print(i,end=' ')

39.输出100以内的同构树,同构树:若一个正整数出现在它的平方数的右侧则为同构数,如:5==25 6==36 25==625

for i in range(100):
    #100以内的同构数平方后可能为2位数或者3位数
    if i==i * i % 10 or i == i * i % 100:
        print(i,end=' ')

40.输出200以内的回文数字

(整数倒置算法)

for i in range(100):
    t=0    #倒置后数
    m=i
    while m>0:  #对i进行整数倒置
        t=t * 10+ i % 10
        m=m//10
    if t==i:
        print(i,end=' ')

41.求整数a与b的最小公倍数

#法1:
a=int(input('请输入一个数:'))
b=int(input('请输入一个数:'))
i=1
while True:     #循环恒真时执行下列语句
    if i%a==0 and i%b==0:
        print("最公倍数:",i)
        break    #第一次找到公倍数时就跳出循环,保证是最小
    i+=1		#当前a=5,b=7,i循环35圈



#法2:
a=int(input('请输入一个数:'))
b=int(input('请输入一个数:'))
i=0
while 1:
    i+=a    #i默认是a的倍数
    if i%b==0:
        print('最小公倍数:',i)
        break 

42.求整数x和y的最大公约数以及最小公倍数

x=int(input('请输入一个数:'))
y=int(input('请输入一个数:'))
lcm=x*y    #lcm是最小公倍数
while x%y!=0:   #辗转相除法
    t=x%y
    x=y
    y=t
gcd=y  #gcd是最小公约数
lcm=lcm // gcd
print('最大公约数:',gcd,'最小公倍数:',lcm)

43.用户在键盘输入一个四位数整数,需要转换为英文单词输出,如:输入1024,One Zero Two Four

t=1000
num=int(input('请输入一个四位数整数:'))
if num>=1000 and num<10000:
    while t>0:
        if num//t%10==0:
            print('Zero',end='  ')
        elif num//t%10==1:
            print('One',end='  ')
        elif num//t%10==2:
            print('Two',end='  ')
        elif num // t % 10 ==3 :
            print('Three', end='  ')
        elif num//t%10==4:
            print('Four',end='  ')
        elif num//t%10==5:
            print('Five',end='  ')
        elif num//t%10==6:
            print('Six',end='  ')
        elif num//t%10==7:
            print('Seven',end='  ')
        elif num//t%10==8:
            print('Eight',end='  ')
        elif num//t%10==9:
            print('Nine',end='  ')
        t=t//10
else:
    print('请输入四位正整数:')
   #整数由左向右拆分

44.Fibonacci数列,古典数学问题:有一对兔子,从出生后第三个月都生一对兔子,小兔子到第三个月每个月有都生一对兔子,假设兔子不死,问每月兔子数字规律:1 1 2 3 5 8 13 .....a1=0

a1=1
a2=1
for i in range(6):
    print(a1,a2,end=' ')
    a1=a1+a2
    a2=a1+a2
#当前项等于前两项之和

45.计算Fibonacci数列中大于t的最小值,如:t=6 输出8

t=int(input("请输入一个正整数:"))
a1=0
a2=1
a3=1
while a3<=t:
    a1=a2
    a2=a3
    a3=a1+a2
print('大于',t,'的Fibonacci数列中的最小值是:',a3)

46.有一张足够大的纸,厚度为0.09mm,问对折多少次其厚度会超过珠穆朗玛峰的高度(8848m)

t=0
h=0.09e-3    #纸的厚度,单位统一为米
while 1:
    h=h*2   #对折,即厚度乘以2
    t=t+1       #对折次数
    if h>8848:
        break
print('对折次数:',t)

47.爱因斯坦阶梯问题,有多级阶梯,每步跨两阶余1阶,每步跨3阶余2阶,每步跨5阶余4阶,每步跨6阶余5阶,每步跨7阶都正好到顶,问该阶梯一共多少阶?

i=7
while 1:
    if i%2==1 and i%3==2 and i%5==4 and i%6==5 :
        break
    i+=7
print('阶梯总数:',i)

48.百钱买百鸡问题,鸡翁值钱伍,鸡母值钱叁,鸡雏叁值壹钱,百钱买百鸡,鸡翁,鸡母,鸡雏各几何?

for cocks in range(101):
    for hens in range(101):
        for chicks in range(101):
            if cocks+hens+chicks==100 and cocks*5+hens*3+chicks//3==100 and chicks%3==0:
                print('公鸡',cocks,'只','母鸡=',hens,'只','小鸡=',chicks,'只')

49.搬砖问题:36人搬36块砖,男搬4,女搬3,两个小孩抬一块砖,一次性搬完,需要男,女,小孩各多少人?

for  m in range(10):
    for w in range(14):
        for c in range(73):
            if m+w+c==36 and m*4+w*3+c//2==36 and c%2==0:
                print('男=',m,'人','女=',w,'娃=',c,'人')

50.猴子偷桃,一天吃一半还要多吃一个,第七天吃完,问偷桃总数?

n=0
for i in range(7):
    n=(n+1)*2
print('偷桃总数:',n)

51.打印如下图形:

python例题_第4张图片

 

h=int(input('请输入图形高度:'))
for i in range(4):
    for j in range(0,4-i-1):
        print(' ',end='')
    for k in range(0,2*i+1):
        print('*',end='')
    print()

52.打印如下图形:

python例题_第5张图片

for i in range(7):
    for j in range(i):
        print(' ',end='')
    for k in range(2*(7-i)-1,0,-1):
        print('*',end='')
    print()

 

你可能感兴趣的:(python,python,开发语言)