[C] numeri primi
Salve a tutti. Sto studiando le funzioni non ricorsive in C, ma mi sono bloccato con questo esercizio:
Si scriva un programma C che definisce una funzione:
Si utilizzi inoltre la seguente funzione main() per testarne il
funzionamento:
Non ho la più pallida idea di come procedere
Si scriva un programma C che definisce una funzione:
int next_prime(int last);che restituisce il numero primo immediatamente successivo a last.
Si utilizzi inoltre la seguente funzione main() per testarne il
funzionamento:
int main(void) { int number; int c; int p = 2; printf ("Quanti numeri primi vuoi stampare? "); scanf ("%d”, &number); for (c = 0; c < number; c++) { printf("%d\n", p ); p = next_prime( p ); } }
Non ho la più pallida idea di come procedere

Risposte
Dove incontri difficoltà? Nella creazione della funzione o nel capire come trovare il successivo numero primo?
Nel trovare il successivo numero primo
Ci sono diversi metodi, ma essendo un problema legato all'uso di funzioni e non di algoritmi, direi che ogni metodo può andare bene. Il più semplice consiste nel considerare un numero per volta maggiore del numero dato e verificare se si tratta di un numero primo verificando che non ha divisori.
Purtroppo non riesco a venirne a capo, sono bloccato. Non mi piace chiedere le cose fatte ma in questo caso proprio non riesco a fare nulla