void main(List<String> args) {
Aluno Aluno1 = Aluno(matricula: 222711, nome: "Janaina", nota_trabalho: 7.5, notas_prova: [8.0,9.0]);
print(Aluno1.media([8.0,9.0], 7.5));
print(Aluno1.provafinal([8.0,9.0], 7.5));
}
/*
Escreva uma classe cujos objetos representam alunos matriculados em uma disciplina. Cada objeto
dessa classe deve guardar os seguintes dados do aluno: matrícula, nome, 2 notas de prova e 1 nota de
trabalho. Escreva os seguintes métodos para esta classe:
media calcula a média final do aluno (cada prova tem peso 2,5 e o trabalho tem peso 2)
final calcula quanto o aluno precisa para a prova final (retorna zero se ele não for para a final)
*/
class Aluno{
//Dados do Aluno
int matricula;
String nome;
List<double> notas_prova;
double nota_trabalho;
//Determinando que todos os dados são obrigatórios, mas não posicionais.
Aluno({required this.matricula, required this.nome, required this.nota_trabalho, required this.notas_prova});
double media( notas_prova, nota_trabalho){
double P1 = notas_prova[0];
double P2 = notas_prova[1];
double med = ((P1*2.5)+(P2*2.5)+(nota_trabalho*2))/(7);
return med;
}
double provafinal(notas_prova, nota_trabalho){
//vou supor que a média final para passar é 7, pois o exercício não especifica
double P1 = notas_prova[0];
double P2 = notas_prova[1];
double obj = 7.0;
double fin = 9.5*(obj - (((P1*2.5)+(P2*2.5)+(nota_trabalho*2))/(9.5)))/2.5;
return fin;
}
}
Peguei um exercício da internet para treinar o conteúdo dado no curso. Estou postando pois, gostaria de receber sugestões de melhoria no código na parte de construção da classe e dos métodos. Na função main(), tenho consciência de que preciso armazenar os valores dos argumentos em variáveis e formular um print, mais adequado para as informações.
Em suma é isso, qualquer sugestão é bem vinda!