求最大公约数和最小公倍数

孤街醉人 提交于 2020-01-04 14:06:12

相减法

1.输入两个正整数a和b;

2.如果a > b,则a = a – b;

3.如果a < b,则 b = b – a;

4.如果a = b,则a(或b)即为两数的最大公约数

5.如果a ≠ b,则重复执行1;

6.输出最大公约数和最小公倍数。

(最小公倍数 = 原数相乘除以最大公约数)

#include <stdio.h>
int main(void)
{
    int a,b;
    scanf("%d%d",&a,&b);
    int c= a*b;
    while(a != b)
    {
        if(a < b)
        {
            b = b-a;
        }
        if(a > b)
        {
            a = a-b;
        }
    }
    printf("%d %d",a,c/a);
    
    return 0 ;
}

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!