Her birinize tesekkurumu bildirirem.Coxsagolun...
[code]
#include <iostream>
using namespace std;
int main ()
{
for (int i=100; i<200; i++)
{
bool sade = true;
for (int n=2; n*n<=i; n++)
{
if (i % n == 0)
{
sade = false;
break;
}
}
if(sade) cout << i << endl;
}
return 0;
}
[/code]
Heyder senin algoritmin bu olmaq isdiyib)
#include
using namespace std;
int main()
{
int k=0;
for(int i=101;i<=200;i++)
{
for(int j=2;j<=i/2;j++)
{
if(i%j==0)break;
else
{
k=1;
}
}
if(k==1)cout<<i<<endl;
k=0;
}
return 0;
}
sənin səhvin [code]if(i % j==0) break;
else k=1;[/code] burdadı beləki fərz edək i=15. j=2 olanda i%j=1 olur buna gore sendə k=1 olacaq. j=3 olanda i%j=0 olacaq və dövr sınacaq j=2 olanda sən k=1 etdiyin üçün dövr break olanda k=1 olacaq və geriyə true döndərəcək.
başqa bir xətan if(k=1) belə yazdğında k=1 olur yəni şərt işləmir bəzi compile lar bunu xəta olaraq göstərsədə bəziləri göstərmir.
prime number ləri tapmaq üçün müxtəlif metodlar var internetdən daha ətraflı məlumat tapa bilərsən.
[/code]bool isPrime(int x)
{
if(x!=1 && x<4 )
return false;
else
{
for(int i=2; i<=sqrt(x); i++)
if(x%i==0)
return false;
}
return true;
}
bu prime number ları tapmaq ucun istifadə olunan metodlardı. dövrdə nəyə görə sqrt(x) istifadə etdiyimi bilmək istəsən [/code]