Preciso de ajuda com um exercício

Eu recebi uma lista de exercícios para programar em java, mas estou com dificuldades para fazer um exercício, como eu resolvo?

Escreva um programa que peça números ao usuário até que o usuáario insira o nu´mero 0. O programa deve, então, apresentar a soma de todos os números inseridos antes do 0.Escreva um programa que peça números ao usuário até que o usuário insira o número 0. O programa deve, então, apresentar a soma de todos os números inseridos antes do 0.

E qual a dificuldade?
Poste o que já fez.

Isso pode te ajudar.

Scanner ler = new Scanner(System.in);

int i, n;
int somatorio = 0;

System.out.printf("Informe o número qualquer número ou 0 para sair e somar:\n");
n = ler.nextInt(); //Entrada de dados para ler o valor que o usuário vai digitar

for (i=1; n != 0; i++) {
   n = ler.nextInt(); //Entrada de dados até o usuário digitar 0
   somatorio += n;
}

 System.out.printf("| %2d * %d = %2d |\n", i, n, somatorio);

}

2 curtidas

Só tem um problema, quando começa a digitar os números, ele não lê o primeiro.
Se tu digitar 5 5 0, o resultado vai ser 5 e não 10.

É um “charme” da classe scanner.
Use Integer.parseInt(ler.nextLine());

Nops. O erro está na lógica do algoritmo.
A primeira leitura, abaixo do primeiro print, o valor é lido mas não somado ao somatório.

Realmente, a leitura soma só ocorre a partir da segunda entrada.