文库 真题 信息素养大赛真题

2022年全国青少年信息素养大赛Python编程复赛真题

信息素养大赛 Python真题 PDF   6页   下载2   2024-03-14   浏览403   收藏0   点赞0   评分-   免费文档
温馨提示:当前文档最多只能预览 2 页,若文档总页数超出了 2 页,请下载原文档以浏览全部内容。
2022年全国青少年信息素养大赛Python编程复赛真题 第1页
2022年全国青少年信息素养大赛Python编程复赛真题 第2页
剩余4页未读, 下载浏览全部
202 2 年全 国青少年信息素养大赛 (P yth on ) 复 赛真题 第1 题 小明邀请了 四个同学一起游玩,带了一盒草莓平均分给大家一起吃,任 意输 入 草莓的数 量 n ,输出每个人可以分到几颗草莓,最后剩下了几颗。 注 意: in p ut( ) 内不 添加任何参数 只有完全正 确才可提交,若无法点击提交说明答题存在错误,可及时进 行检 查 并修改 输入样例: 28 输 出样例 : : 5 3 第2 题 商店铅笔优 惠销售标准:购买 8 支以内(含),每支售价 0.8 元,超过 8 支部 分,每支售 价 0.7 元。任意输入购买的铅笔总量 n ,输出总金额。 注 意: # 将字符数字 转成整数 n = int (inp ut ( )) # 方法 1 ,使 用 // 和 % 运算符 pri nt (n / / 5) pri nt (n % 5) # 方法 2 ,使 用 divm od 内置函数 a, b = div mod (n,5) p ri nt (a) p ri nt (b) 1 2 3 4 5 6 7 8 9 in p ut( ) 内不 添加任何参数 只有完全正 确才可提交,若无法点击提交说明答题存在错误,可及时进 行检 查 并修改 输入样例: 11 输 出样例: 8.5 法 二: 第 3 题 输入一个正 整数 n ,如果是四位数,则分别输出这个数千位、百位,十 位和个 位 分别为多 少,如果是两位数,则输出个位数字是多少,如果不是两位 或者四位 数 ,则输出 no 。 注意: in p ut( ) 内不 添加任何参数 只有完全正 确才可提交,若无法点击提交,说明答题存在错误,可及时 进行 检 查并修改 输入样例 1 : # 将字符数字 转成整数 n = int (inp ut ( )) # 分两种情况 进行计算 if n <= 8: pri nt (n * 0 .8 ) els e : pri nt ( 8 * 0.8 + ( n - 8) * 0.7 ) 1 2 3 4 5 6 7 # 将字符数字 转成整数 n = int (inp ut ( )) # 一行代码的 写法 pri nt (n * 0 .8 if n <= 8 els e 8 * 0.8 + ( n - 8) * 0.7 ) 1 2 3 4 234 5 输 出样例: 2 3 4 5 输入样例 2 : 23 输 出样例: 3 输入样例 3 : 666 输 出样例: no [参 考代码 ] : 第4 题 任意输入一 个整数 n ,输出一个 n 行的的图案,每行都是由数字 + 空格 + 号组 成, 号后无空格 。 n = inp ut ( ) if len (n) == 2: pri nt (n[-1] ) eli f len (n) == 4: pri nt (n[0] , n[1], n[2], n[3], sep ="\n " ) els e : pri nt (" no " ) 1 2 3 4 5 6 7 注意: in p ut( ) 内不 添加任何参数 只有完全正 确才可提交,若无法点击提交说明答题存在错误,可及时进 行检 查 并修改 输入样例: 5 输出样例: 0 ** *** 1 ** * 2 * 3 * ** 4 * 第 5 题 已知:缺憾 数是指这个数加 1 之后一定可以表示成另一个数的平方的形 式,比 如 8 和 99 就是两 个缺憾数: 8 + 1 = 3 ^ 2 9 9 + 1 = 1 0 ^ 2 任 意输入两 个正整数 m 和 n ,按顺序输出 m 和 n 这两个数字范围内所有的 缺憾 数 。 注意: in p ut( ) 内不 添加任何参数 n = int (inp ut ( )) for i in ran ge (n) : pri nt (i," " * i, "*" * ( 2 * ( n - i) - 1), sep ="" ) 1 2 3 输入样例: 48 10 输 出样例: 15 24 35 如 果不熟悉 ** 运算的话,可以使用循环逐个来判断,相对来说,代码会麻烦 一 些。 第 6 题 同学们正在 练习列队,从第一个人开始按编号 1 、 2 、 … 、 n(n < 1000) 报数,开 始 所有人都 是面向前方,第一遍报数是 2 的倍数的同学执行一遍向后转 命令,第 二 遍报数是 3 的倍数的同学执行一遍向后转命令,第三遍报数是 5 的倍数 的同学执 行 一遍向后 转命令,输入人数 n ,按顺序输出最终仍然面向前方的同学 的编号。 注 意: in p ut( ) 内不 添加任何参数 m = int (inp ut ( )) n = int (inp ut ( )) for i in ran ge (m in (m,n), max (m,n)): # 计算开方数 ,并转成 整数 a = ( i + 1) ** 0.5 # 将 a 转成整 数 a = int (a) if i + 1 == a ** 2: # 输出数字 pri nt (i) 1 2 3 4 5 6 7 8 9 1 0 11 -E N D- 只 有完全正 确才可提交,若无法点击提交说明答题存在错误,可及时进 行检 查 并修改 输入样例: 10 输 出样例: 1 6 7 10 # 获取输入, 并转成整 数 n = int (inp ut ( )) # 初始化列表 ,默认都 是 -1 ,表示向前 dir ectio n = [ -1] * n # 第 1 遍报数 ,注意报 数是从 1 开始的 for i in ran ge (n) : if ( i + 1) % 2 == 0: dir ectio n [i] = 1 # 第 2 遍报数 for i in ran ge (n) : if ( i + 1) % 3 == 0: dir ectio n [i] *= -1 # 第 3 遍报数 for i in ran ge (n) : if ( i + 1) % 5 == 0: dir ectio n [i] *= -1 # 输出值为 -1 是列表项 for i in ran ge (n) : if dir ectio n [i] == -1: pri nt (i + 1) 1 2 3 4 5 6 7 8 9 1 0 11 12 13 14 15 16 17 1
电子学会2022年全国青少年信息素养大赛(Python)复赛真题,2022年全国青少年信息素养大赛Python编程复赛真题
下载提示

下载及版权说明:6547网文库内容来自网络及各平台公开内容(属于用户上传,不保证正确性,只做参考),旨在帮助同学们学习少儿编程相关知识及内容,仅限内部学习及使用,以分享为主,下载本文档之后请合法使用相关、真题、素材、课件、教程等内容,若内容存在侵权,请进行 举报 及查看 免责声明