Project Euler – 05

Here’s the question:

2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder.

What is the smallest positive number that is evenly divisible by all of the numbers from 1 to 20?

And here’s the code: (I know it’s really not my the most elegant work but it get’s the job done)

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char** argv) {
    int res = 2520;
    int list[20] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};
    do
    {
        if (res % list[0] == 0 && res % list[1] == 0 && res % list[2] == 0 && res % list[3] == 0 && res % list[4] == 0 && res % list[5] == 0 && res % list[6] == 0 && res % list[7] == 0 && res % list[8] == 0 && res % list[9] == 0 && res % list[10] == 0 && res % list[11] == 0 && res % list[12] == 0 && res % list[13] == 0 && res % list[14] == 0 && res % list[15] == 0 && res % list[16] == 0 && res % list[17] == 0 && res % list[18] == 0 && res % list[19] == 0)
        {
            cout << "LCM = " << res << endl;
            break;
        }
        else
            ++res;    
    } while (true);
    
    return 0;
}

Yorum bırakın

Filed under Project Euler

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s