CCF:201912-1 报数 Python实现

本文介绍了一段代码,该代码定义了一个函数function_1,用于检查输入数字是否与7有关联,如以7结尾、能被7整除等。另一个函数function则基于function_1的结果,对满足条件的数字进行分类,将其分为“jia”、“yi”、“bing”、“ding”四类,并统计各类的数量。最终输出这四类数字的数量。

在这里插入图片描述
代码:

import math

def function_1(num):
    if num % 10 == 7:
        flag = True
    elif num % 7 == 0:
        flag = True
    elif math.floor(num/10) == 7:
        flag = True
    elif math.floor(num/100) == 7:
        flag = True
    elif math.floor(num/10) % 10 == 7:
        flag = True
    else:
        flag = False
    return flag

def function(d, num_bao, num):
    s = 1
    while num_bao < num:
        if function_1(s) == True:
            if s % 4 == 1:
                d['jia'] += 1
            elif s % 4 == 2:
                d['yi'] += 1
            elif s % 4 == 3:
                d['bing'] += 1
            elif s % 4 == 0:
                d['ding'] += 1
            s = s+1
        else:
            s = s+1
            num_bao += 1
            continue
    return d

num = int(input())
num_bao = 0
d = {'jia': 0, 'yi': 0, 'bing': 0, 'ding': 0}
d = function(d, num_bao, num)
print(d['jia'])
print(d['yi'])
print(d['bing'])
print(d['ding'])

结果:
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值