打卡 c语言趣味编程 求最小公倍数

问题描述:

  求任意两个正整数的最小公倍数(LCM)。

思路:

  1. 输入两个正整数,假设为num1和num2。

  2. 定义一个变量lcm并初始化为较大的那个数(即lcm = max(num1, num2))。

  3. 进入一个循环,循环条件为lcm不能同时被num1和num2整除。在每次循环中,将lcm增加1。

  4. 循环结束后,lcm的值就是最小公倍数

流程图:

代码实现:

#include <iostream>

using namespace std;

int lcm(int num1, int num2) {
    int min_num = max(num1, num2);
    while (true) {
        if (min_num % num1 == 0 && min_num % num2 == 0) {
            break;
        }
        min_num++;
    }
    return max_num;
}

int main() {
    int num1, num2;
    cout << "输入两个正整数: ";
    cin >> num1 >> num2;
    int result = lcm(num1, num2);
    cout << "最小公倍数为: " << result << endl;
    return 0;
}

 

posted @ 2023-05-18 20:03  起名字真难_qmz  阅读(141)  评论(0)    收藏  举报