分别求两个整数的最大公约数和最小公倍数。_最大公约数最小公倍数程序算法和说明...

最大公约数都小于或等于两个数中较小数的一半,因此可建立循环,从两个数中较小数的一半开始,递减循环。只要有一个数同时与两个数的被余数为0,则跳出循环,此数就是最大公约数。

从两个数较小数开始倍增循环,只要有一个数与较大数的余数为0,则跳出循环,此数就是最小公倍数。

第一步设变量:任意两个整数为X和Y,最大公约数为M,最小公倍数为N,循环变量为I。

第二步编程:任意输入两个整数为X和Y,并调整X始终小于或等于Y;I=X开始递减循环,只要有一个数同时与两个数的被余数为0,则跳出循环,此数就是最大公约数;I=1开始倍增循环,若I*X%Y=0,则跳出循环,I*X就是最小公倍数。

第三步编译改错。

第四步运行。

程序源代码(TURBO C)

# include <stdio.h>

int main()

{int i,x,y,m,n;

printf("input to number:n");

scanf("%d,%d",&x,&y);

if (x>y) {i=x;x=y;y=i;}

for (i=x;i>=1;i--)

if (x%i==0&&y%i==0) {m=i;break;}

for (i=1;i<=x;i++)

if ((i*x)%y==0) {n=i*x;break;}

printf("nmax number: %dn min number: %dn",m,n);

return 0;}

运行结果:

0b4cbf87-6213-eb11-8da9-e4434bdf6706.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值