real


私信TA

用户名:uq_94531268685

访问量:50

签 名:

等  级
排  名 42405
经  验 310
参赛次数 0
文章发表 2
年  龄 0
在职情况 在职
学  校
专  业

  自我简介:

TA的其他文章

辗转相除法
浏览:18

解题思路:
    先计算最大公约数,再计算最小公倍数,然后验证是否准确
注意事项:
    无
参考代码:

#include <stdio.h>

//辗转相除法

int main(void){

    int intput_data[2] = {0};

    int max = 0,min = 0;

    int output_data[2] = {0};   //最大公约数和最小公倍数

    scanf("%d %d",intput_data,&intput_data[1]);

    max = intput_data[0] >= intput_data[1] ? intput_data[0] : intput_data[1];

    min = intput_data[0] >= intput_data[1] ? intput_data[1] : intput_data[0];

    if(max == min)

        output_data[0] = max;

    else{

        while(1){

            output_data[0] = max % min;

            if(output_data[0] == 0){

                output_data[0] = min;   //计算出最大公约数

                break;

            }

            max = min;

            min = output_data[0];      

        }

    }

    output_data[1] = (intput_data[0] * intput_data[1]) / output_data[0];    //计算出最小公倍数

   

    if(output_data[0]*output_data[1] ==  intput_data[0] * intput_data[1])   //验证准确性

        printf("%d %d",output_data[0],output_data[1]);

    else

        printf("EEROR");

    return 0;

}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区