07. Operatore modulo
In matematica l'operatore modulo restituisce il resto della divisione tra due numeri interi.
Normalmente, per indicarlo, si usa l'abbreviazione mod.
Esempi:
78 mod 5 = 3
4 mod 5 = 4
6 mod 3 = 0
Notare che, dato un numero N, per qualsiasi numero positivo X si ha
0 <= (X mod N) <= N-1
cioè, il risultato dell'operazione è compreso tra 0 e N-1.
Nel linguaggio C l'operatore modulo è indicato con il simbolo % (percento).
Esempio:
Consideriamo il programma, già analizzato, che verifica se un numero è primo.
Utilizzando l'operatore modulo diventa:
#include <stdio.h>
int main()
{
int i, primo, N;
printf("Inserire un numero intero maggiore di 1: ");
scanf("%d", &N);
if (N<=1) {
printf("Il numero inserito non e' valido\n");
return 1;
}
primo=1;
i=2;
while (i <= N/2){
if (N % i == 0){
primo = 0;
break;
}
i++;
}
if (primo)
printf("%d e' un numero primo\n", N);
else
printf("%d NON e' un numero primo\n", N);
return 0;
}
if (N % i == 0)
Questa istruzione verifica se i è un divisore di N, cioè se la divisione tra N ed i dà resto 0.
Nota:
Per la precisione l'operatore % si comporta come l'operatore modulo della calcolatrice solo nel caso dei numeri positivi.
Sito: 7ecnologie
Sezione: 08. C language
Capitolo: 02. Introduzione al C
Paragrafo: 07. Operatore modulo
Indice dei capitoli: 00. Risorse - 01 Ambiente di sviluppo - 02. Introduzione al C - 03. Le librerie - 04. Tutorial - 05. Esercizi svolti - 98. Esercizi
Indice dei paragrafi: 01. Hello World - 02. Variabile di tipo int - 03. Input da tastiera - 04. Controllo condizionale if - 05. Operatori logici - 06. Ciclo while - 07. Operatore modulo - 08. Array - 09. Ciclo for - 10. Ciclo do/while - 11. Variabili di tipo float - 12. Funzione random() - 13. Impostazione del set di caratteri - 14. Definizione di funzioni - 15. Passaggio di parametri: gli array - 16. Variabili: visibilità e durata - 17. Il tipo char - 18. I file - 19. Funzioni matematiche
Indice degli approfondimenti: 01. Es. svolto: sequenza ciclica