VB过程的递归调用,辗转相除法求最大公约数

VB过程的递归调用,辗转相除法求最大公约数

csharp 复制代码
'过程的递归调用,辗转相除法求最大公约数
Private Function gys(ByVal m%, ByVal n%) As Integer
    Dim r%
    r = m Mod n 'm大或者n大都无所谓,这个不影响计算,由于辗转相除法的算法,最终大值会作为被除数,小值作为除数。
    If r = 0 Then
        gys = n
    Else
        gys = gys(n, r)
    End If
End Function
Private Sub Command1_Click()
    Dim x%, y%
    x = Val(Text1.Text)
    y = Val(Text2.Text)
    Print gys(x, y)
End Sub
相关推荐
草莓熊Lotso24 分钟前
C++ 二叉搜索树(BST)完全指南:从概念原理、核心操作到底层实现
java·运维·开发语言·c++·人工智能·经验分享·c++进阶
oliveira-time33 分钟前
单例模式中的饿汉式
java·开发语言
Go away, devil2 小时前
Java-----集合
java·开发语言
VBA63374 小时前
VBA即用型代码手册:利用函数保存为PDF文件UseFunctionSaveAsPDF
开发语言
say_fall4 小时前
C语言编程实战:每日刷题 - day2
c语言·开发语言·学习
上去我就QWER5 小时前
Qt快捷键“魔法师”:QKeySequence
开发语言·c++·qt
Pluto_CSND7 小时前
Java中的静态代理与动态代理(Proxy.newProxyInstance)
java·开发语言
惊讶的猫9 小时前
LSTM论文解读
开发语言·python
獨枭9 小时前
C# 本地项目引用失效与恢复全攻略
开发语言·c#·visual studio
国服第二切图仔10 小时前
Rust开发之Trait 定义通用行为——实现形状面积计算系统
开发语言·网络·rust