Witam,
mam polecenie które brzmi:
Napisz funkcję, która otrzymuje jako argument liczbę całkowitą n (n>=3) i zwraca jako wartość największą liczbę pierwszą mniejszą od n (do wyznaczenia wyniku użyj algorytmu sita Eratostenesa).
napisałem taki oto kod:
#include <iostream>
using namespace std;
int main()
{
int n, i, tab[n];
for(i=0; i<n+1; i++)
tab[i]=0;
for(i=2; i<n+1; i++){
if(tab[i]==0)
for(int j=i*i; j<n+1; j=j+i)
tab[j]=1;}
for(i=n; i>0; i--)
if(tab[i]==0)
cout<<i;
return 0;
}
Niestety gdy go uruchamiam wyskakuje błąd krytyczny czyli program przestał działać. Bardzo proszę o pomoc.