Guide for El meu primer bucle while


Això és una guia per ajudar-te a començar amb aquest problema — no és la solució.
Mostra el codi per a: Consideracions generals Java 11 Python 3

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:

  1. Com que no saps per endavant quants números hi haurà, no pots fer servir un for que compti un \ nombre fix de vegades: cal un bucle while que es repeteixi mentre el número llegit no sigui 0.
  2. Llegeix un número abans d'entrar al bucle, per poder comprovar si és el 0 que marca el final.
  3. Mentre el número llegit no sigui 0: escriu-lo més 1, i llegeix el següent número.
  4. 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());
        }
    }
}

Tornar al problema