找到两个数字的LCM

时间:2015-10-14 05:02:25

标签: c++ lcm

该程序首先要求我输入它应该向我询问两个数字的次数。在我给出两个数字之后,它应该找到它们的最小公倍数,并且在我开始时输入操作的次数。

它打开并等待我给出数字并且什么都不做。

#include <iostream>

using namespace std;

int ile ;
int grupa1, grupa2 ;
int wynik ;
int dzielnik = 0;

int main()
{
    cin >> ile ;
    for (int i=0; i <= ile ; i++ )
    {
        cin >> grupa1 >> grupa2 ;
        do
        {
            do
            {
                dzielnik ++ ;
              } while ((dzielnik % grupa1 != 0 && dzielnik % grupa2 !=0 )     || dzielnik < grupa1 + grupa2) ;

                if (dzielnik % grupa1 == 0 && dzielnik % grupa2 == 0 )
            {
            grupa1 = grupa1 / dzielnik ;
            grupa2 = grupa2 / dzielnik ;
        }
        else if (dzielnik >= grupa1 + grupa2)
        {
            wynik = grupa1 * grupa2 ;
            cout << wynik ;
        }
    }
    while (wynik == grupa1 * grupa2) ;
    dzielnik = 0;
}
return 0;

}

1 个答案:

答案 0 :(得分:0)

cout被缓冲,除非已经提供了足够的数据或2)被刷新,否则不会显示任何内容。

更改此行:

cout << wynik ;

对此:

cout << wynik << endl;

你应该看到一些输出。

另外,你应该考虑修改你的缩进。目前这是非常误导。主要for排成一行while,内部do排成一行else if