欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python(持续更新)

程序员文章站 2022-07-02 18:42:41
...

python学习笔记

1.1 抓交通肇事犯

'''
一辆卡车违反交通规则,撞人后逃跑。
现场有三人目击该事件,但都没有记住车号,只记下了车号的一些特征。
甲说:牌照的前两位数字是相同的;
乙说:牌照的后两位数字是相同的,但与前两位不同;
丙是数学家,他说:4位的车号刚好是一个整数的平方。
请根据以上线索求出车号。
'''

#穷举法

for i in range (10):
    for j in range(10):
        if i != j:
            num=1000*i+100*i+10*j+j;
            for k in range (100):
                if num == k*k:
                    print ('车牌号为:'+ str(num))
                    break

1.2 兔子产子

'''有一对兔子,从出生后的第3个月起每个月都生一对兔子。
小兔子长到第3个月后每个月又生一对兔子,假设所有的兔子都不死,
问30个月内每个月的兔子总对数为多少?'''

#斐波那契数列

num1=1
num2=1
for i in range(15):
    print(num1, num2)
    num1=num1+num2
    num2=num1+num2

1.3 牛顿迭代法求方程根

'''编写用牛顿迭代法求方程根的函数。
方程为ax3+bx2+cx+d=0,系数a、b、c、d由主函数输入,
求x在1附近的一个实根。求出根后,由主函数输出。
牛顿迭代法的公式:x=x0-[插图],设迭代到|x-x0|≤10-5时结束。'''
def solution (a,b,c,d):
    x0=1.5
    x=1
   # x0=x
    while abs(x-x0)>1e-5:
        x0=x
        f=a*x0**3+b*x0**2+c*x0+d
        fd=3*a*x0**2+2*b*x0+c
        x=x0-f/fd
    return x

print('请输入方程的系数:')
a,b,c,d =map(float,input('输入a,b,c,d空格隔开:').split())
x=solution(a,b,c,d)
print(x)
相关标签: python python