In questa lezione svilupperemo un algoritmo che effettua la somma dei numeri positivi e negativi in C, utilizzando il ciclo for.
L’algoritmo è molto simile all’esercizio precedente sul conteggio dei numeri positivi e negativi.
Somma dei positivi e dei negativi – algoritmo
Inserire 20 numeri in input e sommare separatamente i positivi e i negativi.
In questo caso specifico dato che 0 è l’elemento neutro della somma possiamo anche tralasciare il controllo, in quanto il risultato non cambia, sia se lo sommiamo ai negativi, sia ai positivi.
Quindi inizializziamo a zero le due variabili per la somma: sommap=0 e somman=0.
Dopo dobbiamo chiedere di inserire il numero n in input.
Quindi confrontiamo n con zero, utilizzando per primo l’operatore di confronto >. (Chiaramente potevamo anche partire dal minore)
Se la condizione è vera allora sommiamo il numero a sommap, altrimenti a sommad.
Questo procedimento lo iteriamo 20 volte, cioè finché il test diventerà falso.
Dunque, con l’istruzione printf, visualizziamo le somme così ottenute.
Ecco dunque il listato completo per l’algoritmo che effettua la somma dei numeri positivi e negativi in C:
#include <stdio.h>
main()
{
int n, i;
int sommap=0, somman=0;
for(i=0;i<20;i++)
{
printf("inserisci il %d numero: ", i+1);
scanf("%d", &n);
if(n>0)
sommap+=1;
else
somman+=1;
}
printf("I numeri positivi sono: %d - I numeri negativi sono: %d\n", sommap, somman);
system("PAUSE");
}
Nel caso in cui si richiedeva il calcolo della media dovevamo fare un ulteriore controllo per n uguale zero.
Chiaramente questo è una possibile risoluzione all’algoritmo per la somma dei numeri positivi e negativi in C.
Alcuni link utili
Allocazione dinamica della memoria con malloc
Esercitazione sulle struct in C
Realizzare un menù di scelta in C
Come sommare gli elementi della cornice esterna