分享

求两个自然数的最大公约数和最小公倍数

 离魂异客 2011-11-25
如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数。几个自然数公有的约数,叫做这几个自然数的公约数。公约数中最大的一个公约数,称为这几个自然数的最大公约数。最大公约数(greatest common divisor,简写为gcd;或highest common factor,简写为hcf),指某几个整数共有因子中最大的一个。
最小公倍数(Least Common Multiple,缩写L.C.M.),如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数,对于两个整数来说,指该两数共有倍数中最小的一个。计算最小公倍数时,通常会借助最大公约数来辅助计算. 几个数公有的倍数叫做这几个数的公倍数,其中最小的一个公倍数,叫做这几个数的最小公倍数
 
#include <stdio.h>
int main (void)
{
 int m, n, i, a, b;
 puts ("请输入两个正整数");
 scanf ("%d %d", &m, &n);
 a = m;
 b = n;
 i = m % n;
 while (i != 0)
 {
  m = n;
  n = i;
  i = m % i;
 }
 printf ("m 和 n 的最大公约数是: %d\n", n);
 printf ("m 和 n 的最小公倍数是: %d\n", (a*b)/n);
 return 0;
}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多