iai pessoal eu estou com dificudade no uso do while
eu fiz este codigo para uma calculadora mais ele não esta copilando o calculo e volta para o menu
eu ja tentei um monte de coisa da uma força ai ou algum dica para melhor estruturação valeu…
[code] int opcao;
int entrada;
int entrada2 = 0;
int soma = 1;
int div = 2;
int subtr = 3;
int mult = 5;
do {
JOptionPane.showMessageDialog(null, " Bem vindo a calculadora");
opcao = Integer.valueOf(JOptionPane.showInputDialog("Para as seguintes Operações use\n\n" +
" Soma [1]\n Divisão [2]\n Subtração [3]\n Multiplicação [5]\n Sair [0]"));
entrada = Integer.valueOf(JOptionPane.showInputDialog("entre com 1º valor "));
}
while (entrada != 0);
if (opcao == soma) {
entrada = entrada + entrada2;
JOptionPane.showMessageDialog(null, entrada);
} else if (opcao == div) {
entrada = entrada / entrada2;
JOptionPane.showMessageDialog(null, entrada);
} else if (opcao == mult) {
entrada = entrada * entrada2;
JOptionPane.showMessageDialog(null, entrada);
} else if (opcao == subtr) {
entrada = entrada - entrada2;
JOptionPane.showMessageDialog(null, entrada);
}
}
public static void main(String args[]) {
double number1, number2, result = 0;
int operacao;
String op;
number1 = Double.parseDouble(JOptionPane.showInputDialog("Digite o primeiro numero inteiro"));
op = JOptionPane.showInputDialog("Digite a operação desejada:\n + - / * ");
while (!op.equals("+") && !op.equals("-") && !op.equals("/") && !op.equals("*")) {
op = JOptionPane.showInputDialog("Esta operação não existe \nDigite a operação desejada:\n + - / * ");
}
operacao = op.charAt(0);
number2 = Double.parseDouble(JOptionPane.showInputDialog("Digite o segundo numero inteiro"));
switch (operacao) {
case '+':
result = number1 + number2;
break;
case '-':
result = number1 - number2;
break;
case '*':
result = number1 * number2;
break;
case '/':
result = number1 / number2;
break;
}
JOptionPane.showMessageDialog(null, "O resultado de " + number1 + op
+ number2 + " = " + result, "Resultado",
JOptionPane.QUESTION_MESSAGE);
System.exit(0);
}
}[/code]
Veja que só usei o While, para a repetição da condição de que se o usuario digitasse uma operação invalida iria abrir uma mensagem
[code] public static void main(String args[])
{
JOptionPane.showMessageDialog(null, " Bem vindo a calculadora");
int opcao = 0;
do
{
opcao = Integer
.parseInt((JOptionPane
.showInputDialog("Para as seguintes Operações use\n\n"
+ " Soma [1]\n Divisão [2]\n Subtração [3]\n Multiplicação [4]\n Sair [0]")));
switch (opcao)
{
case 1:
// Fazer os calculos.
break;
case 2:
// Fazer os calculos.
break;
case 3:
// Fazer os calculos.
break;
case 4:
// Fazer os calculos.
break;
case 0:
JOptionPane.showMessageDialog(
null,
"Diga Tchau Lilica");
break;
default:
JOptionPane.showMessageDialog(
null, "Opção inválida");
break;
}
}
while (opcao != 0);
}[/code]
[code] public static void main(String args[])
{
JOptionPane.showMessageDialog(null, " Bem vindo a calculadora");
int opcao = 0;
do
{
opcao = Integer
.parseInt((JOptionPane
.showInputDialog("Para as seguintes Operações use\n\n"
+ " Soma [1]\n Divisão [2]\n Subtração [3]\n Multiplicação [4]\n Sair [0]")));
switch (opcao)
{
case 1:
// Fazer os calculos.
break;
case 2:
// Fazer os calculos.
break;
case 3:
// Fazer os calculos.
break;
case 4:
// Fazer os calculos.
break;
case 0:
JOptionPane.showMessageDialog(
null,
"Diga Tchau Lilica");
break;
default:
JOptionPane.showMessageDialog(
null, "Opção inválida");
break;
}
}
while (opcao != 0);
}[/code]
Tchauzin![/quote]
Estava faltando no projeto dele, no caso de o usuario digitar uma operação invalida, pedir para digitar novamente…