Python100例 我的实现展示(76-80例)

本文分享了Python编程的5个实例,包括字符串操作、算法应用及猴子分桃子问题的解决,同时探讨了排序算法的实现。
摘要由CSDN通过智能技术生成

Python100例 我的实现展示(76-80例)


'''76、编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n。'''


def test_exam_76():
    n = int(input("输入1个数a,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n。\n"))
    total = 0
    if n % 2 == 0:
        for i in range(2, n+1, 2):
            total += 1/i
    else:
        for i in range(1, n+1, 2):
            total += 1/i
    print("输入的数为{0},计算的结果为{1}。".format(n, total))


'''77、循环输出列表。'''


def test_exam_77():
    str1 = input("输入一组整数数组a,以空格隔开,程序将输出这个数组的内容。\n").split(" ")
    for i in range(len(str1)):
        print(str1[i], end="\t")


'''78、找到年龄最大的人,并输出。请找出程序中有什么问题。(使用了2个数组)'''


def test_exam_78():
    str1 = input("输入一组代表一群人年龄的整数,以空格隔开,程序将输出这群人中年龄最大的年龄。\n").split(" ")
    x = list(map(int, str1))
    max = x[0]
    for i in range(1, len(str1)):
        if max <= x[i]:
            max = x[i]
    print("这群人中年龄最大的是{0}岁".format(str(max)))


'''79、字符串排序。'''


def test_exam_79():
    str1 = input("请输入一串字符串,程序将进行字符串排序并输出排序后的字符串。\n")
    ls = list(str1)
    ls.sort()
    str2 = "".join(ls)
    print(str2)


'''80、海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。
第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,
问海滩上原来最少有多少个桃子?(第5只猴子可以操作时,则最少有6个桃子,第5只猴子最少拿到1个桃子,所剩的桃子为前1只面对桃子总数-1的3/4)'''


def test_exam_80():
    i = 1
    while True:
        total5 = 5 * i + 1
        total = total5
        for j in range(4):
            total = 5 * total / 4 + 1
            if total != int(total):
                break
        if total == int(total):
            print("海滩上原来最少有个{0}桃子,第5只猴子拿到了{1}个桃子。".format(str(total), str(i)))
            break
        i += 1

if __name__ == '__main__':

    # test_exam_76()
    # test_exam_77()
    # test_exam_78()
    # test_exam_79()
    test_exam_80()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿尔卑斯的畅想

欢迎打赏,一起每天进步一点点!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值