Meu professor nunca explicou quando se abre ou se fecha uma chave, aí não só eu mas meus colegas também ficam perdidaços nisso, ele diz quantos são positivos e calcula certo só o problema das chaves mesmo.
importjavax.swing.JOptionPane;classexercicio3for{publicstaticvoidmain(Stringargs[]){doublenum,positivos,negativos,soma_positivos,soma_negativos;inti;i=1;positivos=0;negativos=0;soma_positivos=0;soma_negativos=0;for(i=1;i<=10;i++){num=Double.parseDouble(JOptionPane.showInputDialog("Digite um número qualquer"));if(num>0)positivos=positivos+1;soma_positivos=soma_positivos+num;elsenegativos=negativos+1;soma_negativos=soma_negativos+;}}JOptionPane.showMessageDialog(null,"a quantidade de números positivos é de"+positivos+"\n a soma dos positivos é de "+soma_positivos+"\n\n a quantidade de números negativos é de"+negativos);}}
no seu if ele calcula os positivos, porque como não tem chaves delimitando o bloco, ele só executa o primeiro comando após o if
L
LeoHenrique
Valeu cara!
Abraço!
L
LeoHenrique
Não sei se posso fazer post duplo, se não posso desculpe.
Aproveitando o gancho: quando o número digitado for igual a 0 como fazer que a contagem seja interrompida?
luyz
voce pode usar o break;
exemplo
for(inti=0;i<10;i++){num=Double.parseDouble(JOptionPane.showInputDialog("Digite um número qualquer")); if(num==0)break; //sai do metodo for.//sefordiferentedezeroeleexecutasasfunçoesabaixo
}
gomesrod
Atenção: o digaoneves está apenas mostrando uma característica da sintaxe da linguagem, mas seria interessante você saber também que NUNCA deve utilizar dessa forma.
O “if” sem chaves gera um código menos legível e pode levar a erros como o que aconteceu com você por exemplo.
Seu uso é desencorajado pelas convenções de código, pelos manuais de boas práticas e também por qualquer pessoa que tenha ao menos um pingo de juízo !
L
LeoHenrique
Obrigado pela ajuda, só esse mais, a ideia é dar bonificação somente se o total de vendas atingir 2000, tenho certeza que é coisa básica mas às vezes o cara não percebe! :)
importjavax.swing.JOptionPane;classbonificacao_por_venda{publicstaticvoidmain(Stringargs[]){inti,vendas,total_venda=0,necessario=2000,bonificacao=0;for(i=1;i<=5;i++){vendas=Integer.parseInt(JOptionPane.showInputDialog("Digite as vendas do "+i+"º vendedor"));total_venda+=vendas;// sinal calcula com todas as repetições{if(total_venda>bonificacao)bonificacao=total_venda*10/100;JOptionPane.showMessageDialog(null,"A bonificação dos funcionários será de: R$"+bonificacao);}{elseJOptionPane.showMessageDialog(null,"NÃO HAVERÁ BONIFICAÇÃO!");}}}}}
importjavax.swing.JOptionPane;classrascunho{publicstaticvoidmain(Stringargs[]){inti,vendas,total_venda=0,necessario=2000,bonificacao=0;for(i=1;i<=5;i++){vendas=Integer.parseInt(JOptionPane.showInputDialog("Digite as vendas do "+i+"º vendedor"));total_venda+=vendas;// sinal calcula com todas as repetiçõesbonificacao=total_venda*10/100;}if(total_venda>=necessario)JOptionPane.showMessageDialog(null,"A bonificação dos funcionários será de: R$"+bonificacao);elseJOptionPane.showMessageDialog(null,"NÃO HAVERÁ BONIFICAÇÃO!");}}