Ola pessual estou com duvida nesse seguinte problema:
elaborar um programa que efetue a leitura sucessiva de valoes numericos e apresenta no final o total do somatorio, a media e o total de valores lidos. O programa deve fazer as leituras dos valores enquanto o usuário estiver fornecendo valores positivos.O programa encerra quando o usuário fornece valores negativos.
packageExercicios;importjavax.swing.*;publicclasssomatorio_media_valores{publicstaticvoidmain(String[]args){intnum,soma=0;num=Integer.parseInt(JOptionPane.showInputDialog(null,"Digite um numero","Numero",JOptionPane.QUESTION_MESSAGE));while(num>=0){num=Integer.parseInt(JOptionPane.showInputDialog(null,"Digite um numero","Numero",JOptionPane.QUESTION_MESSAGE));System.out.println(num);soma=soma+num;num++;}System.out.println("A soma é"+soma);}}
“Odeio professores de Java que ficam passando esses trabalhos de programação estruturada.”
cara, o que você precisa fazer é criar duas variáveis, uma somatório que começa de zero e toda vez que o usuário digitar um número positivo, esse número é incrementado nessa variável, e um contador que vai incrementando a cada interação do while.
no final, crie mais 2 println com esses dados.
Ou não era essa a dúvida? :S
T
TCalderoni
Entao usei o do..while e consegui implementar a soma:
packageExercicios;importjavax.swing.*;publicclasssomatorio_media_valores{publicstaticvoidmain(String[]args){intnum,soma=0;do{{num=Integer.parseInt(JOptionPane.showInputDialog(null,"Digite um numero","Numero",JOptionPane.QUESTION_MESSAGE));soma=soma+num;num++;}}while(num>0);System.out.println("A soma é "+soma);}}
Pórem ele quer a média também e saber quantos foram os numeros digitados e isso nao sei como fazer.
C
carlaum
Manda executar este codigo aqui e ve se é o q vc quer:
importjavax.swing.JOptionPane;/** * @author Carlos */publicclasssomatorio_media_valores{publicstaticvoidmain(String[]args){intcont=0,num=0,soma=0;while(true){num=Integer.parseInt(JOptionPane.showInputDialog(null,"Digite um numero","Numero",JOptionPane.QUESTION_MESSAGE));if(num>=0){System.out.println(num);soma=soma+num;cont++;}else{break;}}System.out.println("A soma é "+soma);System.out.println("A quantidade de numeros digitados é "+cont);System.out.println("A media é "+soma/cont);}}
nel
Boa tarde.
Não entendi o seu num++, já que é a variavél que guarda o valor digitado não precisa ser incrementada, concorda?
Sobre a média, é simples: