程序地带

C语言求最大公约数和最小公倍数


最大公约数:方法一(辗转相除法):令两个数为a和b(不论顺序)。若b不为0,更新a和b的值:把a/b的余数赋值给b,把b原来的值赋给a。重复操作,直到b=0,此时a为最大公约数。 方法二(试除法):小的那个数对大的那个数取模若不为0则小的那个数减1继续取模,模为0时的小的那个数为二者的最大公约数


最小公倍数:利用二者的关系(最大公约数*最小公倍数=a * b),只需求出最大公约数即可。


代码测试:


#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int gcd(int a, int b)//求最大公约数函数
{
int tmp = 0;
while (tmp = a % b)
{
a = b;
b = tmp;
}
return b;
}
int main()
{
int num1 = 4;
int num2 = 25;
printf("最大公约数为:%d,最小公倍数为%d ", gcd(num1, num2) , num1*num2/ gcd(num1, num2));
return 0;
}

运行结果 在这里插入图片描述


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_51064412/article/details/112689357

随机推荐

figure函数_matplotlib 绘制多元函数

最近想涉猎下深度学习的知识,有很多的函数公式,文很抽象,不知道具体是什么样子,就用python的matplotlib绘制出来看下,...

草履虫稽亚娜 阅读(194)