Znajomy naskrobał mi program na zaliczenie z informatyki, tylko że nie mogę go rozszyfrować.
Wiem że wyznacza x par liczb bliźniaczych, ale na tym moja wiedza się kończy.
I tu zaczyna się moja prośba: Mógłby ktoś mi linijka po linijce wytłumaczyć co się dzieje w tym programie? Bardzo bym był wdzięczny :)
#include <cstdlib>
#include <iostream>
using namespace std;
const int rozmiar=32000;
int tab[rozmiar];
int j;
int g=31999;
int tab2[rozmiar];
void sito(int tab[])
{
for(int i=2;i<=g;i++)
tab[i]=true;
for(int i=2;i<=g;i++)
{
j=i+i;
while(j<=g)
{
tab[j]=false;
j=j+i;
}
}
}
void blizniacze(int tab[],int zak)
{
int index=1;
sito(tab);
int k=0;
for(int i=2;i<=g;i++){
if(tab[i]!=0){
tab2[k]=i;
k++;
}
}
for(int k=0;k<=g;++k){
if(tab2[k+1]-tab2[k]==2){
cout<<index<<" para liczb: "<<tab2[k]<<" i "<<tab2[k+1]<<" jest para blizniacza"<<endl;
if(index!=zak) index++;
else
return;
}
}
}
int main(int argc, char *argv[])
{
int ile;
cout<<"ile par liczb bliźniaczych chcesz wyświetlic z zakresu 0-400: "<<endl;
cin>>ile;
if(ile>400)
cout<<"za duzy zakres"<<endl;
else
blizniacze(tab,ile);
system("PAUSE");
return EXIT_SUCCESS;
}