Python顺序结构程序设计

第1关:货币转换

任务描述

本关任务: 接收用户输入的当前美元对人民币的汇率,以及带有货币符号$$表示美元,表示人民币)的货币值,转换并显示为另一种货币人民币,显示的人民币以开头,结果保留两位小数。

任务说明

案例分析 1.通过input()函数接收用户输入的汇率值,将其转换为数值型后保存在变量hl中。 2.通过input()函数接收用户输入的美元值,将其保存在变量hb中,数据类型是字符串。 3.截取hb的第二个字符到最后的字符,转换为数值后,将其乘以汇率hl,赋值给变量rmb,将其输出。

#货币换算程序
hl= eval(input("请输入汇率"))
hb = input("请输入带有符号$的货币")
#####代码开始#####
sums=eval(hb[1:])*hl
print("人民币¥{:.2f}".format(sums))
####代码结束####

第2关:黄金价值计算

任务描述

编写程序,输入黄金价格(美元/盎司),美元兑人民币的汇率,黄金的数量(以克为单位),计算并输出黄金的人民币价值。(1盎司(oz) =31.1034768 克)。

测试说明

平台会对你编写的代码进行测试: 输入 黄金价格1727.48 美元汇率6.654 黄金数量10 输出 黄金价值3695.616

jg=eval(input("黄金价格"))
hl=eval(input("美元汇率"))
zl=eval(input("黄金重量"))
#代码开始
jz= jg / 31.1034768 * zl * hl
#代码结束
print("黄金价值{:.2f}".format(jz))

第3关:计算存款复利

任务描述

本关任务:编写程序,输入存款本金、年利率和年数,计算复利(结果保留两位小数)。 输入输出范例如下: 请输入本金:2000 请输入年利率:5.6 请输入年份:5 本金利率和为:2626.33

相关知识

为了完成本关任务,你需要掌握:1.浮点数的输入方法,2.复利的计算方法。

编程要求

根据提示,在右侧编辑器补充代码,计算并输出复利。

提示

提示:输出语句可以用“print("本金利率和为:{0:2.2f}".format(****))”的形式,其中***代表存储本金利率和的变量

测试说明

平台会对你编写的代码进行测试:

测试输入: 请输入本金:2000 请输入年利率:5.6 请输入年份:5 预期输出: 本金利率和为:2626.33

principal = float(input("请输入本金:"))
interest_rate = float(input("请输入年利率:"))
years = int(input("请输入年份:"))

compound_interest = principal * (1 + interest_rate / 100) ** years

print("本金利率和为:{0:.2f}".format(compound_interest))

第4关:求2个数的和

任务描述

本关要求学习者理解顺序结构,并对输入的三个数abc先交换ab值,然后再计算a + c的值。

相关知识

要实现上述功能,需要严格按照顺序来实现每一个步骤。如果顺序错误,那么便会得出错误的结果。

顺序结构

假设存在abc三个整数,如果按照以下顺序执行:

c = a + bb = c - aa = b + c

与按照以下顺序:

b = c - a  a = b + c  c = a + b  

得出的abc的结果是不同的。

交换数值

假设存在整数a = 10b = 20,交换ab数值的语句如下:

tmp = a  a = b  b = tmp 
编程要求

本关的编程任务是补全step2.py文件中的函数部分,程序中给出abc三个整数,要求实现先交换ab的值,然后计算a + c的值并输出。

本关涉及的代码文件step2.py的代码框架如下:

a = int(input())b = int(input())c = int(input())# 请在此添加代码,交换a、b的值,然后计算a、c的和result的值########## Begin #################### End ##########print(result)
测试说明

本关的测试文件是src/step2/step2.py,测试过程如下:

  1. 学习者将src/step1/step2.py中的代码补充完毕,然后点击评测。平台自动编译运行 step2.py,并以标准输入方式提供测评输入;
  2. 平台获取程序的输出,然后将其与预期输出对比。如果一致则测试通过,否则测试失败。

以下是平台对src/step1/step2.py的样例测试集:

测试输入:

2510

预期输出:

15
a = int(input())
b = int(input())
c = int(input())

# 请在此添加代码,交换a、b的值,然后计算a、c的和result的值
########## Begin ##########
tmp = a
a = b
b = tmp
result = a + c

########## End ##########

print(result)

第5关:出生日期与年龄

任务描述

本关任务:编写一个程序,输入自己的出生年、月、日,按下列格式输出自己的出生日期信息,今年是2022年,计算并输出自己的年龄。 输入示例:1992,12,5↙ 输出示例: 我的出生日期是1992年12月05日 我今年30岁了

相关知识

为了完成本关任务,你需要掌握:1.如何输入数据,2.如何格式化输出语句。

编程要求

根据提示,在右侧编辑器补充代码,按格式要求输出自己的出生日期,计算并输出自己的年龄,年龄只要求精确到年,以整数形式输出。

测试说明

平台会对你编写的代码进行测试:

测试输入:1992,12,5 预期输出: 我的出生日期是1992年12月05日 我今年30岁了

# 请在此添加代码
########## Begin ##########
birth_year, birth_month, birth_day = input().split(",")
birth_year = int(birth_year)
birth_month = int(birth_month)
birth_day = int(birth_day)
age = 2022 - birth_year
print("我的出生日期是{}年{:02d}月{:02d}日".format(birth_year, birth_month, birth_day))
print("我今年{}岁了".format(age))
########## End ##########

第6关:逆序数

任务描述

本关任务:从键盘输入一个三位整数n,输出其逆序数m。例如,输入n=127,则m=721。 ####分析: 程序分为以下三步。

  1. 输入一个3位整数n
  2. 求逆序数m
  3. 输出m
相关知识

为了完成本关任务,你需要掌握:1.如何获取每一个数位上的数字,2.算术运算符的综合运用。

编程要求

根据提示,在右侧编辑器补充代码,计算并输出逆序数。 输出语句格式为:print("{0:3}的逆序数是{1:3}".format(n,m))

测试说明

平台会对你编写的代码进行测试:

测试输入:n=127 预期输出:127的逆序数是721

n = int(input("n="))

# 求逆序数m
m = (n % 10) * 100 + ((n // 10) % 10) * 10 + n // 100

# 输出结果
print("{0:3}的逆序数是{1:3}".format(n, m))
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值