Soma de Array

Olá pessoal,

To iniciando no Java…Só pra contar.

To fazendo um exercício de lógica:
Tenho que ler seis notas, achar a menor e a maior, somar as notas tirando a maior e a menor.
Era só lógica mesmo, sem java, mais eu tentei fazer no java, como não tenho instalado, fiz no bloco de notas, deve estar com erros. :oops:
Achei a maior e a menor, mais não consigo fazer a soma…
Podem me ajudar, não precisa de metodos e tals, é o basico mesmo, Lógica de programação…

Obrigado…

public class Competicao {

      public static void main (String [] args)  {
          
             Integer notas[] = new Integer [5];
             int maior = notas[0];
             int menor = notas[0];
             int notaFinal;


            for (int i = 0; i <notas.length; i++)  {
                 for(int j = 0; j <notas.length; j++)  {
                     if((notas[i]<notas[j]) && (notas[i]<menor))  {
                          menor = notas[i];
                      }

                     if((notas[i]>notas[j]) && (notas[i]>maior))  {
                          maior = notas[i];
                      }
//Não esqueça de inicializar a variável.
notaFinal = 0;
notaFinal = notaFinal + notas[i];
  1. Você esqueceu de fechar os parênteses dos for.
  2. Porque utilizar dois for? Apenas um já é suficiente.

Eu preciso somar as notas do array e subtrair a menor e a maior nota.

Eu fiz dois for porque eu preciso descobrir qual a maior e qual a menor de cada posição do array, consegui explicar?..RS

for(int i = 0; i < notas.length; i++){
    if( notas[i] < menor ){
        menor = notas[i];
    }

    if( notas[i] > maior ){
        maior = notas[i];
    }
}

[quote=Eder Peixoto] //Não esqueça de inicializar a variável. notaFinal = 0;

notaFinal = notaFinal + notas[i];
  1. Você esqueceu de fechar os parênteses dos for.
  2. Porque utilizar dois for? Apenas um já é suficiente.[/quote]

Cara eu estava vendo aqui ia ficar assim?

[code]public class Array2 {

public static void main(String[] args) {

	Integer notas[] = new Integer[5];
	int maior = notas[0];
	int menor = notas[0];
	int notaFinal = 0;

	for (int i = 0; i < notas.length; i++) {
		{
			if ((notas[i] < menor)) {
				menor = notas[i];
			}

			if ((notas[i] > maior)) {
				maior = notas[i];
			}

			notaFinal = notaFinal + notas[i];

		}
	}
}

}[/code]

Mais falta receber os valores não é?

Isso mesmo LucasAdri07. Foi o que acabei de postar.

Só vi sua mensagem depois que postei a minha :S

Mais ainda falta algo para receber os valores não é?

Um JOptionPane por exemplo?

Acho que com dois for, ela quis percorrer todas as notas, armazenas a menor, e depois percorrer de novo comparando para achar a maior.

Tenta isso

public static void main (String [] args) { 
	int NOTAMAX = 10;
	int QTD = 5;
	int[] notas = new int[QTD];
	int menor = NOTAMAX;
	int maior = 0;
	int soma = 0;

	for(int i = 0; i < QTD; i++){
		if(notas[i] > maior){
			maior = notas[i];
		}
		if(notas[i] < menor){
			menor = notas[i];
		}
		soma += notas[i];
	}
soma = soma - maior - menor;
}

Exemplo:

QTD = 3;

notas[0] = 5;
maior = 5;
menor = 5;
soma = 5;

notas[1] = 2;
maior = 5;
menor = 2;
soma = 7;

notas[2] = 3;
maior = 5;
menor = 2;
soma = 10;

soma = 10 - 5 - 2; //3

É do jeito mais basico mesmo…
Brigado pessoal…
Valeu mesmo…
bjooooooooo

Ixiiiiiiiiiiii…Agora não tendi nada…
Do jeito q eu fiz não ta certo?

[quote=marineli]Ixiiiiiiiiiiii…Agora não tendi nada…
Do jeito q eu fiz não ta certo?[/quote]

Acho que você não tem os valores, você testou para ver?

É só um exercício de Lógica de programação, eu só fiz em java porque eu to aprendendo java, mais era só pra fazer em lógica:
Leia tres notas, ache a maior e a menor, some as notas, menos a menor e a maior.
Tendeu?

Oi marineli,

O que o LucasAdri07 perguntou é de onde que virão os valores (as notas). Serão informadados pelo usuário, lidos de um arquivo etc.

[quote=Eder Peixoto]Oi marineli,

O que o LucasAdri07 perguntou é de onde que virão os valores (as notas). Serão informadados pelo usuário, lidos de um arquivo etc.[/quote]

Isso, pois você vai precisar de um valor para cada nota, mesmo que seja um exercicio de lógica, você ira ter que receber as notas, usando um Buffered, um JOptionPane, um Scanner ou mesmo fixar as notas.

Não tem um jeito de fazer sem numero, mesmo q não for em java, só o basico, \Logica mesmo?

Do jeito que está, ele está só uma estrutura de um aplicativo, que ainda não pode ser executada, pois não tem valores.

Se for um exercicio que seu professor pediu, e você tem que mostrar os numeros, você precisa ter os valores deles, seja de um arquivo, digitado pelo usuario, ou fixado por você.

Não precisa mostrar numero, é só fazer um programa que leia seis notas, exclua a maior e a menor e some as demais.
Só isso, sem números, só o básico mesmo…
tipo…
numero = ler numero;

Essas coisas…

[quote=marineli]Não precisa mostrar numero, é só fazer um programa que leia seis notas, exclua a maior e a menor e some as demais.
Só isso, sem números, só o básico mesmo…
tipo…
numero = ler numero;

Essas coisas…[/quote]

Entendo, então você não ira executar? Pois esse aplicativo está morto do jeito que está, não podera ser executado.

Isso, não vou executar.
Mais pra eu executar é só passar valores, certo?

Olá Marineli. Por favor, quando postar códigos, use a tag code:
[code]
Seu código
[/code]

Senão fica muito difícil para lermos.