Fazer média com arrays

public class Notas {
	
	public static void main(String[] args){
	
		int nota[] = {4,5,7,4,3,6,6,8,3,4};
		int aluno = 0;
		int soma = 0;
		
		while(aluno < 10){
			System.out.println("Aluno: " + aluno + " Nota: " + nota[aluno]);
			aluno++;
		}
		for(int i = 0; i < nota.length; i++){
			soma = soma + nota[i];
			
			System.out.println(soma);
		}
				
		
	}
}

Boa tarde amigos. Estou precisando imprimir a média de todos os alunos com os arrays mas não estou conseguindo.
Não sei se tem que usar um for ou algo assim.

Obrigado

Oi!

Você acabou de perguntar como imprimir a nota do aluno, foi apresentado laço de repetição e etc.
Agora, essa pergunta. Deixe-me pergunta-lo, queres que alguém faça os teus exercícios de faculdade, é isso? :slight_smile:

Estude algoritmo e principalmente, lógico, pois desse jeito amigo, não vai chegar a lugar algum.
Entenda, se tens un Array e queres extrair os dados, percorra cada posição do Array e some o seu contéudo, depois, você terá todo o conteúdo somado.

Sendo assim, basta pegar esse valor e dividir pelo tamanho do Array, que terás a média :slight_smile:
Abraços.

[quote=fabianozonta][code]
public class Notas {

public static void main(String[] args){

	int nota[] = {4,5,7,4,3,6,6,8,3,4};
	int aluno = 0;
	int soma = 0;
	
	while(aluno < 10){
		System.out.println("Aluno: " + aluno + " Nota: " + nota[aluno]);
		aluno++;
	}
	for(int i = 0; i < nota.length; i++){
		soma = soma + nota[i];
		
		System.out.println(soma);
	}
			
	
}

}
[/code]

Boa tarde amigos. Estou precisando imprimir a média de todos os alunos com os arrays mas não estou conseguindo.
Não sei se tem que usar um for ou algo assim.

Obrigado[/quote]

Boa tarde!
Não se esqueça que a média você deve dividir a soma de todas as notas pela quantidade de notas certo?
Ou seja, isso deve ser feito somente quando você somar todas as notas…
Você está no caminho certo! Falta somente uma coisinha… rsrs

Tem como também você melhorar o código, mas recomendo que você primeiro faça ele funcionar direitinho para depois melhorar a implementação :smiley:

Que tal abaixo do for após ter pego a somatoria das notas você fazer

System.out.println("A média é "+(soma/nota.length)); 

fabiano,

você poderia ter continuado a postar suas dúvidas na Thread anterior… já haviam várias pessoas lhe ajudando lá.

Ok cara, como sou novo no fórum ainda estou pegando a manha mais obrigado pelas dicas.

A propósito com o problema que tive antes em imprimir os arrays ficou tudo 100%.

Mas ainda tenho uma dúvida, que é assim. Quando ele imprime ele imprime assim.

Aluno: 0 Nota: 4
Aluno: 1 Nota: 5
Aluno: 2 Nota: 7
Aluno: 3 Nota: 4
Aluno: 4 Nota: 3
Aluno: 5 Nota: 6
Aluno: 6 Nota: 6
Aluno: 7 Nota: 8
Aluno: 8 Nota: 3
Aluno: 9 Nota: 4

Como sei que o array começa com 0, como eu conseguiria fazer para o aluno começar com o aluno 1 em vez do 0.

Porque quando eu troco o o int aluno de 0 para 1, ele não imprime uma nota.

Não sei se consegui explicar direito.

PS: Obrigado Adriano pelas dicas.

Ola Nel. A questão não é essa. O porém é que eu não faço faculdade, eu estudo em casa somente com livros e apostilas e depois de eu tentar fazer até onde eu entendo, procuro ajuda no fórum para resolução dos mesmos.

Se isso é demais, tentarei achar um lugar onde isso seja possível. No momento não posso iniciar uma faculdade, mas depois dessa me brochou cara.

Valew amigão.

Fabiano, para começar com 1, pense um pouco.

Todo array possui um indice que começa do 0 e vai até (Tamanho do Array - 1)

Se você cria um array com 10 elementos, seu array vai do indice 0 - 9

Logo, se você começar seu contador com o valor 1 e o primeiro indíce do Array é 0, como você pode fazer pra pegar justamente o indíce correto para aquele aluno ???

Ficou simples não ???

Uma dica que eu dou é para escrever como você solucionaria o problema se a sua linguagem de Programação fosse o português… Ou seja, um pseudo-código ajuda pacas para problemas pequenos…

Abs []

[quote=fabianozonta]Ola Nel. A questão não é essa. O porém é que eu não faço faculdade, eu estudo em casa somente com livros e apostilas e depois de eu tentar fazer até onde eu entendo, procuro ajuda no fórum para resolução dos mesmos.

Se isso é demais, tentarei achar um lugar onde isso seja possível. No momento não posso iniciar uma faculdade, mas depois dessa me brochou cara.

Valew amigão.[/quote]

Cara, não desanima por isso não…

O fato é que estamos cheios do pessoal vim aqui pra resolução de seus trabalhos de facul, e como você cometeu esse erro de criar 2 tópicos parecidos, pareceu apelação para a solução de problemas iguais e deu a impressão que não estás te esforçando… Mas as dicas do nel foram bacana, dá uma estudada em Lógica pura, pseudo-código, pra só depois tentar resolver problemas com Java, pois suas dúvidas são menos na linguagem e mais com lógica…

