万卷网> 电子学会考级 >Python等级考试 > 2026年3月电子学会青少年软件编程(Python四级)等级考试试卷

2026年3月电子学会青少年软件编程(Python四级)等级考试试卷
操作/编程 四级 2026 2026-05-01 14:27:11 121

一、编程题

1.

种植花卉

园丁在花园里种植花卉,第1行种5株花。从第2行开始,如果行数能被 3 整除,该行种植的花卉数量是前一行的2倍;如果行数除以3余 1,该行种植的花卉数量比前一行多3株;如果行数除以3余2,该行种植的花卉数量比前一行少1株。下面的递归函数用于计算第n行种植了多少株花卉,请完善划线处的代码。

def flower(n):

    if n == 1:

        return         ①       

    else:

        leftover =       ②       

        if leftover == 0:

            current=        ③       

        elif leftover == 1:

            current =       ④       

        else:

            current =flower(n-1) - 1

        return current

hang=int(input("请输入行数:"))

print(f"第{hang}行种植了{flower(hang)}株花卉")

2.

密码安全性

密码离不开大家的生活,各类APP中密码设置简单了,就容易造成损失。为此小明编写程序检测密码是否安全。安全密码的两个条件:①密码长度至少8位,②密码中数字、大写字母、小写字母和特殊符号(!@#$%^&*())这四类符号中必须有3项以上。比如,密码是 "ADa%9"(不包括双引号),运行程序后输出"密码不符合安全要求"。利用Python编写程序如下,完善划线处的代码。

def checkpwd(pwd):

    c = [0] * 4

    flag = False

    if len(pwd) >= 8:

                ①       

    for i in pwd:

        if        ②       :

            c[0] = 1

        elif i >='A' and i <= 'Z':

            c[1] = 1

        elif i >='a' and i <= 'z':

            c[2] = 1

        elif i in '!@#$%^&*()':

                    ③       

    if        ④       and flag:

        return True

    else:

        return False

pwd = input('请输入密码')

if checkpwd(pwd):

    print('密码符合安全要求')

else:

    print('密码不符合安全要求')

3.

智能家居系统

在智能家居系统中,我们可以通过中央控制系统来管理各个房间的智能灯。为了简化问题,假设每个房间有一个智能灯,其状态用1表示开,0表示关。我们的任务是计算家里所有开着的灯的数量。我们将采用分治算法的思想来解决这个问题。

请补全以下代码,使用分治算法实现统计列表中开着的灯(值为1)数量的功能。

def count_lights_on(rooms):

    # 如果列表为空,直接返回0

    if not rooms:

        return 0

    # 如果列表只有一个元素,直接判断是否为开着的灯

    if len(rooms) == 1:

        return rooms[0]

    # 将列表分为两部分

    mid =        ①       

    left_rooms = rooms[:mid]

    right_rooms = rooms[mid:]

    # 使用分治递归统计每部分开着的灯的数量

    count_left =        ②       

    count_right = count_lights_on(right_rooms)

    # 返回总开着的灯的数量

    return        ③       

# 示例测试

rooms = [1, 0, 1, 0, 1, 0, 1]  # 1代表灯开着,0代表灯关着

print(count_lights_on(rooms)) # 输出应为4

公众号
客服 反馈
顶部