猫史档案馆


【Python作品分享】古埃及分数

用户:凌浩然tzXC凌浩然tzXC查看:0 回复:0 评论:0 创建时间:2023-04-22T19:40:42


【作品展示】

center_image

 

【作品介绍】

古埃及人在写分数时,会把一个分子不为1的分数写成几个单位分数之和。

例如:3/5=1/2+1/10

4/7=1/2+1/7

...

本个作品使用的是贪心算法,即每一次都找不大于当前值的最大单位分数。

 

【作品源代码】

var=0
while var==0:
    num=0
    子=int(input('请输入分子:'))
    母=int(input('请输入分母:'))
    List=[]
    List位数=[]
    a=子
    b=母
    c=3
    while (c != 0):
        c=(a % b)
        a=b
        if (c == 0):
            break
        b=c
    子=子//b
    母=母//b
    while 子!=0:
        分母=母//子+1
        if 母%子==0:
            分母=母//子
        List.append(分母)
        List位数.append(len(str(分母)))
        num += 1
        子=子*分母-母
        母=母*分母
        a=子
        b=母
        c=3
        while (c != 0):
            c=(a % b)
            a=b
            if (c == 0):
                break
            b=c
        子=子//b
        母=母//b
        if 子==0:
            break
    print('分母列表:',List)
    print('分母的位数列表:',List位数)
    print('一共有'+str(num)+'项')
    print('\n')

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页