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

7.8 python 函数

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

7.8 python 函数


缺省参数


如果实参没有给,就是用默认参数值

global

global表明x是全局变量,此时在函数内修改x值等同于修改全局变量x的值
!! x此时不需要成为参数

1

题目内容:

一个斐波那契数列的前10项为:1, 2, 3, 5, 8, 13, 21, 34, 55, 89,对于一个最大项的值不超过n的斐波那契数列,求值为偶数的项的和。

输入格式:

一个正整数n,如100。

输出格式:

值为偶数的项的和,如 2 + 8 + 34 = 44。

输入样例:

100

输出样例:

44

def fib(n,a,b,sum):
    c=a+b
    if c>n:return sum
    if c%2==0:sum+=c
    return fib(n,b,c,sum)

n=int(input())
print(fib(n,1,1,0))
2

题目内容:

若已知1800年1月1日为星期3,则对于一个给定的年份和月份,输出这个月的最后一天是星期几。

输入格式:

两行整数,分别代表年份和月份

输出格式:

星期数,0代表星期日

输入样例:

2033

12

输出样例:

6

def run(x):
    if x%400==0 or (x%4==0 and x%100!=0):
        return True
    else: return False

def Get_month(x,y):
    if x in(1,3,5,7,8,10,12):
        return 31
    elif x in(4,6,9,11):
        return 30
    elif run(y):return 29
    else: return 28

def Get_days(year,month):
    days=0
    for i in range(1800,year):
        if run(i):days+=366
        else: days+=365
    for i in range(1,month+1):
        days+=Get_month(i,year)
    return days

year=int(input())
month=int(input())
days=Get_days(year,month)-1
天数要减1,不包括1800年1月1日
ans=(3+days%7)%7
if ans==0:ans=7
print(ans)
3

题目内容:

如在汉诺塔游戏中,我们希望将塔A上的n个盘子,通过塔B移动到塔C,则对于任意输入的n,给出移动的步骤。

输入格式:

一个正整数n

输出格式:

移动的步骤

输入样例:

2

输出样例:

Move 1 from A to B

Move 2 from A to C

Move 1 from B to C

def hanoi(n,a,b,c):
    if n==1:
        print "Move",n,"from",a,"to",c
        python2中输出要去掉print中的括号
        python3中则不用
        return 
    hanoi(n-1,a,c,b)
    print "Move",n,"from",a,"to",c
    hanoi(n-1,b,a,c)

n=int(input())
hanoi(n,'A','B','C')
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1009357.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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