小学信息技术浙教版(2023)六年级上册第12课 韩信点兵同余法的实现完美版课件ppt
展开通过生活中的实例,了解算法的特征和效率。能用自然语言、流程图等方式描述算法。知道解决同一问题可能会有多种方法,认识到采用不同方法解决同一问题时可能存在时间效率上的差别。对于给定的任务,能将其分解为一系列的实施步骤,使用顺序、分支、循环三种基本控制结构简单描述实施过程,通过编程验证该过程。
完成下表,你发现了什么现象?能得出什么结论?
韩信点兵”问题除了通过枚举、筛选的算法思想来解决外,还可以依据同余的算法思想来解决。《孙子算经》中曾记载着利用同余思想求解的方法,称之为“中国剩余定理”。
在韩信点兵过程中,剩下的士兵总数用变量 x 来表示。变量 x 的范围为1000~1100,且需同时满足“x 除 3 余数为 2、x 除 5 余数为 3、x 除 7 余数为 2”三个条件。由此,可建立如下模型:根据同余思想,可先找出同时满足“x 除 3 余数为 2、x 除 5 余数为 3、x除 7 余数为 2”三个条件的任意一个数,如 233,然后该数加减 3、5、7 的最小公倍数 105 的整数倍,在 1000~1100 范围内的数即是所求解。
根据上述的抽象与建模,解决韩信点兵的问题可采用同余算法。用变量s 表示所取到的同时满足三个条件的任意一个数,如 233,变量 k 表示三个数的最小公倍数。通过加或减 k 的整数倍,使 s 的值大于等于 1000 且小于等于1100,可以采用循环结构,根据条件“s 小于 1000”来选择加 k 或减 k 的值,可以采用分支结构。
算法的流程图如下所示:
上述算法用 Pythn 语言编写的程序如下:
《孙子算经》中提到的解法:首先找出能被 5 与 7 整除而被 3 除余 1 的数 70,被 3 与 7 整除而被 5 除余 1 的数 21,被 3 与 5 整除而被 7 除余 1 的数 15。如果所求的数被 3 除余2,那么就取数 70×2 = 140,140 是被 5 与 7 整除而被 3 除余 2 的数。如果所求数被 5 除余 3,那么取数 21×3 = 63,63 是被 3 与 7 整除而被 5 除余 3的数。如果所求数被 7 除余 2,那就取数 15×2 = 30,30 是被 3 与 5 整除而被 7 除余 2 的数。140 + 63 + 30 = 233,由于 63 与 30 都能被 3 整除,所以 233 与 140 这两数被 3 除的余数相同,都是余 2,同理 233 与 63 这两数被 5 除的余数相同,都是 3,233 与 30 被 7 除的余数相同,都是 2。所以,233 是满足要求的一个数。
1、当使用同余法时,我们通常需要考虑的一个重要因素是?( B ) A、初始数值大小 B、除数的选择 C、运算符的优先级 D、数据类型
2、使用同余法进行加密时,保证安全性的关键在于?( A ) A、选择一个足够大的除数 B、保持算法的保密性 C、增加运算的复杂度 D、定期更换除数的数值
浙教版(2023)六年级上册第15课 人机对话的实现优质课件ppt: 这是一份浙教版(2023)六年级上册<a href="/xx/tb_c4038000_t3/?tag_id=26" target="_blank">第15课 人机对话的实现优质课件ppt</a>,文件包含第15课人机对话的实现pptx、第15课人机对话的实现doc等2份课件配套教学资源,其中PPT共20页, 欢迎下载使用。
浙教版(2023)六年级上册第11课 韩信点兵筛选法的实现完整版课件ppt: 这是一份浙教版(2023)六年级上册<a href="/xx/tb_c4037994_t3/?tag_id=26" target="_blank">第11课 韩信点兵筛选法的实现完整版课件ppt</a>,文件包含第11课韩信点兵筛选法的实现pptx、第11课韩信点兵筛选法的实现doc等2份课件配套教学资源,其中PPT共21页, 欢迎下载使用。
小学信息技术浙教版(2023)六年级上册第10课 韩信点兵枚举法的实现优秀课件ppt: 这是一份小学信息技术浙教版(2023)六年级上册<a href="/xx/tb_c4037993_t3/?tag_id=26" target="_blank">第10课 韩信点兵枚举法的实现优秀课件ppt</a>,文件包含第10课韩信点兵枚举法的实现pptx、第10课韩信点兵枚举法的实现doc等2份课件配套教学资源,其中PPT共24页, 欢迎下载使用。