Enfim, não desanima por isso não, vários usuários do GUJ já passaram por essa situação e aprenderam com os erros…

O link que te passei no outro tópico vai te ajudar com essa relação com o fórum.

Abs []

[quote=fabianozonta]Ola Nel. A questão não é essa. O porém é que eu não faço faculdade, eu estudo em casa somente com livros e apostilas e depois de eu tentar fazer até onde eu entendo, procuro ajuda no fórum para resolução dos mesmos.

Se isso é demais, tentarei achar um lugar onde isso seja possível. No momento não posso iniciar uma faculdade, mas depois dessa me brochou cara.

Valew amigão.[/quote]

A questão não é essa, pois a sua pergunta e necessidade me lembra meu primeiro semestre de faculdade, com o mesmo problema.
O que eu quero dizer, é que se você não tentar se esforçar e buscar em qualquer fórum a resposta, dificilmente vai evoluir seu aprendizado.

Fica a dica.
Abraços.

Claro cara, eu entendo mas se eu fizesse uma faculdade certo que teria pedido isto ao meu professor.
Mais que nada.

Gostaria de saber se alguém pode me indicar um livro bom só para lógica.

Obrigado ai luizfelipetx pela dica. Resolveu meu problema com array e consegui fazer a resolução da média.

Ao Nel e Adriano valeu pela força.

[quote=fabianozonta]Claro cara, eu entendo mas se eu fizesse uma faculdade certo que teria pedido isto ao meu professor.
Mais que nada.

Gostaria de saber se alguém pode me indicar um livro bom só para lógica.

Obrigado ai luizfelipetx pela dica. Resolveu meu problema com array e consegui fazer a resolução da média.

Ao Nel e Adriano valeu pela força.

[/quote]

Oi!

Creio que o melhor livro para lógica é procurar ao máximo exercícios para exercitar justamente isso.
Tem esse aqui da Unicamp, não li, mas sendo da Unicamp merece respeito.

Dá uma olhada, parece ser detalhe (olhei por cima) e vale a pena.
Abraços!

Muito obrigado cara.

Vou dar uma olhada assim

Agradeço pela rapidez da resposta.

[quote=fabianozonta]Claro cara, eu entendo mas se eu fizesse uma faculdade certo que teria pedido isto ao meu professor.
Mais que nada.

Gostaria de saber se alguém pode me indicar um livro bom só para lógica.

Obrigado ai luizfelipetx pela dica. Resolveu meu problema com array e consegui fazer a resolução da média.

Ao Nel e Adriano valeu pela força.

[/quote]

Cara, cada um tem um aprendizado e talz… mas acho exagero livro só pra lógica…

Você tinha algum conhecimento de programação antes de começar no Java?

Caso esse seja seu primeiro contato com algoritimos e tudo mais, é melhor aprender C ou outra linguagem mais simples.

Então cara, já fiz um curso voltado a linguagem Java entende, tipo todo o código no caso.

O que acontece que o código eu já estou entendendo saca, até o OO já entendo como funciona.

Pelo que os amigos do fórum me falaram meu problema está com a lógica mesmo.

E pelo fato de estar estudando sozinho a ± um ano, não tenho como sanar dúvidas e nem pegar macetes de nada.

Já pensei até em parar de estudar, quando meu amigo que programa em Delphi me disse que java é muito f*****a e tal.

Agora cara, exagero? Me diz outro modo pra aprender não sendo lendo livros.

Estou correndo atrás. Se eu começar a programar em C ai não sei se vou me entender mais cara.

Da uma garimpada na net que tu acha uns tuto legais, guarda teu dinheiro pra livros de assuntos mais complexos (minha opnião).
Outra coisa também, aprender outra linguagem não vai te prejudicar, no teu caso é melhor, é mais fácil aprender lógica em outras linguagens, Java é uma linguagem mais complexa.
E não se engane, se você está com problemas de algoritmos e lógica, não pense que realmente está entendendo o código e o paradigma de orientação a objetos.
Mais importante: não desanime! Com esforço vamos conseguir (eu também sou novato).

Recomendação de livro: Use a cabeça:Java!
Esse livro tem uma didática muito boa, ensina de um jeito simples. Eu senti que estava aprendendo depois que comecei a ler ele.

Fala Henio, valeu pela dica ai jogador.

Vou fazer uso deste livro.

Mas cara. As vezes não sei se tenho lógica para programar saca.

Affffffff mais vamo que vamo…

Conversamos …



public class Notas {
	
	public static void main(String[] args){
	
		int nota[] = {4,5,7,4,3,6,6,8,3,4};  
        String alunos[] = {"Aluno 1","Aluno 2","Aluno 3","Aluno 4","Aluno 5","Aluno 6","Aluno 7","Aluno 8","Aluno 9","Aluno 10"};  
        int soma;
        //int aluno = 0;  
          
        //while(aluno < 10){  
        for (int i = 0; i < nota.length; i++) {  
            System.out.println(alunos[i] + " nota : " + nota[i]);
        }
        for (int a = 0; a < nota.length; a++){
        	soma = nota.length / 10;
        	System.out.println(soma);
        }
	}
}
				

Amigos, estou aqui novamente para pedir um HELP. Experts de plantão me desculpem mas não consigo fazer imprimir a soma das notas em forma de média, já procurei até nos fóruns e como não achei peço ajuda.

Esse é um exercício do livro “Aplicando Lógica Orientada a Objeto em JAVA” de Fernando Anselmo.

Não é exercício de faculdade.

Esqueci de dizer que ele imprime os alunos com as notas certinho. O problema é só com a média mesmo.