notas += (Double.parseDouble(JOptionPane.showInputDialog(null, "Informe a nota ")) * peso);
é o mesmo que eu fazer assim? notas = (notas + notas) * peso ??
notas += (Double.parseDouble(JOptionPane.showInputDialog(null, "Informe a nota ")) * peso);
é o mesmo que eu fazer assim? notas = (notas + notas) * peso ??
[quote=adilsonmartins]
notas += (Double.parseDouble(JOptionPane.showInputDialog(null, "Informe a nota ")) * peso);
é o mesmo que eu fazer assim? notas = (notas + notas) * peso ??[/quote]
Não.
Abraço.
Seria então notas = notas * peso ???
Depende do que você quer fazer.
Por que você não explica qual o resultado esperado e por que não está conseguindo chegar nele? Está testando esse código? Ou está longe de um computador e não consegue testar, então está postando essas perguntas “de cabeça” ?
Abraço.
[quote=adilsonmartins]
notas += (Double.parseDouble(JOptionPane.showInputDialog(null, "Informe a nota ")) * peso);
é o mesmo que eu fazer assim? notas = (notas + notas) * peso ??[/quote]
Oi Adilson,
É o seguinte o JoptionPane recebe o valor em String, então neste códgio estamos esperando que o usuário informa apenas valores númericos ou no máximo um ponto para podemos fazer o casting para Double, se o usuário entrar com um texto por exemplo seria gerado uma excessão no código.
Caso o usuário entre com um número este valor será multiplicado pelo valor de peso e após será somado a variável notas.
Deu pra entender?
notas += (Double.parseDouble(JOptionPane.showInputDialog(null, "Informe a nota ")) * peso);
É o mesmo que:
double nota = (Double.parseDouble(JOptionPane.showInputDialog("Informe a nota"));
notas = notas + nota;
notas = notas * peso;
[quote=adilsonmartins]
é o mesmo que eu fazer assim? notas = (notas + notas) * peso ??[/quote]
Não.
É o mesmo que:
notas = notas + (notas * peso)
E mesmo que tirar os parênteses vai ocorrer precedência de operandos, primeiro a multiplicação e depois a soma.
O que vai ficar na mesma.
double nota = (Double.parseDouble(JOptionPane.showInputDialog("Informe a nota"));
notas += nota;
notas = notas * peso;
Isso vai fazer a nota atual + a nota informada, depois multiplica pelo peso.
É o mesmo que notas = (nota + notas) * peso.
[quote=xperito][quote=adilsonmartins]
é o mesmo que eu fazer assim? notas = (notas + notas) * peso ??[/quote]
Não.
É o mesmo que:
notas = notas + (notas * peso)
E mesmo que tirar os parênteses vai ocorrer precedência de operandos, primeiro a multiplicação e depois a soma.
O que vai ficar na mesma.
double nota = (Double.parseDouble(JOptionPane.showInputDialog("Informe a nota"));
notas += nota;
notas = notas * peso;
Isso vai fazer a nota atual + a nota informada, depois multiplica pelo peso.
É o mesmo que notas = (nota + notas) * peso.
[/quote]
Tem razão. Não prestei atenção ao caso.
[quote=xperito][quote=adilsonmartins]
é o mesmo que eu fazer assim? notas = (notas + notas) * peso ??[/quote]
Não.
É o mesmo que:
notas = notas + (notas * peso)
E mesmo que tirar os parênteses vai ocorrer precedência de operandos, primeiro a multiplicação e depois a soma.
O que vai ficar na mesma.
double nota = (Double.parseDouble(JOptionPane.showInputDialog("Informe a nota"));
notas += nota;
notas = notas * peso;
Isso vai fazer a nota atual + a nota informada, depois multiplica pelo peso.
É o mesmo que notas = (nota + notas) * peso.
[/quote]
Só complementando, seria legal o rapaz saber o porque é assim.
Seria por conta de precedência de operadores, no caso em questão ele multiplicaria primeiro e depois somaria.
Estude precedência de operadores que ira te ajudar a entender melhor.
Att.
Artur Martini