Imprima o nome e a média dos alunos com a maior e menor média respectivamente

3 respostas
java
A

Olá pessoal, fiz um programa pra ler 2 notas, fazer a média, indicar se aprovados ou não, contar a média da classe e total de alunos, em outra parte do problema está me pedindo para que eu indique o nome e a melhor e pior média respectivamente, eu to totalmente sem ideia de por onde começar.
Estou cursando primeiro período em ADS, talvez vão ver algumas bizarrices.

package aula1;

import java.util.ArrayList;
import java.util.Scanner;

public class Main {

private static Scanner leia;

public static void main(String[] args) {
	leia = new Scanner(System.in);

	String aluno;
	int opc, qntAP = 0, qntRP = 0;// totalal = 0;
	float n1, n2, media, smclasse = 0, mdclasse = 0;
	ArrayList<String> alunos = new ArrayList<>();

	do {
		System.out.println("Informe o nome do aluno:");
		aluno = leia.nextLine();
		alunos.add(aluno);

		System.out.println("Informe a nota N1:");
		n1 = leia.nextFloat();
		while (n1 < 0 || n1 > 10) {
			System.out.println("digite novamente. Valores válidos entre 0 e 10");
			System.out.println("Informe a nota N1:");
			n1 = leia.nextFloat();
		}

		System.out.println("Informe a nota N2:");
		n2 = leia.nextFloat();
		while (n2 < 0 || n2 > 10) {
			System.out.println("digite novamente. Valores válidos entre 0 e 10");
			System.out.println("Informe a nota N2:");
			n2 = leia.nextFloat();

		}

		media = (n1 + n2) / 2;
		smclasse += media;

		System.out.printf("A média do aluno " + aluno + " foi:%.1f %n ", +media);

		if (media >= 6) {
			System.out.println(aluno + " está aprovado.");
			qntAP = qntAP + 1;// qntAP++;
		} else if (media < 4) {
			System.out.println(aluno + " está reprovado.");
			qntRP = qntRP + 1; // qntRP++;
		} else {
			System.out.println(aluno + " está de prova final.");

		}

		System.out.println("Deseja continuar? (1- Sim; 0-Não): ");
		opc = leia.nextInt();

		leia.nextLine();

	} while (opc == 1);

	alunos.size();

	mdclasse = (smclasse / alunos.size());
	// for (String string : alunos) {

	// }

	System.out.println("Total de aprovados: " + qntAP);
	System.out.println("Total de reprovados: " + qntRP);
	System.out.printf("Média da classe: %.1f %n", +mdclasse);
	System.out.println("Total de alunos: " + alunos.size());

}

}

3 Respostas

D
String nome;
float melhorMedia, piorMedia;

Que tal começar por aí?

A

Obrigado Darlan, criei essas classes e fiz uns if’s para buscar as condições das médias. deu certo. valeu pela ajuda. abraços.

F

Muito bom, Auto! A unica coisinha é que o Darlan citou para você criar variáveis, não classes. Mas continue seus estudos e boa sorte!

Criado 24 de julho de 2018
Ultima resposta 27 de jul. de 2018
Respostas 3
Participantes 3