【电子学会】2023年03月图形化四级 -- 判断亲和数

news2024/11/23 7:58:07

判断亲和数

对于正整数a和b(a>=b),如果a除以b的余数为0,那么b是a的因数,例如6的因数为1,2,3,6。

亲和数,指两个正整数,彼此的全部因数之和(这里的因数不包括整数自己)与另一方相等。例如12的因数之和 1+2+3+4+6=16, 26的因数之和为 1+2+13=16,12和26是亲和数。

输入两个正整数,判断这两个数是否为亲和数。

1. 准备工作

(1)保留默认的小猫角色和白色背景。

2. 功能实现

(1)点击绿旗,小猫询问“请输入第一个正整数”;

(2)小猫询问“请输入第二个正整数”;

(3)小猫计算两个数的因数和后,判断这两个数是否亲和数,例如如果是亲和数,小猫说“xx和xx是亲和数”;如果不是,小猫说“xx和xx不是亲和数”。

3. 设计思路与实现

(1)角色分析

角色:默认角色小猫

(2)背景分析

背景:默认背景(无色)

(3)所用积木块介绍

a. 外观类

  • 在规定的时间内在舞台上显示输入的文字(说话云朵)。

b. 事件类

  • 程序开始积木块。
  • 点击舞台区的绿旗,执行以绿旗开始的所有程序脚本。

c. 控制类

  • 条件判断语句,如果条件满足执行那么模块里面的积木指令,如果条件不成立,返回值为假,那么执行否则模块里面的积木指令。

  • 循环积木块:一遍一遍地执行包起来的积木序列。
  • 判断条件是否为真,如果尖尖角里面的返回值为真则停止循环。

d. 侦测类

  • 角色发出询问,并在舞台下边框弹出对话框,等待用户的输入回答。

  • 实时的侦测用户所输入的回答,并存储在“回答”变量中。

e. 运算类

  • 比较运算,左边等于右边返回true值(真),否则返回false值(假)。

  • 连接两个字符串,得到一个新的字符串。

  • 算术运算,返回左边除以右边的余数。

f. 变量类

  • 建立一个变量,输入变量名称,然后选择适用于所有角色还是适用于当前角色。

  • 设置变量的值为给定值,通常用于初始化变量。

  • 设置变量的值为自身的值加X。

g. 自制积木类

  • 建立一个积木,输入积木名称,然后添加积木的参数,以及选择“运行时是否刷新屏幕”。

(4)角色、舞台背景设置

a. 角色设置

默认角色设置,无需修改角色造型。

b. 舞台背景设置

默认舞台背景设置,无需修改舞台背景。

(5)脚本编写

编程题的功能实现有多种方案,标准答案所示参考程序仅是其中的一种,最终以是否完成题目要求的功能实现效果作为评分依据。

新建变量a1,用来存储第一次询问的回答。

新建变量a2,用来存储第二次询问的回答。

新建变量r1,用来存储第一个数的因数和。

新建变量r2,用来存储第二个数的因数和。

新建变量result,用来存储函数的返回值,即因数和。

新建变量i,用来存储循环的索引。

a. 角色:小猫

函数:因数和,参数:n。

  1. result = 0
  2. i = 1
  3. 重复执行直到 i = n:(全部因数之和(这里的因数不包括整数自己))
    • 如果 n 能够整除 i,即 i 是n的因数,那么 result += i。(如果a除以b的余数为0,那么b是a的因数)
    • i+=1


当绿旗被点击时:

  1. 开始:点击小绿旗,也就是程序启动,就要执行后续的程序指令。
  2. 询问“请输入第一个正整数”,并将回答存入a1。
  3. 询问“请输入第二个正整数”,并将回答存入a2。
  4. 调用函数“因数和”,并将结果存入r1。
  5. 调用函数“因数和”,并将结果存入r2。
  6. 如果r1==r2,那么说“a1和a2是亲和数”,否则说“a1和a2不是亲和数”。

4. 评分标准

(1)能询问输入两个正整数,存到两个变量中;(2分)

(2)能够计算因数和;(6分)

(3)能够判断两个因数和是否相等;(5分)

(4)能够用连接说出是亲和数和不是亲和数。(2分)

5. 知识块

四级知识块

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/494889.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Qt_C++读写t5557卡复制HID卡源码

T5557卡是美国Atmel公司生产的多功能非接触式射频卡芯片,属于125KHz的低频卡,在国内有广大的应用市场。该芯片共有330bit(比特)的EPROM(分布为10个区块, 每个区块33bit)。0页的块0是被保留用于设置T5557操作模式的参数配置块。第0页第7块可以作用户数据块…

Qt5.9学习笔记-事件(三) 多线程和事件处理

⭐️我叫忆_恒心,一名喜欢书写博客的在读研究生👨‍🎓。 如果觉得本文能帮到您,麻烦点个赞👍呗! 近期会不断在专栏里进行更新讲解博客~~~ 有什么问题的小伙伴 欢迎留言提问欧,喜欢的小伙伴给个三…

OpenCV中的图像处理3.4-3.6(四)平滑化、形态学、图像梯度

目录 3.4 平滑化图像目标二维卷积 ( 图像滤波 )图像模糊(图像平滑)其他资源 3.5 形态学转换目标理论结构化元素 3.6 图像梯度目标理论代码一个重要的问题! 翻译及二次校对:cvtutorials.com 编辑者:廿瓶鲸(和鲸社区Siby团队成员) …

