Como calcular media em Java - NetBeans

Deu certo Guialeixo. Era mesmo só criar um pra cada um. Obrigado =D

Mas crie outros no mesmo projeto e teste. Não pode funcionar assim não. Dentro de um projeto se tem vários programas. Se for um problema de configuração tem que resolver.

import javax.swing.JOptionPane;

class Media1 {

    public static void main(String args[]) {

        int n1, n2, n3, n4, media;

        n1 = Integer.parseInt(JOptionPane.showInputDialog("Entre com a primeira nota"));
        n2 = Integer.parseInt(JOptionPane.showInputDialog("Entre com a segunda nota"));
        n3 = Integer.parseInt(JOptionPane.showInputDialog("Entre com a terceira nota "));
        n4 = Integer.parseInt(JOptionPane.showInputDialog("Entre com a quarta nota"));

        media = (n1 + n2 + n3 + n4) / 4;

        JOptionPane.showMessageDialog(null, "O Total " + media);
        System.out.println("Total  =" + media);
        System.exit(0);
    }
}

Amigo, corrigi o seu código e validei. Agora está funcionando corretamente!
Caso tenhas dúvidas sobre as alterações que fiz, escreve para o meu e-mail, ou mande uma mensagem aqui no fórum, ok?

Abraços, e que Deus te abençoe!

Pessoal, tenho um trabalho para fazer que é o seguinte, o programa tem que perdir 10 numeros ao usuario e depois calcular a media desses numeros, até ai beleza, mas além disso tenho que mostrar quais numeros digitados são maiores que a media alguem poderia me ajudar.Obrigado.

Pessoal, tenho um trabalho para fazer que é o seguinte, o programa tem que pedir 10 numeros ao usuario e depois calcular a media desses numeros, até ai beleza, mas além disso o programa tem que mostrar os numeros digitados que forem maior que a media, se alguem poder ajudar muito obrigado.

Depois de obter a média compare cada número digitado com o resultado, se for maior vc guarda em um array ou em um StringBuilder. E depois mostra isso.

[code]StringBuilder b = new StringBulder();
if(n1 > media) b.append(n1);

if(b.length() > 0) b.append(", ");

if(n2 > media) b.append(n2);

if(b.length() > 0) b.append(", ");

if(n3 > media) b.append(n3);

if(b.length() > 0) b.append(", ");

if(n4 > media) b.append(n4);

System.out.println(“Notas maiores que a média =” + b.toStrint() ); [/code]

Veja se isso funciona para vocês:

[code]import java.util.Scanner;

public class Media{
static int[] notas = new int[10];
static Scanner entrada = new Scanner(System.in);
static int soma = 0;

public static void main(String[] arg){

	for(int i = 0; i < 10; i++){

		System.out.println("Digite a nota " + (i+1) + ": ");
		notas[i] = Integer.parseInt(entrada.nextLine());
		soma += notas[i];
	}
	int media = soma / 10;
	System.out.println("Media: " + media);
	for(int i = 0; i < 10; i++){

		if(media < notas[i])
		System.out.println("Nota "+ (i+1) + " eh maior que a media: " + notas[i]);

	}
	

}

}[/code]

Abraço!

Pessoal valeu pela ajuda.Brigadão.

Pessoal estou com um outro problema aqui, tenho que fazer um programa que leia 10 numeros e mostre o menor e o maior deles, eu fiz mas acontece que só o maior esta dando certo o menor retorna 0, se alguem poder ajudar segue abaixo o Programa, Obrigado.

package traba;

import java.util.Scanner;
public class trabalhoex1 {
public static void main(String[] args) {
int v=0, nump=0,numi=0, Mv=0, vp=0, vi=0, mv=0;//Mv=maior valor, //mv = menor valor

int r;

for (int i = 1; i<=10; i++){
Scanner input = new Scanner(System.in);
System.out.println(“Digite os valores”);
v = input.nextInt();
r=v%2;
if (r==0){
vp=vp+v;
nump=nump+1;}
else{
vi=v+vi;
numi=numi+1;
}

if (v>Mv)
Mv=v;
else
if(v<mv)
mv=v;

}

System.out.println("O maior numero é: " +Mv);
System.out.println("O menor numero é: " +mv);

}
}

Olá Bruno VBA,

