Responsive image Boda Szilárd weblapja

1. Határozzuk meg a lehető legnagyobb prím számot egy C++ program segítségével.

Ehhez használhatjuk az alábbi rekurzív függvényt, amely megvizsgálja, hogy egy szám prím-e,
vagy nézhetünk optimalizált algoritmusokat is ehhez.
Óra végén 10 es jár annak, aki a legnagyobb prím számot tudja felmutatni, ha bemutatja a C++ programot, s bizonyítja (képernyőképpel, codeblocks vagy cmd ablakkal)
hogy valóban az illető program adta ki a számot.

-O4 optimalizálással,  i7 es procival s használva az órán vett rekurzív függvényt:
  4.26 mp a legnagyobb 1 000 000 000 alatti prím számításához
42.129 mp a legnagyobb 10 000 000 000 alattihoz
424.768 mp a legnagyobb 100 000 000 000 alattihoz

Ehhez a stack méretét meg kell növelni, amit a következő linker option nal lehet:

-Wl,--stack,N
Az én gépemen N = 6438400

Rekurzív prím függvény:
bool prim(long n, long i){

    //cout << i << endl;
    if (i>(n/2+1)){

        return true;
    }

    if (n%i == 0){

        return false;
    }

    return prim(n, i+1);

}