用 Bitmap 实现亿级海量数据统计

在移动应用的业务场景中,我们需要保存这样的信息:一个 key 关联了一个数据集合。 常见的场景如下: 给一个 userId ,判断用户登陆状态; 显示用户某个月的签到次数和首次签到时间; 两亿用户最近 7 天的签到…

【C++:模块3-------数组】

C:模块3-------数组 数组概念:数组特点:数组访问方法: 一维数组:1.1三种定义形式:(和C语言中一样)1.2一维数组数组名的作用:(1) 统计数组在内存中…

日常的性能测试工作

日常的性能测试工作 (1)在日常的测试工作时如何进行性能测试 日常的性能测试主要是从业务功能点中抽取具有并发特点的,高风险的、大数据量处理的业务,整理成测试用例,制定相应的指标,然后用工具或者手工进行性能测试并分析&#x…

MySQL HeatWave 被添加了机器学习,甲骨文认真了

开头还是介绍一下群,如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。加群请联系 liuaustin3 ,在新加的朋友会分到2群(共…

基于javaweb的学生就业管理系统

一、简介 学生基业管理系统有三个角色:管理员、企业、学生 对学生信息管理、企业信息管理、求职信息管理 后端架构:spring springmvc mybatis 前端架构:jsp layui 系统环境:jdk1.8 | maven | mysql 二、主要功能 1. 登录…

jvm之垃圾回收相关概念解读

目录 System.gc()的理解 内存溢出与内存泄露 内存溢出(OOM) 内存泄漏(Memory Leak) Stop The World 垃圾回收的并行与并发 程序中的并发(Concurrent) 程序中的并发(Parallel&#xff09…

揭秘镭速传输点对点传输技术,NAT+Raysync强强组合

点对点传输是一种文件即时传输方式用于实现数据的快速联动,为所有客户端提供资源,包括带宽、存储空间、计算能力。点对点传输技术有很多应用,包括共享各种格式音频、视频、数据等。 在5G重新定义带宽,信息技术不断发展的今天&…

Python:概念解析:基础语法

Python基础语法 1. 列表,元组,字典1.1 列表1.2. tuple元组1.3 字典dict 2. 数据类型推断2.1 在Python中有一个函数 isinstance(data,type) , 可以用来判断某个数据是什么类型。 3. Python 基本数据类型3.1 整型 int 本章节介绍Python的一些基础语法 1. 列…

《可穿戴式血压测量设备与高血压管理的新方法:数字时代》阅读笔记

目录 一、论文摘要 二、论文十问 Q1:论文试图解决什么问题? Q2:这是否是一个新的问题? Q3:这篇文章要验证一个什么科学假设? Q4:有哪些相关研究?如何归类?谁是这一课…

PySide6/PyQT多线程之 线程安全:互斥锁条件变量的最佳实践

前言 在PySide6/PyQT中使用多线程时,线程锁和线程安全是非常重要的概念。本文将介绍线程锁和线程安全的基本概念,以及如何在PySide6/PyQT中使用它们。 使用PySide6/PyQT开发GUI应用程序,在多个线程同时访问同一个共享对象时候,如果…

单词词义、词性、例句查询python代码

单词发音、词义、词性、例句查询、输出结果更简洁,一次可查多个单词 运行该代码,命令窗口输入单词,单词用“/”分开,例如:noisy/problem/community/neighbor 可以更多。先安装两个python包requests、 beautifulsoup4&…

Eureka详解

Eureka概述和架构 Eureka Spring Cloud Eureka 是Netflix 开发的注册发现组件,本身是一个基于 REST 的服务。提供注册与发现,同时还提供了负载均衡、故障转移等能力 Eureka3个角色 服务中心,服务提供者,服务消费者 Eureka Se…

Win11的两个实用技巧系列之蓝屏死循环解决办法、调高进程的优先级方法

Win11蓝屏死循环怎么办?Win11蓝屏死循环解决办法 有用户安装Win11系统的时候,重新启动电脑的时候,会一直进入蓝屏的错误循环中,本文就为大家带来详细的解决方法,需要的朋友一起看看吧 Win11蓝屏死循环解决办法分享。有用户安装W…

Ubuntu18.04系统及相关软件安装恢复过程

Ubuntu18.04系统及相关软件安装恢复过程 一、常用软件安装1. [系统安装](https://blog.csdn.net/qq_43309940/article/details/116656810)2. [显卡驱动安装](https://blog.csdn.net/qq_43309940/article/details/126898929)3. [ROS Melodic安装](https://ismango.blog.csdn.net…

[Python]爬虫基础——urllib库

urllib目录 一、简介二、发送请求1、urlopen()函数2、Request()函数 三、异常处理四、解析URL五、分析Robots协议 一、简介 urllib库是Python内置的标准库。包含以下四个模块: 1、request:模拟发送HTTP请求; 2、error:处理HTTP请…

实验六 UML建模工具应用

一、实验目的 1.掌握面向对象开发思想及实现机制 2.理解并掌握UML常用图(重点:类、对象图、用例图) 3.掌握并常见UML建模工具,并绘制UML各种图 二、实验准备与要求 1.StarUML(简称SU),是一种创建UML类图&#xff0c…

洛谷P8597 [蓝桥杯 2013 省 B] 翻硬币C语言/C++

[蓝桥杯 2013 省 B] 翻硬币 题目背景 小明正在玩一个“翻硬币”的游戏。 题目描述 桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零),比如可能情形是 **oo***oooo,如果…