xxpythonxx

1.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。

要求:
1)用if语句实现;
2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。

代码:

a=eval(input(\'请输入成绩:\'))
if a<0 or a>100 or a%1!=0:
        print(\'您输入的成绩不合理,请检查后重新输入\')
elif 90<=a<=100:
    print(\'成绩等级:A\')
elif 80<=a<=89:
    print(\'成绩等级:B\')
elif 70<=a<=79:
    print(\'成绩等级:C\')
elif 60<=a<=69:
    print(\'成绩等级:D\')
else:
	print(\'成绩等级:E\')

运行结果:
在这里插入图片描述
2. 篮球比赛是高分的比赛,领先优势可能很快被反超。作为观众,希望能在球赛即将结束时,就提早知道领先是否不可超越。体育作家Bill James发明了一种算法,用于判断领先是否“安全”。

算法描述:

1)获取领先的分数 ,减去3分;

2)如果目前是领先队控球,则加0.5;否则减0.5(数字小于0则变成0);

3)计算平方后的结果;

4)如果得到的结果比当前比赛剩余时间的秒数大,则领先是“安全”的。

请编写程序实现上述算法的功能,并给出运行结果。

代码:

grade = eval(input(\'请输入领先分数:\'))
time = eval(input(\'请输入剩余时间:\'))
t = grade-3
w = input(\'目前是否为领先队控球(Y or N):\')
if w == \'Y\' or w == \'y\':
    g = (t+0.5)**2
else:
    g = t-0.5
    if g <= 0:
       g = 0
    g = g**2
if g > time:
    print(\'领先是“安全”的\')
else:
    print(\'领先是“不安全”的\')

运行结果:
在这里插入图片描述
3.根据y=1+3-1+3-1+……+(2n-1)-1,求:

(1) y<3时的最大n值。

(2) 与(1)的n值对应的y值。

代码:

x = 1
y = 0
while y < 3:
    y = y+1/(2*x-1)
    x = x+1
print(\'y<3时的最大n值为{}\'.format(x-1))
print(\'与(1)的n值对应的y值为{}\'.format(y-1/(2*x-1)))

运行结果:
在这里插入图片描述

4.小明单位发了100元的购物卡,小明到超市买三类洗化用品:洗发水(15元)、香皂(2元)、牙刷(5元)。要把100元正好花掉,可有哪些购买组合?

代码:

#Python学习交流群:531509025
money=100
n=money//15
for i in range(n,-1,-1):
    m=(money-i*15)//5
    for j in range(m,-1,-1):
        k=(money-i*15-j*5)//2
        if (money-i*15-j*5)%2==0:
            print(\'可选择的购买组合:\t\t购买洗发水 {} 瓶,香皂 {} 块,牙刷 {}个。\'.format(i,j,k))

运行结果:
在这里插入图片描述

5.设计一个猜数游戏。

首先由计算机产生一个[1,100]之间的随机整数,然后由用户猜测所产生的随机数。根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示“High”,小于则显示“Low”,等于则显示“You won !”,游戏结束。

用户最多可以猜7次,如果7次均未猜中,则显示“You lost !”,并给出正确答案,游戏结束。游戏结束后,询问用户是否继续游戏,选择“Y”则开始一轮新的猜数游戏;选择“N”则退出游戏。

代码:

chose = \'y\'
while chose==\'Y\' or chose==\'y\':
    import random
    num = random.randint(1,100)
    def judge(b):
        if b == num:
            return 1
        else:
            return 0
    for i in range(1,8):
        b=eval(input(\'请输入您第{}次所猜的整数:\'.format(i)))
        if judge(b)==1:
            print("You won !")
            break
        elif b > num:
            print("high")
        elif b < num:
            print("low")
    if judge(b)==0:
        print("You lost !")
    chose=input(\'请输入Y(y)继续进行游戏,N(n)退出游戏:\')
    while chose != \'Y\' and chose != \'y\' and chose != \'N\' and chose != \'n\':
        print(\'输入有误,请重新输入Y(y)继续进行游戏,N(n)退出游戏:\',end = \'\')
        chose=input()

运行结果:
在这里插入图片描述
6. 建立1个包含10个字符的字符串,并根据键盘输入的数字n输出字符串中的第n个字符。当n值超过字符串的索引时,自动转为输出字符串中的最后1个字符。

要求:用try语句实现。

代码:

#Python学习交流群:531509025

n=int(input(\'请输入数字n:\'))
a=\'pengyuanyu\'
try:
    print(a[n-1])
except:
    print(a[9])

运行结果:
在这里插入图片描述
7. 编写函数,该函数可以输入任意多个数,函数返回输出所有输入参数的最大值、最小值和平均值。

代码:

import numpy as py
x=input(\'请输入一组数并用空格隔开:\')
def f(x):
    lis =list(x.split(\' \'))
    for i in range(len(lis)):
        lis[i]=eval(lis[i])
    print(\'该组数值的最大值为:\',max(lis))
    print(\'该组数值的最小值为:\',min(lis))
    print(\'该组数值的平均值为:\',py.mean(lis))
f(x)

运行结果:
在这里插入图片描述
8. 一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?

要求:利用递归函数编程实现。

代码:

def f(n):
    if n == 8:
        return 2
    else:
        sum = f(n+1)*2+2
        return sum
print(\'一共有{}只鸭子\'.format(f(1)))

运行结果:
在这里插入图片描述

分类:

技术点:

相关文章:

  • 2021-11-03
  • 2021-12-03
  • 2021-08-31
  • 2021-10-19
  • 2021-12-03
  • 2021-11-13
  • 2021-11-13
  • 2021-11-03
猜你喜欢
  • 2021-12-03
  • 2021-11-05
  • 2022-01-14
  • 2021-12-14
  • 2021-10-01
  • 2021-10-31
  • 2021-12-03
相关资源
相似解决方案