Calculador de media, não informando a quantidade de numeros

Se alguem poder me ajuda, estou na diciplina de algoritoms e programação.
O meu algoritmo!

public class Media {
public static void main(String []agrgs) {
double numeros=Entrada.leiaDouble("Valor: ");
int pergunta=Entrada.leiaInt("Adicionar mais um numero 1/sim 2/não: ");
int vezes=1;
while(pergunta==1) {
numeros=Entrada.leiaDouble("Valor: ");
pergunta=Entrada.leiaInt("Adicionar mais um numero 1/sim 2/não: ");
numeros=numeros+numeros;
vezes=vezes+1;
}
while(pergunta<1||pergunta>2) {
numeros=Entrada.leiaDouble("Valor: ");
pergunta=Entrada.leiaInt("Adicionar mais um numero 1/sim 2/não: ");
numeros=numeros+numeros;
vezes=vezes+1;
}
if(pergunta==2) {
System.out.println("Media: "+(numeros/vezes));
}
}
}

Em que você precisa de ajuda?

Ao postar dúvidas, por favor, leia essas dicas:

esse algoritmo não esta funcionando corretamente
não sei onde esta meu erro, se é na matematica ou na programação

Cara, ao colocar codigo, ultilize as tags code.

Quando se ultiliza || ou &&, colocasse parenteses:
Veja:

public class Media { 
 public static void main(String []agrgs) { 
  double numeros = Entrada.leiaDouble(&quot;Valor: &quot;); 
  int pergunta = Entrada.leiaInt(&quot;Adicionar mais um numero 1/sim 2/não: &quot;); 
  int vezes = 1; 
  while (pergunta == 1) { 
   numeros=Entrada.leiaDouble(&quot;Valor: &quot;); 
   pergunta=Entrada.leiaInt(&quot;Adicionar mais um numero 1/sim 2/não: &quot;); 
   numeros=numeros+numeros; 
   vezes = vezes + 1; 
  } 
  while ((pergunta &lt; 1) || (pergunta &gt; 2)) { // coloque os parenteses nas duas expressões
  numeros = Entrada.leiaDouble(&quot;Valor: &quot;); 
  pergunta = Entrada.leiaInt(&quot;Adicionar mais um numero 1/sim 2/não: &quot;); 
  numeros = numeros + numeros; 
  vezes = vezes + 1; 
  } 
  if (pergunta == 2) { 
  System.out.println(&quot;Media: &quot; + (numeros / vezes)); 
  } 
 } 
} 

Não entendi muito bem seu código não.
É pra que?

calcular a media de numeros, independente da quantidade dos mesmo

ex: (10+10+10+10)/4=10

se tiver uma outra sugestão de algoritmo
é bem vinda

Observe que você usou a variável números tanto para a leitura do número, quanto para a soma dos números.
Isso não dá certo, pois a cada leitura, você destrói o que a variável tinha antigamente.

Além disso, essa conta:

numeros = numeros + numeros;

Vai simplesmente multiplicar o valor atual de números por 2.

A lógica está quase certa. Apenas crie duas variáveis e o problema estará resolvido.

Eu não entendi muito bem o que você quis dizer.
Se poder postar um exemplo usando essas 2 variaveis.

[code]public class Media {
public static void main(String []agrgs) {
int pergunta=1;
int vezes=0;
double soma = 0;
while(pergunta==1) {
double numero=Entrada.leiaDouble("Valor: ");
soma += numero;
vezes++;

  pergunta=Entrada.leiaInt("Adicionar mais um numero 1/sim 2/não: ");
}
System.out.printf("Media: %.2f%n", soma/vezes);

}
}
[/code]

Ah! Uma programa para tirar médias aritméticas?!?!
Uma colega já fez isso no fórum, só não me lembro o nome dela, veja este programinha de CONSOLE:

import java.util.Scanner;

public class Medias {
 public static void main (String []args) {
  Scanner ler = new Scanner(System.in);
   System.out.print("Digite o primeiro numero: ");
   double num1 = ler.nextDouble();
   System.out.print("Digite o segundo numero: ");
   double num2 = ler.nextDouble();
   System.out.print("Digite o terceiro numero: ");
   double num3 = ler.nextDouble();  
   System.out.print("Digite o quarto numero: ");
   double num4 = ler.nextDouble();
   double media = (num1 + num2 + num3 + num4) / 4;
   System.out.println("A media aritmetica e " + media);
 }
} 

Muito obrigado!!

Você foi de grande ajuda.

[quote=Tektron]Muito obrigado!!

Você foi de grande ajuda.[/quote]

De nada!
Ao fazer um programa matemático em java, pense como você faria no lápis e papel. Depois coloque-os em java.

Olá amigo,
também estou começando, mas da uma olhada neste código e vê se é isso que você quer!

import java.util.Scanner;
public class Media {
	
	public static void main(String []agrgs) { 
		
		Scanner s = new Scanner(System.in);
		
		double numeros;
		double media = 0;
		int pergunta;
		int vezes = 0;
				
		do {
			System.out.print("Valor: ");
			numeros = s.nextDouble();
			media += numeros;
			System.out.print("Adicionar mais um numero 1/sim 2/não: ");
			pergunta = s.nextInt();
			vezes++;
		} while ((pergunta == 1) || (pergunta < 1) || (pergunta > 2));
		
		if(pergunta == 2) {
			System.out.println("Media: " +(media/vezes)); 
		}
	}
}