Salve a tutti,
ho problemi con l'implementazione dell'algoritmo del crivello di Eratostene.
Mi si chiede di creare un array di primi 100 numeri primi e mi risulta parecchio difficile. Posto il codice scritto finora anche se non è completo.
Praticamente non riesco nemmeno a cercare gli elementi dell'array che hanno per indici i numeri primi per poi compattarlo. Il problema, credo, sia nella condizione del ciclo for controllato da j..codice://Programma che determina i primi 100 numeri primi #include <iostream> #include <stdlib.h> #include <iomanip> using namespace std; int main () { const int size = 100; int a[size]; for(int i=1;i<=size;i++){ //creo array di elementi inizializzati a 1 a[i]=1; for(int j=2;j<=size;j++){ //j setaccia l'array if(j%i==0){ //cerca i numeri primi a[j]=0; // e pone gli elementi dell'array pari a zero se sono multipli } } cout << setw(7) <<i << setw(13) << a[i] <<endl; } system("Pause"); return 0; }![]()
![]()
![]()
![]()
.
Cos'è che mi sfugge??

Rispondi quotando