欢迎光临散文网 会员登陆 & 注册

python回归之旅-用python学习数学---2023-007

2023-04-10 15:12 作者:一心想当网红的李老师  | 我要投稿

分析一个整数的因子。

import math


num1=int(input('input the first num='))

num2=int(input('input the second num='))

infactor1=[]

infactor2=[]


def factor(x,a):

    for i in range(1,x+1):

        if x%i==0:

            a.append(i)


factor(num1,infactor1)

factor(num2,infactor2)


print(infactor1)

print(infactor2)

------------------------------------------------------

这个部分貌似是python列表操作和基础数学知识。

在这个基础上,计算两个整数的最大公因数(这个就考验算法了)

先找了一个找出所有公因数的方法

import math


num1=int(input('input the first num='))

num2=int(input('input the second num='))

infactor1=[]

infactor2=[]


def factor(x,a):

    for i in range(1,x+1):

        if x%i==0:

            a.append(i)


factor(num1,infactor1)

factor(num2,infactor2)


print(infactor1)

print(infactor2)


len1=len(infactor1)

len2=len(infactor2)


print("len1=",len1)

print("len2=",len2)


for i in range(len1):

    for j in range(len2):

        if infactor1[i]==infactor2[j]:

            print(infactor1[i])

---------------------------------------------------------------------------------------


最大公因数计算结果

import math

infactor1=[]

infactor2=[]

gys=[]



def factor(x,a):

    for i in range(1,x+1):

        if x%i==0:

            a.append(i)



def zdgys(num1,num2):

    factor(num1,infactor1)

    factor(num2,infactor2)

    len1=len(infactor1)

    len2=len(infactor2)

    for i in range(len1):

        for j in range(len2):

            if infactor1[i]==infactor2[j]:

                gys.append(infactor1[i])

    len3=len(gys)

    print(gys[len3-1])


num1=int(input('input the first num='))

num2=int(input('input the second num='))


zdgys(num1,num2)

------------------------------------------------------

主要学习了列表对比。数学只是求取最大公因书这个部分使用到了。

python回归之旅-用python学习数学---2023-007的评论 (共 条)

分享到微博请遵守国家法律