beh non è proprio inutile la condizione del while..
per come l'ho scritto io funziona così:
- se il numero è >= 0 calcola i km al litro
- se il numero è negativo non calcola niente ma va avanti a chiedere numeri
- se il numero è -1 termina il ciclo
se vuoi trovare una soluzione più elegante mi sa che devi cambiare il modo con cui dici al programma di terminare il ciclo. ma dipende da quello che devi fare