精易论坛

标题: 递归问题 [打印本页]

作者: 一颗菜    时间: 2022-9-25 22:43
标题: 递归问题
用递归的方式编写一个子程序,子程序用来计算一个数字能否被一系列数字整除。
例如:
计算50能被1-10之间的那些数字整除?
要求输出以下格式:
* 可以被10整除
* 可以被5整除
* 可以被2整除
* 可以被1整除
直接判断能否整除并输出调试文本即可。


作者: Suky    时间: 2022-9-25 22:43
本帖最后由 Suky 于 2022-9-25 23:02 编辑
  
子程序名返回值类型公开备 注
_启动子程序整数型 本子程序在程序启动后最先执行
变量名类 型静态数组备 注
被除数整数型 
除数整数型0
n整数型 
被除数 = 50
计次循环首 (10, n)
加入成员 (除数, 10 - n + 1)
计次循环尾 ()
循环方式 (被除数, 除数)
递归方式 (被除数, 除数)
返回 (0)  ' 可以根据您的需要返回任意数值
子程序名返回值类型公开备 注
循环方式  
参数名类 型参考可空数组备 注
被除数整数型
除数整数型
变量名类 型静态数组备 注
n整数型 
计次循环首 (取数组成员数 (除数), n)
如果真 (被除数 % 除数 [n] = 0)
调试输出 (“循环方式:”到文本 (被除数)“能被”到文本 (除数 [n])“整除”)

计次循环尾 ()
返回 ()
子程序名返回值类型公开备 注
递归方式  
参数名类 型参考可空数组备 注
被除数整数型
除数整数型
如果真 (被除数 % 除数 [1] = 0)
调试输出 (“递归方式:”到文本 (被除数)“能被”到文本 (除数 [1])“整除”)
删除成员 (除数, 1, 1)
如果真 (取数组成员数 (除数) > 0)
递归方式 (被除数, 除数)
返回 ()


i支持库列表   支持库注释   
spec特殊功能支持库

两种方式     循环方式更好一些

作者: Suky    时间: 2022-9-25 22:48
这直接用循环   不需要递归吧?
作者: 鹏书    时间: 2022-9-25 22:54
  
窗口程序集名保 留  保 留备 注
程序集1   
子程序名返回值类型公开备 注
_启动子程序整数型 本子程序在程序启动后最先执行
子程序1 (50, 1, 10)
返回 (0)  ' 可以根据您的需要返回任意数值
子程序名返回值类型公开备 注
子程序1  
参数名类 型参考可空数组备 注
整数型
范围整数型
范围1整数型
如果真 (数 % 范围 = 0)
调试输出 (范围)
如果真 (范围 = 范围1)
返回 ()
子程序1 (数, 范围 + 1, 范围1)


i支持库列表   支持库注释   
spec特殊功能支持库





欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4