栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python 高级程序设计期中测试

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python 高级程序设计期中测试

Hello!欢迎来到六个核桃Lu!

1. 测试内容 (1) Python 基本语法元素; (2) Python 基本数据类型及使用; (3) Python 编程基本语法中的条件判断和循环控制结构; (4) Python 编程基本语法中的函数及代码复用; (5) Python 编程基本语法中的组合数据类型。 2. 测试要求 (1) 认真阅读测试题目要求,完成各项题目内容; (2) 各项题目中, 需要写明程序设计思路,以及具体程序代码 。 3. 测试过程
1. 人民币和美元是世界上通用的两种货币之一,且人民币和美元间的汇率 动态变化。写一个程序,根据动态变化的汇率,进行货币间币值转换。程序可以 接受人民币或美元输入,转换为美元或人民币输出。人民币采用 RMB 表示,美元 USD 表示,符号和数值之间没有空格。 提示:人民币和美元间的动态汇率,通过 input()函数获取。 示例 1: 输入:"RMB123" 输出:"USD18.14" 示例 2: 输入:"USD20" 输出:"RMB135.60"
input_list=[]   # 定义一个输入列表 用来储存输入进来的数据
input_list=input("请输入货币及金额:")
hb=input_list[:3]   # 列表前三位
je=input_list[3:]   # 列表后三位
if  hb=='RMB':
    je = float(je) / 6.78    # 汇率为6.78
    print('USD'+str("%.2f"%je))  # "%.2f"%je 金额保留小数点后两位
else:
    je = float(je) * 6.78
    print('RMB'+str("%.2f"%je))
输出结果:

2. A 君: 一年 365 天,每天进步 1%,不停歇;     B 君: 一年 365 天,每周工作 6 天休息 1 天。好好学习时能力值比前一天提高 1%,休息日下降 1%。     B 君每周工作 6 天休息 1 天,计算 B 君工作日的努力参数是多少,才能与 A 君每天努力 1%一样。 提示: (1) 一年 365 天,以第 0 天的能力值为基数,记为 1.0。 (2) B 君工作日的努力参数起始值为 0.01。 (3) 程序设计使用函数,且最终输出结果保留 3 位有效数字。

 这道题,核桃没有太理解它的数学逻辑,大家就当个参考吧~

# 工作量 = 每天的能力值相加
# 每天的能力值 = 基数+-(基数*努力参数)=基数*(1+-努力参数)
A = 1.0
B = 1.0
b_strive = 0.01  # B君工作日的努力参数 起始值为 0.01
sum_A = 0
sum_B = 0
# A的工作函数
def A_run(x):
    x = x * 1.01     # 每天进步 1%,即努力参数固定为0.01
    print("A今日能力值= ", "%.3f"%x)
    return x
# B的工作函数
def B_run(y, b_strive):
    y = y * (1+b_strive)
    print("B今日能力值=","%.3f"%y)
    return y
# 进入循环工作
for i in range(1000):
    print("————第", i, "天————")
    A = A_run(A)
    if i % 6 == 0:  # 休息日
        b_strive -= 0.01
        B = B_run(B, b_strive)
    else:           # 工作日
        b_strive += 0.01
        B = B_run(B, b_strive)
    sum_A += A
    sum_B += B
    if sum_A <= sum_B:  # 当B的工作量超过A或与A一致 跳出循环
        print("B君撵上了A君", "A的总工作量 =", "%.3f"%sum_A, "B的总工作量 =", "%.3f"%sum_B)
        print("此时B君工作日的努力参数是:", "%.3f"%b_strive)
        break
    i += 1

输出结果:


3. 双十一期间一家商场在降价促销,         如果购买金额在[0,500)之间折扣为5%,         [500,1000)之间折扣为 10%,         [1000,3000)之间折扣为 30%,         3000 元以上 折扣为 50%。    编写一个程序,询问客户的购买价格,计算并显示折扣,以及最终价格。
Purchase_amount = int(input("请输入购买金额:"))
# 如果购买金额在[0,500)之间折扣为5%
if  0 <= Purchase_amount < 500:
    print("折扣为5%")
    Purchase_amount *= (1-0.05)
# [500,1000)之间折扣为 10%
elif 500 <= Purchase_amount < 1000:
    print("折扣10%")
    Purchase_amount *= (1-0.1)
# [1000,3000)之间折扣为 30%
elif 1000 <= Purchase_amount < 3000:
    print("折扣为30%")
    Purchase_amount *= (1-0.3)
# 3000 元以上折扣为 50%
else:
    print("折扣为50%")
    Purchase_amount *= (1 - 0.5)
print("最终价格为", Purchase_amount, "$")

 输出结果:


4. 运用 while 进行非确定次数循环,给学生三次输入用户名(真实姓名)和密码(学号)的机会,要求如下:         第一行输入自己的姓名,如‘王凯’;第二行输入自己的学号,如 ‘20211105001’。         若输入正确,输出‘登录成功!’并退出程序。         若输入不正确,用户可继续尝试信息输入;         当一共有 3 次输入姓名或学号输入不正确,输出提示信息“3 次输入信息均有误!退出程序”。
i = 0
while True:
    Name = input("输入自己的姓名:")
    Number = int(input("输入自己的学号:"))
    if Name == "王凯":
        if Number == 20211105001:
            print("登录成功!")
            break
    else:
        print("输入不正确!请继续尝试信息输入!")
    i += 1
    if i == 3:
        print("三次输入信息均有误!退出程序!")
        break

输出结果:

 


5. 从键盘获取用户输入 n,求和 1!+2!+3!…… +n! 示例: 输入:"10" 输出:"4037913"
n =int(input("请输入n:"))
# 阶乘函数 迭代函数本身
def Factorial(n):   
    if n-1 == 0:
        return 1
    else:
        return n * Factorial(n-1)
sum = 0     # 和
while True:
    if n == 0:
        print("输出:",sum)
        break
    else:
        sum += Factorial(n)
    n-=1

输出结果:


6. 随机产生10个[0,1)之间的随机小数,并将这10个数添加到一个列表中。
import random
list=[]    # 定义一个列表
for i in range(10):     # 循环10次
    list.append(random.random())    # 随机生成小数 并添加进列表
print(list)

 输出结果:

[0.44740796339536193, 0.7529664388836526, 0.40372627736375055, 0.10194916112480756, 0.46636740848855385, 0.37870325472456, 0.6766166769170668, 0.6223010848508999, 0.09149218718559704, 0.19987081475339574]

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/580531.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号