Python应用练习题(第二期)——条件语句&循环嵌套的应用

1.正负交错数列前n项和

  • 描述
    1-1/2+2/3-3/5+4/8-5/13+…的前n项和,n由用户输入(n>0),结果用str.format()方法保留小数点后6位数字输出。

  • 输入格式
    一个正整数‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输出格式
    前n项的和

演示输入输出
示例 1120.828448
  • 代码参考
# 方法一:普通方法(繁琐,逻辑性差)
flag = sum = fenzi = fenmu_1 = fenmu_2 = 1
for i in range(eval(input()) - 1):
    flag = -flag
    fenmu = fenmu_1 + fenmu_2
    end = flag * (fenzi / fenmu)
    sum = sum + end
    fenmu_1 = fenmu_2
    fenmu_2 = fenmu
    fenzi = fenzi + 1
print('{:.6f}'.format(sum))
# 方法二:函数递归调用法(逻辑简洁)
def molecular(n):  # 分子
    return (-1) ** (n+1) * (n + 1)


def denominator(n):  # 分母
    if n < 0:
        return 1
    elif n == 0:
        return 2
    else:
        return denominator(n-1) + denominator(n-2)


n_0 = int(input())
s = 1  # 将1单独拿出
for i in range(n_0-1):
    sum += molecular(i)/denominator(i)  # 累加
print('{:.6f}'.format(s))

2.求数列前n项的平方和

  • 描述
    现有数列:1,2,3,4,……,n,计算并输出其前n项的平方和,即求:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    1×1+2×2+3×3+……+n×n的和。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输入
    输入一个正整数 n‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输出
    数列前n项的平方和

演示输入输出
示例 1314
  • 挑战:用一行代码完成要求。
  • 代码参考
方法一:
num = int(input())
sum = 0
for i in range(1, num+1):
    sum = sum + i ** 2
print(sum)

方法二:
print(sum([i ** 2 for i in range(1, eval(input()) + 1)]))

3.百分制成绩转换五分制(循环)

  • 描述
    编写一个学生成绩转换程序,用户输入百分制的学生成绩,成绩大于或等于90且小于或等于100的输出为“A”,成绩大于或等于80且小于90的输出为“B”,成绩大于或等于70且小于80的输出为“C”,成绩大于或等于60且小于70的输出为“D”,成绩小于60的输出为“E”。输入数据不合法时输出“data error!”。用户可反复输入成绩进行转换,输入负数时输出“end”并结束程序‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输入格式
    每次输入一个浮点数,代表百分制成绩;反复输入,输入负数结束程序‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输出格式
    根据每一次的输入值分别输出A、B、C、D、E中的一个字母或"data error!“或"end”。输出end时程序结束。

演示输入输出
示例 188B
示例 299A
示例 356E
示例 4156data error!
示例 5-5end
  • 代码参考
grade = eval(input())
while True:
    if grade > 100:
        print('data error!')
    elif 90 <= grade <= 100:
        print('A')
    elif 80 <= grade < 90:
        print('B')
    elif 70 <= grade < 80:
        print('C')
    elif 60 <= grade < 70:
        print('D')
    elif 0 < grade < 60:
        print('E')
    elif grade < 0:
        print('end')
        break
    grade = eval(input())

4.一元二次方程求根

  • 描述
    一元二次方程ax2+bx+c=0,a、b、c的值由用户在三行中输入,根据用户输入的数值求解方程的实数解:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    1.如果a值 为0,根据b值判断方程是否有解并输出,如果a与b同时为0,则输出Data error!‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    2.如果方程无实数解,输出“该方程无实数解”;‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    3.如果方程有两个相同的实数解,输出一个解,结果保留2位小数;‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    4.如果方程有两个不同的实数解,在一行内按从大到小顺序输出方程的两个解,用空格分隔,结果保留2位小数。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输入格式
    输入三行数据, 每行输入一个实数‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输出格式
    方程的解

