Galera, to com um pequeno probleminha aqui. Eu estava querendo fazer um loop que me pedisse pra entrar novamente com os dados, nesse caso os números, para que ele realizasse as operações outra vez, e outra vez, até que eu encerre o programa.
Eu comecei a estudar o "for", mas não encontrei uma forma de fazer o que desejo. Espero que possam me ajudar.
Antes de terminar, queria saber o seguinte, quando o loop for realizado, voltando para a entrada de dados, as variáveis vão manter o valor anterior e somar o novo valor a elas, ou elas serão limpas para a entrada de novos dados?
Desde já, obrigado.
importjava.util.Scanner;publicclassExercicio3{publicstaticvoidmain(String[]args){intnum1,num2,resto;Scannersc=newScanner(System.in);System.out.println("Digite um número:");num1=sc.nextInt();System.out.println("Digite outro número:");num2=sc.nextInt();for(;;){System.out.println("\nOperações:\n");System.out.println("Soma:\n"+(num1+num2));System.out.println("Subtração:\n"+(num1-num2));System.out.println("Multiplicação:\n"+(num1*num2));resto=num1/num2;System.out.println("Divisão:\n"+resto);System.out.println("Divisão inteira:\n"+(resto%2));break;}}}
mas seria interessante utilizar um array pra poder listar depois as informações
jeandelima:
Galera, to com um pequeno probleminha aqui. Eu estava querendo fazer um loop que me pedisse pra entrar novamente com os dados, nesse caso os números, para que ele realizasse as operações outra vez, e outra vez, até que eu encerre o programa.
Eu comecei a estudar o "for", mas não encontrei uma forma de fazer o que desejo. Espero que possam me ajudar.
Antes de terminar, queria saber o seguinte, quando o loop for realizado, voltando para a entrada de dados, as variáveis vão manter o valor anterior e somar o novo valor a elas, ou elas serão limpas para a entrada de novos dados?
Desde já, obrigado.
importjava.util.Scanner;publicclassExercicio3{publicstaticvoidmain(String[]args){intnum1,num2,resto;Scannersc=newScanner(System.in);System.out.println("Digite um número:");num1=sc.nextInt();System.out.println("Digite outro número:");num2=sc.nextInt();for(;;){System.out.println("\nOperações:\n");System.out.println("Soma:\n"+(num1+num2));System.out.println("Subtração:\n"+(num1-num2));System.out.println("Multiplicação:\n"+(num1*num2));resto=num1/num2;System.out.println("Divisão:\n"+resto);System.out.println("Divisão inteira:\n"+(resto%2));break;}}}
Ruttmann
Pra deixar seu programa em loop infinito, você pode criar uma variável do tipo boolean e setar ela em true por exemplo…
Aí você troca esse seu for por um while(enquanto), e codifica a seguinte condição: “Enquanto a variável ser true, faça o que estiver dentro do loop…”
Fica assim mais ou menos o seu código:
importjava.util.Scanner;publicclassExercicio3{publicstaticvoidmain(String[]args){intnum1,num2,resto;Scannersc=newScanner(System.in);booleanbool=true;while(bool==true){System.out.println("Digite um número:");num1=sc.nextInt();System.out.println("Digite outro número:");num2=sc.nextInt();System.out.println("\nOperações:\n");System.out.println("Soma:\n"+(num1+num2));System.out.println("Subtração:\n"+(num1-num2));System.out.println("Multiplicação:\n"+(num1*num2));resto=num1/num2;System.out.println("Divisão:\n"+resto);System.out.println("Divisão inteira:\n"+(resto%2));}}}
Com o for você faz loops também, mas tem que sempre determinar um número de instruções fixo. Já com o while utilizado com uma variável boolean você pode manter a instrução indefinidamente.
Do modo que você escreveu, elas vão ser sobrescritas com o novo valor que você define a cada iteração do loop.
marcelo.silva.java
Cara…vc quer que o laço repita em um determinado numeros de vezes…
usa-se o for
for(intx=0; i<=10;i++){System.out.println(x);
}
Pelo que eu vi… o usuário vai controlar o numero de vezes…
sendo de 0 a n…
use-se o comando
while…
espero ter ajudado
J
jeandelima
Galera, muito obrigado pela ajuda. Tudo o que vocês falaram aqui ajudou a clarear minha mente e eu consegui resolver o exercício da apostila do curso. Ficou assim:
importjava.util.Scanner;publicclassExercicio3{publicstaticvoidmain(String[]args){intnum1,num2,resto;Scannersc=newScanner(System.in);for(;;){System.out.println("Digite um número:");num1=sc.nextInt();System.out.println("Digite outro número:");num2=sc.nextInt();if(num1==0||num2==0){System.out.println("Fim do programa!");break;}if(num1!=0||num2!=0){System.out.println("\nOperações:\n");System.out.println("Soma:\n"+(num1+num2));System.out.println("Subtração:\n"+(num1-num2));System.out.println("Multiplicação:\n"+(num1*num2));resto=num1/num2;System.out.println("Divisão:\n"+resto);System.out.println("Divisão inteira:\n"+(resto%2));}}}}
Valeu mesmo galera.
Ruttmann
jeandelima:
Galera, muito obrigado pela ajuda. Tudo o que vocês falaram aqui ajudou a clarear minha mente e eu consegui resolver o exercício da apostila do curso. Ficou assim:
importjava.util.Scanner;publicclassExercicio3{publicstaticvoidmain(String[]args){intnum1,num2,resto;Scannersc=newScanner(System.in);for(;;){System.out.println("Digite um número:");num1=sc.nextInt();System.out.println("Digite outro número:");num2=sc.nextInt();if(num1==0||num2==0){System.out.println("Fim do programa!");break;}if(num1!=0||num2!=0){System.out.println("\nOperações:\n");System.out.println("Soma:\n"+(num1+num2));System.out.println("Subtração:\n"+(num1-num2));System.out.println("Multiplicação:\n"+(num1*num2));resto=num1/num2;System.out.println("Divisão:\n"+resto);System.out.println("Divisão inteira:\n"+(resto%2));}}}}
Valeu mesmo galera.
Que bom colega, conseguimos te ajudar rapidinho!
Mas só uma dica!
Você pode trocar o conteúdo da linha 27 por um simples else, que assim a sintaxe fica mais bonita.
Sempre procure utilizar o else após o uso de um if, assim você segue a lógica e não deixa um "se" pairando no ar sem o "senão" correspondente..
:wink:
J
jeandelima
Ruttmann:
Que bom colega, conseguimos te ajudar rapidinho!
Mas só uma dica!
Você pode trocar o conteúdo da linha 27 por um simples else, que assim a sintaxe fica mais bonita.
Sempre procure utilizar o else após o uso de um if, assim você segue a lógica e não deixa um “se” pairando no ar sem o “senão” correspondente…
Valeu a dica, nem tinha prestado atenção a esse detalhe. Vou fazer isso agora