Guide for El meu primer bucle while
Com abordar aquest problema
Et donen diverses línies amb un número cadascuna. L'última línia sempre és un 0, que indica que s'ha \ acabat l'entrada i que NO s'ha de processar. Per cada número (excepte el 0 final) has d'escriure aquest \ número més 1.
Idea general:
- Com que no saps per endavant quants números hi haurà, no pots fer servir un
forque compti un \ nombre fix de vegades: cal un buclewhileque es repeteixi mentre el número llegit no sigui 0. - Llegeix un número abans d'entrar al bucle, per poder comprovar si és el 0 que marca el final.
- Mentre el número llegit no sigui 0: escriu-lo més 1, i llegeix el següent número.
- Quan llegeixis un 0, atura't sense processar-lo ni escriure res per ell.
Paranys habituals:
- No processis ni imprimeixis res per al 0 final: només serveix per indicar que s'ha acabat l'entrada.
- Llegeix un número nou cada vegada dins del bucle; si no ho fas, et quedaràs en un bucle infinit.
- Recorda convertir el text llegit a enter abans de sumar-hi 1.
Pista per a Java
El mateix esquema amb un while en Java:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int numero = Integer.parseInt(sc.nextLine().trim());
while (numero != 0) {
System.out.println(numero + 1);
numero = Integer.parseInt(sc.nextLine().trim());
}
}
}