你的位置:首页 > 信息动态 > 新闻中心
信息动态
联系我们

没有bug队——加贝——Python 练习实例 21,22

2021/11/30 1:01:52

21.题目:

猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。

程序分析:采取逆向思维的方法,从后往前推断。

x2 = 1
for day in range(9,0,-1):
    x1 = (x2 + 1) * 2
    x2 = x1
print (x1)

输出:

到这里,你是否有很多问好呢?

我们先看一个程序:

 这样应该就理解了吧,嘿嘿🤭

22.题目:

两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。

for i in range(ord('x'),ord('z') + 1):
    for j in range(ord('x'),ord('z') + 1):
        if i != j:
            for k in range(ord('x'),ord('z') + 1):
                if (i != k) and (j != k):
                    if (i != ord('x')) and (k != ord('x')) and (k != ord('z')):
                        print ('比赛名单是a -- %s\t b -- %s\tc--%s' % (chr(i),chr(j),chr(k)))

输出:

 到这里可能你又有很多问好了吧?

在这里我们就需要介绍几个知识点了

1、中文编码声明注释:# coding=gbk,
2、ord() 函数的作用:获取字符对应的 ASCII 数值,
3、使用 ord() 函数获取字符 a 和 A 的 ASCII 数值,
4、使用 print() 输出获取到的 ASCII 数值

 还不理解嘛?

那我们直接上程序吧?

 到这里我们就知道了,大写的序号要先于小写滴

那么我们可不可以通过65/97找到她所代表的a/A呢

当然可以,这就需要我们的 chr()函数

 到这里我相信你一定理解了,加油!!