Io avrei usato for con range invece di while
e forse semplificato la parte con gli if