Primeiramente, gostaria de pedir para quando vocês postar um código aqui no fórum colocar entre as tags [ code] CODIGO AQUI [ /code] (sem espaço). Assim, além de facilitar a leitura de seu código, deixa o fórum mais organizado. Inclusive se você puder editar seu último posto colocando o código entre as tags eu agradeço.

Abaixo segue meu código com o que você propôs:

[code]import java.util.Scanner;

public class teste{
public static void main (String[] args) {
int v;
int pv = 0;
int gv = 0;

	for (int i = 1; i<=10; i++){

		Scanner input = new Scanner(System.in); 
		System.out.print("\nDigite os valores: ");
		v = input.nextInt();
		if(i==1){
			pv = v;
			gv = v;
		}else{
			if(v < pv)
				pv = v;

			if(v > gv)
				gv = v;
		}

	}
	System.out.println("\nO maior numero eh: " + gv);
	System.out.println("\nO menor numero eh: " + pv);	
}

}[/code]

Abraço e bons estudos!

Vingdel Obrigado pela ajuda, no proximo post vou seguir suas dicas pode deixar, Valeu.

Alguem de vocês conhece alguma classe que calcule a média de N números passados no parametro do método???

Quer dizer passados numa lista?

Adnal,

O problema é simples.

Voce deve estar executando o projeto pelo botao play ou algo parecido.

O Netbeans está executando a classe Main(que é criada junto com o projeto desktop no Netbeans)
e não a sua classe Ex24.

Solução:
clica com o botão direito do mouse(ou esquerdo se voce for canhoto :smiley: )
na classe que voce quer executar e seleciona a opção
“Executar Arquivo”.

ocorrendo porque acho que voce está executando sua apli

Adnal,

O problema é simples.

Voce deve estar executando o projeto pelo botao play ou algo parecido.

O Netbeans está executando a classe Main(que é criada junto com o projeto desktop no Netbeans)
e não a sua classe Ex24.

Solução:
clica com o botão direito do mouse(ou esquerdo se voce for canhoto :smiley: )
na classe que voce quer executar e seleciona a opção
“Executar Arquivo”.

ocorrendo porque acho que voce está executando sua apli

[quote=adnal]Acho q é NetBeans msm q ta com erro.
Vo usar o eclipse qm sab resolva o problema.[/quote]

Cara, tenta instalar uma IDE simples só para vc verificar o código…
tente uma IDE de aprendizagem… essas mais usadas em Universidades…
talvez seja imcompatibilidade do seu NetBeans…
atualize o Java… instale a última versão…

Precisando de algo… :wink:

O ultimo código que você postou está rodando normalmente, concerteza é algum problema com a IDE do Netbeans mesmo!!
Tenta no Eclípse! Se quizer pentar esse código aqui!

[code]import javax.swing.JOptionPane;

public class Media {
public static void main(String[] args) {

	int n1, n2, n3, n4, media;  

    n1 = Integer.parseInt (JOptionPane.showInputDialog(" A primeira nota! "));  
        n2 = Integer.parseInt(JOptionPane.showInputDialog(" A segunda nota! "));  
        n3 = Integer.parseInt( JOptionPane.showInputDialog(" A terceira nota! "));  
        n4 = Integer.parseInt (JOptionPane.showInputDialog(" A quarta nota! "));  
                
                 media =  (n1 + n2 + n3 +n4) / 4;  
        
        JOptionPane.showMessageDialog(null, "O Total  " + media, ".", JOptionPane.PLAIN_MESSAGE);  

        System.out.println(" A media :" + media);  
        
                 System.exit(0);  
}  

} [/code]

Sim, por exemplo: ClasseMedia.calculaMedia(2,2,2,2,2,2)
o grande lance seria poder realizar a média sem precisar a quantidade de numeros que será inserido…

caso essa classe e exista o método calculaMedia irá calcular a média de acordo com o que foi passado.
Na classe Math não encontrei algo parecido com isso, procurei também no javadocs, mas realmente não encontrei nada.

Não conheço uma classe que faça esse tipo de cálculo. Mas você pode tentar implementar algo do tipo:

public static double calculaMedia(int... valores) { int soma = 0; for (int valor: valores) { soma += valor; } return soma/valores.length; }
Espero que ajude.