演示输入输出
示例 10
0
9
Data error!
示例 28
5
2
该方程无实数解
示例 30
3
7
x=-2.33
示例 41
2
1
x=-1.00
示例 51
-5
6
x_1=2.00 x_2=3.00
示例 61.2
3
0.8
x_1=-2.20 x_2=-0.30
  • 代码参考
a = eval(input())
b = eval(input())
c = eval(input())
if a == 0:
    if b == 0:
        print('Data error!')
    else:
        print('x={:.2f}'.format(-c/b))
else:
    derta = b ** 2 - 4 * a * c
    if derta == 0:
        print('x={:.2f}'.format(-b/(2*a)))
    elif derta > 0:
        x1 = (-b - derta ** 0.5) / (2 * a)
        x2 = (-b + derta ** 0.5) / (2 * a)
        print('x_1={:.2f}    x_2={:.2f}'.format(min(x1, x2), max(x1, x2)))
    elif derta < 0:
        print('该方程无实数解')

5.棋盘放米

  • 描述‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    相传古代印度国王舍罕要褒赏他的聪明能干的宰相达依尔 (国际象棋发明者),问他需要什么?‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    达依尔回答说:“国王只要在国际象棋的棋盘第一个格子里放一粒麦子,第二个格子里放两粒,第三个格子里放四粒,按此比例以后每一格加一倍,一直放到64格(国际象棋棋盘是8×8=64格),我就感恩不尽,其他的我什么也不要了。”‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    国王想:“这有多少,还不容易!”让人扛来一袋小麦,但不到一会儿全用没了,再来一袋很快又没有了,结果全印度的粮食全部用完还不够,国王纳闷,怎样也算不清这笔账,请你帮国王计算一下,放到第 n (1<= n <=64)格时,共需多少粒麦子,写出程序。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输入格式
    输入一个小于等于64的正整数 n‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输出格式
    一个正整数,表示多少粒麦子

演示输入输出
示例 111
示例 21665535
  • 代码参考
s = int(input())
rice = 0
for i in range(s):
    rice = rice + 2 ** i
print(rice)

6.百钱买百鸡

  • 描述
    我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,如果要求鸡翁、鸡母、鸡雏都不为零,问鸡翁、鸡母、鸡雏各几何?‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输入格式
    该题目没有输入‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输出格式
    每行输出一组结果,按鸡翁数、鸡母数、鸡雏数的顺序输出,数字之间用空格分隔;‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    如果有多组解时,按鸡翁数量由少到多输出;

  • 代码参考

for large in range(1, 20):
    for big in range(1,33):
        for small in range(3, 300, 3):
            if large * 5 + big * 3 + int(small / 3) == 100 and large + big + small == 100:
                print('{0} {1} {2}'.format(large, big, small))

7.鸡兔同笼

  • 描述
    大约在1500年前,《孙子算经》中就记载了这个有趣的问题。书中是这样叙述的:
    今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
    这四句话的意思是:
    有若干只鸡兔同在一个笼子里,从上面数,有35个头,从下面数,有94只脚。问笼中各有多少只鸡和兔?‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    请编一个程序,用户在同一行内输入两个整数,代表头和脚的数量,编程计算笼中各有多少只鸡和兔,假设鸡和兔都正常,无残疾。如无解则输出Data Error!

  • 输入格式
    在一行里输入两个整数,用空格分隔‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输出格式
    在一行里输出两个正整数,分别是鸡和兔的数量,用空格分隔‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    如无解则输出Data Error!
    提示:

a,b = input().split()  #读入两个数到a b中
a,b = map(int,input().split(','))  #读入两个整数到a,b中,输入的数用逗号分隔
a,b = map(int,input().split(' '))  #读入两个整数到a,b中,输入的数用空格分隔
演示输入输出
示例 135 9423 12
示例 2-4 16Data Error!
  • 代码参考
h, l = map(int, input().split(' '))
flag = 0
for chick in range(h):
    for rabbit in range(l):
        if chick + rabbit == h and 2 * chick + 4 * rabbit == l:
            print('{0} {1}'.format(chick, rabbit))
            flag = 1
