Python案例四 PTA编程练习答案

7-1 定义函数打印餐厅菜单

定义函数menu(),能打印出菜品的编号、名字、价格以及口味的信息。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

该函数调用形式:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

menu(1,“鱼香肉丝”,25.0,“甜酸辣”)

输入格式:
无需输入

输出格式:
输出菜单条目

输入样例:
在这里给出一组输入。例如:

输出样例:
在这里给出相应的输出。例如:

1
鱼香肉丝
25.0
甜酸辣
2
番茄鸡蛋
17.0
酸甜

def menu(number, name, price, stase):
    print(number)
    print(name)
    print(price)
    print(stase)


menu(1, "鱼香肉丝", 25.0, "甜酸辣")
menu(2, "番茄鸡蛋", 17.0, "酸甜")

7-2 函数定义计算存款利息

编写lixi(money,year,rate)函数计算存款利息,money代表存款金额,year代表存款年限,rate代表年利率。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

已知银行存款利息计算公式:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

    总金额=存款金额*(1+年利率)**存款年限

注意:lixi函数仅完成利息的计算,不完成数据的输入和输出。

输入格式:
输入1个绝对值不超过100000的实数A和不超过10的整数B,以及小于1的实数C

输出格式:
输出实数利息,保留两位小数

输入样例:
在这里给出一组输入。例如:

10000
2
0.025
输出样例:
在这里给出相应的输出。例如:

10000.00元存款2年后,您可以获得506.25元利息

ans = 0
def lixi(money, year, rate):
    global ans
    ans =(money * (1 + rate) ** year)-money
money = int(input())
year = int(input())
rate = float(input())

lixi(money, year, rate)
print('{:.2f}元存款{}年后,您可以获得{}元利息'.format(money, year, ans))
本地编译结果:

在这里插入图片描述

7-3 递归函数打印斐波那契数列

斐波那契数列又称为兔子数列, 因数学家昂纳多·斐波那契以兔子繁殖为例子引入, 这个数列中的据满足以下公式:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

F(1)=1, F(2)=1, F(n)= F(n-1) + F(n-2) (n>=3,n∈N*)‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

本实例要求编写程序,现根据用户输入的数字出斐波那契列功能。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

分析:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

根据实例描述中的公式,可以定义一个递归函数 根据实例描述中的公式,可以定义一个递归函数fibonacci (n),该函数中 n表示斐波那契数,边界条件为 n=1或 n=2,递归公式为 fibonacci(n -1)+ fibonacci(n -2) 。

输入格式:
输入在一行中给出整数n(0<=n<=100)

输出格式:
输出n个斐波拉契数,之间用空格隔开

输入样例:
在这里给出一组输入。例如:

5
输出样例:
在这里给出相应的输出。例如:

1 1 2 3 5

def fibonacci(n):
    if n == 1 or n == 2:
        return 1
    else:
        return fibonacci(n - 1) + fibonacci(n - 2)
num = int(input(''))
for i in range(1, num + 1):
    print(fibonacci(i), end=' ')
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值