Am facut problema si nu iau 100 puncte. Am cautat si pe net .. dar tot nu iau 100. Am pus si conditia pentru ca numarul sa nu aiba ultima cifra 0 si tot nu imi da 100 puncte if(a%10==0). In CodeBlocks ruleaza perfect problema ,dar pe site tot 90 puncte imi da.
for (d=3; d*d <= a; ++d)
tr sa scriu astfel
for (d=3; d*d<=a; d+=2)
deoarece cautam prim numai intre impare > 3
Răspunsuri la întrebare
#include <iostream>
using namespace std;
int main()
{
int a, d;
cin >> a;
int aprim=1;
if (a<2) aprim=0;
if (a>2)
{
if (a%2==0) aprim=0;
else
{
for (d=3; d*d<=a; ++d)
{
if (a%d==0) { aprim=0; break; }
}
}
}
if (aprim==0) cout << "NU";
else
{
int ogl=0;
while (a>0)
{
ogl=ogl*10+a%10;
a=a/10;
}
int oglprim=1;
if (ogl<2) oglprim=0;
if (ogl>2)
{
if (ogl%2==0) oglprim=0;
else
{
for (d=3; d*d<=ogl; ++d)
{
if (ogl%d==0) { oglprim=0; break; }
}
}
}
if (oglprim==0) cout << "NU";
else cout << "DA";
}
}