Piccolo appunto :
i cicli for => cicli determintai
i cicli while => cicli indeterminati
se devi ciclare da 0 a n usa sempre il for, e' piu' corretto e ti evita i problemi che hai avuto.
se invece devi ciclare per x (x con x incognito e magari dipendete dal verificarsi di alcune condizioni che ignori prima di avviare il ciclo) usi il while.
![]()