Dovrebbe funzionare, l'errore fondamentale che vedo è che non inizializzi somma a 0.