Test..9C语言最大公约数和最小公倍数

发布于:2023-01-09 ⋅ 阅读:(469) ⋅ 点赞:(0)

最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个;最小公倍数是指两个或多个整数公有的倍数叫做它们的公倍数,其中除0以外最小的一个公倍数就叫做这几个整数的最小公倍数。最小公倍数=两整数的乘积÷最大公约数 , 所以怎么求最大公约数是关键。

本人习惯用欧几里得法(辗转相除)求最大公约数:

有45与125;

125/45=2……35;

45/35=1……15;

35/15=2……5;

15/5=3……0;此时可以判定5为最大公约数

int main() 
 {

    int a,b,c;
    int x,y;
    printf("请输入两个不同的整数:");
    scanf("%d,%d",&a,&b);
    c=a%b;
    x=a;y=b;//赋值,保证a,b的数值不会发生变换; 
    while(c!=0)
    {     x=y;
        y=c;
        c=x%y;
     } 
     printf("最大公约数为:%d\n",y);
     printf("最小公倍数为:%d\n",(a*b/y)); 
    int i = 1;//此处运用while循环,不论a,b谁大谁小,可令一方不断乘i并除以另一个数,直到为0
    while (a * i % b) {
        i++;
    }
    printf("%d\n", i * a);

}


网站公告

今日签到

点亮在社区的每一天
去签到