2012-11-05

Prvočísla v C++

Nehledejte v následujícím kusu kódu žádnou vědu, je to triviální funkce na rozpoznání prvočísla, bohužel pro mě, mě rychlé napsání těchto řádků stálo body v testu, neboť jsem je napsal s chybou, i proto, že jsem v rychlosti nenašel vhodnou alternativu na Google.

bool prvocislo(int x);
int main()
{
  int a = 7;
  
  if (prvocislo(a) == false)
  { 

    printf("Cislo %d je prvocislem!\n",a);
  }
}

bool prvocislo(int x)
{
    for(int i = 2; i <= pow(x,0.5); i++)
            {
                if((int)x%i == 0)
                {
                    return false;
                }               
            }

    return true;
}

Kdybyste se chtěli problematikou dále zabývat, doporučuji zejména Fermatův test prvočíselnosti.