if flag == 0:
    print('Data Error!')

9.个税计算器

  • 描述
    目前我国个人所得税计算公式如下:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    应纳个人所得税税额= (工资薪金所得 -五险一金 - 个税免征额)×适用税率-速算扣除数‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
    个税免征额为5000元/月,2018年10月1日起调整后,也就是2018年实行的7级超额累进个人所得税税率表如下:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
全月应纳税所得额(含税级距)税率(%)速算扣除数
不超过3,000元30
超过3,000元至12,000元的部分10210
超过12,000元至25,000元的部分201,410
超过25,000元至35,000元的部分252,660
超过35,000元至55,000元的部分304,410
超过55,000元至80,000元的部分357,160
超过80,000元的部分4515,160

请编写一个个税计算器,用户输入为应发工资薪金所得扣除五险一金后的金额,输出应缴税款和实发工资,结果保留小数点后两位。当输入数字小于0时,输出“error”。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输入格式
    输入一个表示工资的数值,例如12000.0,此数值为已扣除五险一金后的金额。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输出格式
    应缴税款490.00元,实发工资11510.00元。

演示输入输出
示例 12700应缴税款0.00元,实发工资2700.00元。
示例 212000应缴税款490.00元,实发工资11510.00元。
示例 320000应缴税款1590.00元,实发工资18410.00元。
示例 45230.8应缴税款6.92元,实发工资5223.88元。
示例 5-10error
  • 代码参考
salary = eval(input())
if salary < 0:
    print('error')
elif 0 <= salary <= 5000:
    print('应缴税款{:.2f}元,实发工资{:.2f}元。'.format(0, salary))
else:
    if salary - 5000 <= 3000:
        shui = (salary - 5000) * 0.03 - 0
        salary_r = salary - shui
        print('应缴税款{:.2f}元,实发工资{:.2f}元。'.format(shui, salary_r))
    elif 3000 < salary - 5000 <= 12000:
        shui = (salary - 5000) * 0.1 - 210
        salary_r = salary - shui
        print('应缴税款{:.2f}元,实发工资{:.2f}元。'.format(shui, salary_r))
    elif 12000 < salary - 5000 <= 25000:
        shui = (salary - 5000) * 0.2 - 1410
        salary_r = salary - shui
        print('应缴税款{:.2f}元,实发工资{:.2f}元。'.format(shui, salary_r))
    elif 25000 < salary - 5000 <= 35000:
        shui = (salary - 5000) * 0.25 - 2660
        salary_r = salary - shui
        print('应缴税款{:.2f}元,实发工资{:.2f}元。'.format(shui, salary_r))
    elif 35000 < salary - 5000 <= 55000:
        shui = (salary - 5000) * 0.3 - 4410
        salary_r = salary - shui
        print('应缴税款{:.2f}元,实发工资{:.2f}元。'.format(shui, salary_r))
    elif 55000 < salary - 5000 <= 80000:
        shui = (salary - 5000) * 0.35 - 7160
        salary_r = salary - shui
        print('应缴税款{:.2f}元,实发工资{:.2f}元。'.format(shui, salary_r))
    elif salary - 5000 > 80000:
        shui = (salary - 5000) * 0.45 - 15160
        salary_r = salary - shui
        print('应缴税款{:.2f}元,实发工资{:.2f}元。'.format(shui, salary_r))

10.判断闰年

  • 描述
    写一个程序用于判断用户输入的年份是不是闰年,如果是输出“True”,如果不是输出“False”。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输入格式
    输入一个代表年份的正整数‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

  • 输出格式
    “True”或“False”

演示输入输出
示例 11900False
示例 22000True
  • 代码参考
year = int(input())
if year % 400 == 0:
    flag = 'True'
else :
    if year % 100 == 0:
        flag = 'False'
    else:
        if year % 4 == 0:
            flag = 'True'
        else:
            flag = 'False'
print(flag)
  • 20
    点赞
  • 82
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值