Nello scorso articolo abbiamo trattato l’ algoritmo per trovare il massimo di N numeri. In questo articolo analizzeremo l’algoritmo che permette di calcolare la somma di n numeri. Ti ricordo che il linguaggio utilizzato è il C.
N.B. Per semplicità verranno utilizzati solo numeri interi.
Somma di n numeri con condizione “do-while”
Le variabili di cui abbiamo bisogno sono:
- cont (contatore di tipo intero),
- max_num , numero di elementi da sommare,
- somma (di tipo intero),
- num, variabile in cui verrà “memorizzato” il numero inserito dall’utente;
Strategia risolutiva
- Inizializzare le variabili “cont”, “max_num” e “somma” a 0,
- Chiedere all’utente di inserire in numero di elementi da sommare,
- Chiedere all’utente di inserire il numero da aggiungere alla somma,
- Aggiornare la somma,
- Incrementare il contatore,
- Se il contatore è minore del numero di elementi da sommare (max_num), ripetere dal punto 3,
- Quando cont=max_num-1 (perchè il contatore è inizializzato a 0), allora stampa la somma.
Flow Chart
Implementazione
Quello che hai appena visto è una possibile implementazione dell’ algoritmo utilizzando il costrutto do-while. Ora vediamo una variante utilizzando il ciclo for.
Somma di n numeri con “ciclo for”
Il ciclo for è molto più veloce se si conosce la condizione di fine di un ciclo, in questo caso se conosciamo a priori la quantità di numeri da sommare.
Possiamo dire che la condizione del for è strutturata in questo modo < i=0; i<n; i++ >
premettendo che i è una variabile che utilizzeremo come contatore:
- i=0, condizione di inizio, la variabile i avrà come valore iniziale 0,
- i<n, condizione di fine (equivale a scrivere i=n-1),
- i++, incremento del contatore.
Anche in questo caso:
- Si inizializzano le variabili a 0,
- Viene preso in input il numero di elementi da sommare,
- Nel ciclo for viene preso in input un numero alla volta, e viene aggiunto alla somma,
- In fine viene stampato il valore della somma.
Flow Chart
Implementazione
Nel prossimo articolo parleremo dell’ algoritmo Media di N numeri.
Stai cercando altre guide? Allora dai uno sguardo alla nostra raccolta dedicata agli Algoritmi.
Alla prossima!