题目:
2060年,木卫二和地球实现星际旅行,你来到木卫二海底一个叫"伽利略游乐园:的地方玩耍,木卫二的珊瑚虫机器人热情接待了你,并询问你是否需要帮助,你需要用人脸识别将银行卡里的人民币兑换50个伽币,按照以下要求设计代码
珊瑚虫:您好,欢迎光临伽利略游乐园,请问您需要帮助吗?需要or不需要?
你:需要
珊瑚虫:请问您需要什么帮助呢?1 存取款;2 货币兑换;3 咨询
你:2
珊瑚虫:伽币和人民币的兑换率为1:4.78,即一伽币=4.78人民币
珊瑚虫:请问您需要兑换多少伽币呢?
(你说了一个数字N)
珊瑚虫:好的,我知道了,您需要兑换(你说的数字N)伽币,
珊瑚虫:那么,您需要付给我(你说的数字N*4.78)人民币。
注1:如果选择不需要帮助,珊瑚虫会说’好的,再见。’
注2: 如果选择帮助【1 存取款】,珊瑚虫会推荐你去存取款窗口;如果选择帮助【3 咨询】,珊瑚虫会推荐你去咨询窗口。
代码:
choice=input(‘您好,欢迎光临伽利略游乐园,请问您需要帮助吗?需要or不需要?’)
if choice==‘需要’:
number=input(‘请问您需要什么帮助呢?1 存取款;2 货币兑换;3 咨询’)
if number==‘2’:
print(‘伽币和人民币的兑换率为1:4.78,即一伽币=4.78人民币’)
money=input(‘请问您需要兑换多少伽币呢?’)
print(‘好的,我知道了,您需要兑换’+money+‘伽币’)
print(‘那么,您需要付给我’+str(int(float(money)*4.78))+‘人民币’)
elif number==‘1’:
print(‘请您去存取款窗口办理’)
elif number==‘3’:
print(‘咨询窗口在右手边哦’)
else:
print(‘您输入的答案不正确’)
elif choice==‘不需要’:
print(‘好的,谢谢’)
else:
print(‘您输入的答案不正确’)
需要注意点:
- input()函数的数据类型必须是字符串,因此括号内的内容必须带引号;
- 要区分if …if 嵌套和 if …elif… else…多向判断。if嵌套是在上一级的基础上继续加条件,本题中不需要用用到if嵌套,而是用到了多向判断;
- 变量的数据类型三种均可,这行代码 print(‘好的,我知道了,您需要兑换’+money+‘伽币’)不需要对money进行数据转换的原因是对money这个变量进行赋值的是表示字符串的input()函数,而不是因为变量的数据类型只能是字符串;
- 不同数据类型无法进行运算,另外数据非字符串类型,无法使用“+”进行拼接。因此将 “那么,您需要付给我(你说的数字N*4.78)人民币” 用代码表示的时候首先需要将money这个变量用float()函数浮点数化,才能与数字4.78做乘法运算,其次因为python用的语句是二进制,需要用int()函数再将float(moeny)*4.78的结果整数化,最后用str()函数将得出的整数转化为字符串和前后的字符串拼接。最后的代码为 print(‘那么,您需要付给我’+str(int(float(money)*4.78))+‘人民币’)