QQ登录

只需一步,快速开始

开启左侧

用scratch实现更相减损术

[复制链接]
18062232277 发表于 2024-4-18 08:29:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 18062232277 于 2024-4-18 08:40 编辑

更相减损术是中国古代数学中的一种算法,主要用于求两个数的最大公约数。其基本思想是:对于两个数a和b,若a>b,则a=a-b;若b>a,则b=b-a;若a=b,则a(或b)即为两数的最大公约数。重复上述步骤,直到a和b相等为止。

在Scratch中实现更相减损术,可以通过以下步骤进行:

创建两个变量,分别用于存储输入的两个数a和b。
创建一个循环,用于重复执行更相减损的步骤,直到a和b相等为止。
在循环内部,使用条件语句判断a和b的大小,然后执行相应的减法操作。
当a和b相等时,跳出循环,并输出a(或b)作为最大公约数。
下面是一个简单的Scratch程序示例,用于实现更相减损术:

在Scratch中创建两个变量a和b,并设置它们的初始值。
创建一个“当绿旗被点击”事件,用于启动程序。
在该事件中,使用“重复执行直到”循环,循环条件为a not= b。
在循环内部,使用“如果...那么...否则”条件语句判断a和b的大小。如果a > b,则执行改变 a 的值 by -b;否则执行改变 b 的值 by -a。
当循环结束时,即a = b,使用“说出”或“显示”等积木块输出a(或b)作为最大公约数。
请注意,Scratch的积木块可能因版本不同而有所差异,但基本的编程逻辑和步骤是相同的。你可以根据自己的Scratch版本和编程习惯进行适当的调整。

{38ADC14A-5160-4107-B9E3-10F290DBB692}.jpg
 楼主| 18062232277 发表于 2024-4-18 11:12:24 | 显示全部楼层
本帖最后由 18062232277 于 2024-4-18 11:13 编辑

{7A81CB52-4CEB-4d70-A801-D4B6CBFA839C}.jpg







{38ADC14A-5160-4107-B9E3-10F290DBB692}.jpg

 楼主| 18062232277 发表于 2024-4-18 11:15:50 | 显示全部楼层
{03990F5F-DBB7-427f-9E71-39B31D87B65F}.jpg




{38ADC14A-5160-4107-B9E3-10F290DBB692}.jpg
客服热线
400-1234-888 周一至周日:09:00 - 21:00
公司地址:襄阳市樊城区长虹路现代城5号楼188

创客帮MAKER.BAND青少年创客创意社区是一个融教育、科技、体育资讯为一体的综合服务平台,专注于教育创新、专注于科技体育、专注于教育资讯。

Powered by Discuz! X3.4 © 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表