vb大题,编写一个过程计算两个整数的最大公约数。 求高手解答,表示不会

如题所述

分析:首先要搞清楚什么是约数,如果a 除以b的余数为0,那么a称为b的倍数,b称为a 的约数;什么又是公约数?几个数所共同拥有的约数就叫公约数。什么又是最大公约数?这几个数所共同拥有的公约数中最大的数就是最大公约数;由此可见最大公约数一定不大于给定的数中最小的那个数。

你遇到的问题是求两个整数的最大公约数。因此我们可以先获取这两个数中较小的那个,然后丙来计算他们的最大公约数。
我们需要定义几个变量:1、tempMin 用来存放较小的那个数;2、i 用来循环计数,i从2开始,每次增加1;3、gcd 用来计算最大公约数; 4、假定你所给的数取值范围是integer,并且都大于2,如果是1就没意义了
private Function GreatestCommonDivitor(byval a as Integer,byval b as integer ) as Integer
dim tempMin as Integer
dim i as integer

dim gcd as integer = 1

'求出较小的那个数
if a>= b then
tempMin = b
else
tempMin = a
end if
for i = 2 to tempMin
'mod是取余数的运算符

if a Mod i= 0 and b mod i = 0 then

gcd = gcd * i

end if
next
GreatestCommonDivitor = gcd
End Function
温馨提示:内容为网友见解,仅供参考
无其他回答

vb大题,编写一个过程计算两个整数的最大公约数。 求高手解答,表示不会...
你遇到的问题是求两个整数的最大公约数。因此我们可以先获取这两个数中较小的那个,然后丙来计算他们的最大公约数。我们需要定义几个变量:1、tempMin 用来存放较小的那个数;2、i 用来循环计数,i从2开始,每次增加1;3、gcd 用来计算最大公约数; 4、假定你所给的数取值范围是integer,并且都大于...

编写一个函数,求两个整数的最大公约数,在主函数中输入两个整数,调用...
include<stdio.h> int gcd(int a, int b) \/\/lgcd最大公因数 { int i = 0, g = 0;int m = 0;m = a < b? a : b;for(i = 1; i < m; i++){ if(a%i == 0 && b%i == 0){ g = i;} } return g;} int main(){ int a = 0, b = 0;int c = 0;pr...

求vb高手,帮我解答几个选择题
1、答案a。 字符串不是数字或科学计数法的数(如2e3),不可以转换成数值型进行计算 2、答案a。 “print”后面的内容应该是数值或字符串,不能进行逻辑运算 3、字符串如果是数字,可以自动转换成数值型再进行传值 答案是c,为什么不选b 因为数字“16384”被强制为一个整数(Integer),但是计算结果超过...

我学vb中遇到2个问题,请教高手解答!
1、mod是取余,所以像3 mod 7 结果本来就应该是(得0)余3的 “所有前面数小后面数大,最后的结果是前面那个小的数”这么说虽然不科学,但就结果来说是没错的 可以说有这么一个规律,如果整数部分为偶数(如0.5,2.5,4.5)是不会四舍五入的,而奇数(如1.5,3.5)就会四舍五入,所以...

...SQL流程控制语句编写程序,求两个数的最大公约数和最小公倍数,运行...
SET @min=@num2 ELSE SET @min=@num1 SET @jsq=@min --循环语句 WHILE (@jsq<=@min)BEGIN --若同时被两个数整除,输出最大公约数 IF(@num1%@jsq=0 AND @num2%@jsq=0 )BEGIN SET @result=@jsq PRINT @result BREAK --退出循环 END SET @jsq=@jsq-1 END --求最小公倍数 DECL...

请教初中数学问题,求高手解答,要有详细步骤哦~
解:因为 这两个自然数的最大公约数是12,所以 可设这两个自估数分别是:12m, 12n(m与n互质),由题意可得:12m+12n=48 m+n=4 所以 m与n中,一个等于1,另一个等于3,所以 这两个自然数分别是:12和36。

请教小学数学问题,求高手解答,要有详细步骤哦~
第2题:两个数除以它们的最大公约数所得到的的商,一定互质,互质且和等于16的两个数有:15+1 、13+3、 11+5、 9+7四种情况 根据最小公倍数的短除式求法分类讨论:□×○×△=1925 最大公约数是:1925÷(15×1)=125……5 (舍去)1925÷(13×3)=49……14 (舍去...

这些题我不会,请各位数学高手帮忙解答一下(要有过程)
所以ab的最大值是72 连续任意三个整数 n-1 n n+1之和为 3n,而任意取两个相邻的正整数,它们的最大公约数为1,所以,能整数任意三个连续整数之和的最大整数为3*1=3 4.前面的数字再加一个数acb 那么abc+bac+bca+cab+cba+acb=3194+acb 222(a+b+c)=3194+acb=222*14+86+acb 222-86...

求高手解数学题,要解题过程!
=1.25 × 100 + 848.4375 =125++ 848.4375 =973.4375 2. 计算:2001-1998+1995-1992+……+15-12+9-6+3 = 3+3+……+3+3+3(5个数一循环,有2001除以5取整是400个3,再加最后一个3, 共计401)=3 ×401=3012 3. 1×2×3×4×5×……×97×98×99×100积的...

求高手解答几道关于最大公约数和最小公倍数的题目
1.证明:假设a、b的任一公倍数都不是最小公倍数[a,b]的倍数。因为a、b的最少公倍数为[a,b]。而a、b的任一公倍数为X[a,b]。所以X[a,b]除以[a,b]=X X∈R 与假设矛盾。所以a、b的任一公倍数都是最小公倍数[a,b]的倍数 2.方法和第一个基本一样。LZ自己搞定了吧。

相似回答