当前位置:首页>java>【第35期】21天养成编程习惯:Python刷题第19天

【第35期】21天养成编程习惯:Python刷题第19天

  • 2026-10-21 13:27:41
【第35期】21天养成编程习惯:Python刷题第19天

跟老马一起“升级打怪”学编程!

  • 涉及考试:计算机学会编程能力等级认证(GESP)、电子学会等级考试
  • 活动内容:提供不同等级的真题供小朋友们选择练习
  • 备考建议:根据自己备考的等级选择相应题目
  • 附加价值:可作为白名单比赛的备考训练
  • 本月打卡:本月打卡题目

Day19:CIE一级2022.12_编程题37

要求:

(1)画一个边长为400的正方形,然后将其平均分割成4份,分割线相交于一点,形成一个田字格,效果如下图:

(2)正方形的边框为黑色,分割线的颜色为红色;

(3)分割线的交点为画布的中心;

(4)最后海龟要隐藏。

参考程序:

注意:仅供参考,考生可以自行设计,结果符合题意即可。

import turtleturtle.penup()turtle.goto(-200, -200)turtle.pendown()for i in range(4):    turtle.forward(400)    turtle.left(90)turtle.pencolor('red')turtle.penup()turtle.goto(-200, 0)turtle.pendown()turtle.goto(200, 0)turtle.penup()turtle.goto(0, -200)turtle.pendown()turtle.goto(0, 200)turtle.hideturtle()turtle.done()

Day19:GESP二级2023.03_字母阵列

【问题描述】

输入一个正整数 N,输出 N 行 N 列字母,字母为大写英文字母,执行效果如下。输入正整数 27,输出 27 行字母,每行 27 个字母。第一行从A 开始,第二行 B 开始。当到达 Z,再从 A 开始。

【输入描述】

输入一行,一个大于等于 1 的正整数 N。

【输出描述】

输出上图所示的字母阵列。

【样例输入 1】

5

【样例输出 1】

ABCDEBCDEFCDEFGDEFGHEFGHI

【样例输入 2】

10

【样例输出 2】

ABCDEFGHIJBCDEFGHIJKCDEFGHIJKLDEFGHIJKLMEFGHIJKLMNFGHIJKLMNOGHIJKLMNOPHIJKLMNOPQIJKLMNOPQRJKLMNOPQRS

参考程序:

注意:仅供参考,考生可以自行设计,结果符合题意即可。

str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"N = int(input())c = 0for i in range(N):    s = ''    k = cfor j in range(N):        s += str[k % 26]        k += 1    c = (c + 1) % 26    print(s)

Day19:GESP三级2025.03_2025

【提交】

https://www.luogu.com.cn/problem/B4261

【问题描述】

小 A 有一个整数 ,他想找到最小的正整数  使得下式成立:

其中  表示二进制按位与运算, 表示二进制按位或运算。如果不存在满足条件的 ,则输出 。

【输入描述】

一行,一个整数 。

【输出描述】

一行,一个整数,若满足条件的  存在则输出 ,否则输出 。

【样例输入1】

1025

【样例输出1】

1000

【数据范围】

对于所有测试点,保证 。

【提示】

其中:

  •  表示按位与运算,运算符为 &。
  •  表示按位或运算,运算符为 |。

参考程序:

'''[GESP202503 三级] 2025https://www.luogu.com.cn/problem/B4261'''x = int(input())print(2025 - x)

Day19:CIE四级2023.12_统计高分问题

小张在学习对分查找后,想利用该思路来实践一下,加深对该算法的理解。于是他按老师的要求,统计期末考试成绩,总分比他高的同学有多少个?

他的思路是,首先将全区所有学生的成绩降序排序,然后利用对分查找思想解决。他编写的代码如下,请完善划线处的代码。

cj = [654, 643, 621, 612, 609, 606]  # 学生成绩存列表cj并已经降序排序defdfsearch(key):    i = 0    j = len(cj) - 1while i <= j:        m = (i + j) // 2if cj[m] > key:            _____①_____else:            j -= 1return _____②_____key = int(input('输入待查找的成绩'))pos = _____③_____print('高于', key, '分的人数有', pos)

参考答案:

① i += 1或等价表达式

② i或等价表达式

③ dfsearch(key)或等价表达式


青少年编程竞赛交流

「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),添加小助手微信,让他邀请大家进入学习群。进群之后大家可以参与定期组织的21天刷题打卡、等级考试测评、教育部白名单比赛辅导以及青少年编程组队竞赛等活动。

最新文章

随机文章