首页 > 其他 > 详细

公约数公倍数

时间:2020-04-24 10:25:01      阅读:61      评论:0      收藏:0      [点我收藏+]
/*
 题目标题:公约数公倍数

    我们经常会用到求两个整数的最大公约数和最小公倍数的功能。

    下面的程序给出了一种算法。

    函数 myfunc 接受两个正整数a,b

    经过运算后打印出 它们的最大公约数和最小公倍数。

    此时,调用 myfunc(15,20)

将会输出:
5
60

// 交换数值
void swap(int *a,int *b)
{
   int temp;
   temp=*a;
   *a=*b;
   *b=temp;
}

void myfunc(int a, int b)
{
   int m,n,tr;
   if(a<b) swap(&a,&b);
   m=a;n=b;tr=a%b;
   while(tr!=0)
   {
    a=b;b=tr;
    tr=a%b;
   }
   printf("%d\n",b);  // 最大公约数
   printf("%d\n", ____________________________________);  // 最小公倍数
}


请分析代码逻辑,并推测划线处的代码,通过网页提交。
注意:仅把缺少的代码作为答案,千万不要填写多余的代码、符号或说明文字!!
 * */
#include <iostream>
using namespace std;

void swap(int* a, int* b)
{
    int temp;
    temp = *a;
    *a = *b;
    *b = temp;
}

void myfunc(int a, int b)
{
    int m, n, tr;
    if (a < b) swap(&a, &b);
    m = a; n = b; tr = a % b;
    while (tr != 0)
    {
        a = b; b = tr;
        tr = a % b;
    }
    printf("%d\n", b);  // 最大公约数
    printf("%d\n", m * n / b);  // 最小公倍数
}

int main() {
    myfunc(15, 20);
    return 0;
}

 

公约数公倍数

原文:https://www.cnblogs.com/zfq111/p/12764814.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!