[RESOLVIDO] Duvida Exercício com While

16 respostas
C

No exercício eu preciso pedir para o usuário escolher a quantidade de números a ser digitada.
depois mostrar os números q ele digitou e a soma deles.
Estou com dificuldade em colocar os números que o usuário digitou… alguém pode me da uma dica…
obs. só posso revolver com while.

int qtNumeros = solicitarNumero("Informe a quantidade de números.");
int contador = 0;
int soma = 0;

while(contador < qtNumeros)
{
int numDigitado = solicitarNumero("Informe um número.");
soma += numDigitado;
contador++;
}

mostrarMensagem("Os números digitados foram"+"      ?        "+". A soma deles é: "+soma);

16 Respostas

denisspitfire

tem que dar um scan sempre que ter uma iteração no while

denisspitfire

exemplo

//Voce cria essa linha para ter o Scanner
Scanner sc = new Scanner(System.in);
int i;
while(...){
//isso é para pegar os valores
i = sc.nextInt();
}
RiQuInHo_
Seria algo desse tipo!
import java.util.Scanner;    
     
 /**  
  * @author vitor
  *  
  */    
 public class Scannersss {    
     
    public static void main(String[] args) {    
           
       Scanner sc = new Scanner(System.in);    
       String entrada;    
           
       System.out.println("vai aparecer na tela");    
       System.out.println("digite alguma coisa abaixo");    
           
       entrada = sc.nextLine();    
           
       System.out.println("Voce digitou : "+ entrada);    
     
    }    
 }

haha esqueci !!!

se for para ler numeros do prompt,é interessante pois o Scanner tambem tem os metodos nextInt(), nextLong(), nextFloat e nextDouble() para ler numeros.

C

Não posso utilizar a classe Scanner…só while mesmo.

denisspitfire

WHAT?? só da pra usar com scanner a leitura

airmigjr

Tente assim:

import javax.swing.JOptionPane;


public class Logica {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		int numero;
		String concatena = "";
		int numerodigitado;
		int soma=0;
		
		numero = Integer.parseInt(JOptionPane.showInputDialog("Qual é a quantidade de números que deseja somar?"));
		int x = 1;
		while(x<=numero){
	//	for(int x=1;x<=numero;++x){
			numerodigitado = Integer.parseInt(JOptionPane.showInputDialog("Digite o "+x+"º número."));
			concatena = concatena + numerodigitado+", ";
			soma = soma + numerodigitado;
			++x;
		}
		JOptionPane.showMessageDialog(null,"Os números digitados foram: "+concatena+"\nO valor da soma é: "+soma);
		
	}

}
C

Pior que só isso que posso usar…
e tenho os metodos.

mostrarMensagem();

solicitarNumero();

mostrarNumero;
denisspitfire

no metodo solicitar numero voce usa o scanner… é isso

denisspitfire

cara ja é meio “chato” usar o scan do java… creio que o seu professor nao esta pedindo que voce implemente um…

vai na fé que da kkk usa o scanner, se ele reclamar ele ta maluco.

ou o scanner ou o swing que nosso amigo disse

C
Esse meu metodo solicitarNumero(); ja faz a conversão. para int. só quero saber como eu coloco os numeros digitados pelo usuario...
airmigjr:
Poderia fazer com Swing também:
import javax.swing.JOptionPane;

int qtNumeros = solicitarNumero("Informe a quantidade de números.");  
int contador = 0;  
int soma = 0;  
  
while(contador < qtNumeros)  
{  
int numDigitado = Integer.parseInt(JOptionPane.showInputDialog("Informe um número."));  
soma += numDigitado;  
contador++;  
}  
  
JOptionPane.showMessageDialog("Os números digitados foram"+"      ?        "+". A soma deles é: "+soma);
denisspitfire

ah sim… voce precisa da lista dos numeros… desculpe li errado. Nao vi que voce ja estava usando o InputDialog.

crie um metodo mostrarNumeros() que vai pegar um vetor que voce tem e imprimir todos os numeros.

dai voce precisa criar um vetor ou uma lista List e um for para percorrer todo mundo.

public class Teste { public static void main(String[] args) { ArrayList <Integer> list = new ArrayList<Integer>(); list.add(4); list.add(8); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } } }

C

Tentei fazer assim agora…deu mais ou menos certo…os números digitados ficaram invertidos…rs

int qtNumeros = solicitarNumero("Informe a quantidade de números.");
int contador = 0;
int soma = 0;
String numeros = "";

while(contador < qtNumeros)
{
int numDigitado = solicitarNumero("Informe um número.");
soma += numDigitado;
contador++;
numeros = numDigitados+" , "+numeros;
}

mostrarMensagem("Os números digitados foram"+ numeros +". A soma deles é: "+soma);
denisspitfire

tente com o array

C

Não pode…rsrsrs só pode usar while nu e cru…rsrs

denisspitfire

professor quer complicar ensinando porquices pros alunos kkkkk

C

CONSEGUIIIIIIIIIIIIIIIIII!!!

RESOLVIDO GALERA…\O//////////

int qtNumeros = solicitarNumero("Informe a quantidade de números.");
int contador = 0;
int soma = 0;
String numeros = "";

while(contador < qtNumeros)
{
int numDigitado = solicitarNumero("Informe um número.");
soma += numDigitado;
contador++;
numeros += numDigitado+" ";
}

mostrarMensagem("Os números digitados foram"+ numeros +".  A soma deles é: "+soma);
Criado 31 de outubro de 2012
Ultima resposta 31 de out. de 2012
Respostas 16
Participantes 4