Ritorna alla pagina del corso.
Questa pagina contiene gli esercizi proposti in laboratorio e -alcune- delle soluzioni proposte.
Si suggerisce di provare a risolvere gli esercizi e solo in un secondo tempo di confrontare quanto fatto con le soluzioni proposte.
01: // 1. scrivere una funzione di nome "isprime" che restituisce vero o
02: // falso a seconda che le sia passato un numero primo o meno
03:
04: #include<stdio.h>
05: #include<stdlib.h>
06:
07: // approccio semplificato a forza bruta
08: int isprime(int x)
09: {
10: for(int i = 2; i < x/2; ++i)
11: {
12: if(!(x%i)) // equivalente a if(x % i == 0)
13: return 0; // mi fa uscire subito dalla funzione e il ciclo quindi non termina
14: }
15: return 1; // se il ciclo termina vuol dire che non ho trovato nessun divisore esatto
16: }
17:
18:
19:
20: int main(int argc, char **argv){
21:
22: printf("Il risultato di isprime(8) e' %d\n", isprime(8));
23: printf("Il risultato di isprime(17) e' %d\n", isprime(17));
24:
25: return 0;
26: }
27:
28: