Come contare i numeri positivi e negativi in C
Questo semplice programma in linguaggio C chiede all'utente di digitare dieci numeri interi e conta quanti sono positivi o negativi.
- #include <stdio.h>
- int main()
- {
- int n=0,c=0;
- int contapositivi=0, contanegativi=0;
- for(c=0;c<10;c++) {
- printf("Digita il %d numero: ", c+1);
- scanf("%d", &n);
- if(n>0)
- contapositivi+=1;
- else
- if (n<0) contanegativi+=1;
- }
- printf("Hai digitato %d numeri positivi e %d numeri negativi \n", contapositivi, contanegativi);
- return 0;
- }
Come funziona
1] Inizializzazione
Nelle prime righe del programma ( righe 4-5) includo la libreria stdio.h per usare le funzinoni di input/output scanf e printf.
Poi dichiaro quattro variabili di tipo intero:
- La variabile n è una variabile di comodo che uso per registrare l'ultimo numero inserito dall'utente
- La variabile c la uso per il conteggio dei numeri digitati dall'utente
- Le variabili contapositivi e contanegativi cle uso rispettivamente per registrare il conteggio dei numeri positivi e negativi.
Tutte le variabili sono inizializzate a zero.
2] Elaborazione
Il codice si basa su una struttura ciclica for esterna (righe 6-13) che itera 10 volte.
A ogni iterazione chiedo all'utente di digitare un numero intero tramite l'istruzione scanf() e lo assegna alla variabile n.
Poi verifico se il numero intero n è positivo o negativo tramite una struttura condizionale if else (righe 9-12).
- Se il numero n è maggiore di zero (n>0) allora è positivo. Incremento di uno la variabile contapositivi (contapositivi++).
- Se il numero n è minore di zero (n<0) allora è negativo. Incremento di uno la variabile contanegativi (contanegativi++).
Lo zero non è conteggiato né negativo, né positivo.
Esempio
Digita il 1 numero: 4
Digita il 2 numero: -2
Digita il 3 numero: 1
Digita il 4 numero: 3
Digita il 5 numero: -1
Digita il 6 numero: 0
Digita il 7 numero: 2
Digita il 8 numero: 7
Digita il 9 numero: -2
Digita il 10 numero: 8
3] Stampa risultato (output)
Al termine delle dieci iterazioni, visualizzo sullo schermo il contenuto delle variabili contapositivi e contanegativi tramite l'istruzione printf (riga 14).
Hai digitato 6 numeri positivi e 3 numeri negativi
In questo modo il programma restituisce il conteggio dei numeri positivi e negativi digitati dall'utente.
E' molto semplice.
E così via.