poderia me ajudar neste exercício, pois para calcular maior e menor e alunos que tiveram nota maior que a media, tenho que saber o numero de alunos que vez a prova , porem não sei o numero para depois comparar todos os elementos do vetor total
veja abaixo , obrigado
14) Desenvolva um algoritmo para um programa de realização de provas objetivas para um curso de inglês. Armazene em uma matriz todas as perguntas e as possíveis respostas em alternativas (a, b, c e d). Em um vetor armazene o gabarito oficial. O número de alunos que farão a prova é desconhecido. Quando cada aluno terminar de responder às questões, já deverá conhecer a sua nota final. Cada questão correta vale 2,0 pontos e cada questão errada vale -1,0 ponto. Em seguida deseja-se obter:
a) O número de alunos que fizeram a prova.
B) A média das notas obtidas pela turma toda.
c) Quantos alunos obtiveram nota acima da média calculada no item anterior.
Pergunta
Andrei soares
poderia me ajudar neste exercício, pois para calcular maior e menor e alunos que tiveram nota maior que a media, tenho que saber o numero de alunos que vez a prova , porem não sei o numero para depois comparar todos os elementos do vetor total
veja abaixo , obrigado
14) Desenvolva um algoritmo para um programa de realização de provas objetivas para um curso de inglês. Armazene em uma matriz todas as perguntas e as possíveis respostas em alternativas (a, b, c e d). Em um vetor armazene o gabarito oficial. O número de alunos que farão a prova é desconhecido. Quando cada aluno terminar de responder às questões, já deverá conhecer a sua nota final. Cada questão correta vale 2,0 pontos e cada questão errada vale -1,0 ponto. Em seguida deseja-se obter:
a) O número de alunos que fizeram a prova.
B) A média das notas obtidas pela turma toda.
c) Quantos alunos obtiveram nota acima da média calculada no item anterior.
d) Qual a maior nota obtida.
e) Qual a menor nota obtida.
import javax.swing.JOptionPane;
class exer14
{
static public void main(String[] args)
{
String[] gabarito = {"A", "B", "A", "C",};
String resp= "";
double total[] = new double[9];
int i=0,j,alunos = 0,alunosM=0;
double media=0,maior=0,menor=0,pontuacao=0,acerto = 0;
String[][] prova ={
{"01 A palavra home quer dizer : " , "A : casa " , "B : Loja" ,"C : Escritorio", "D : Barraco" },
{"02 Como e cão em ingles" , "A : Raf" , "B : Dog" , "C : Gat","D : car"},
{"03 A palavra god e : ", "A : Bom", " B : Legal" , "C : Otimo", "D : bacana" },
{"04 Como e livro em ingles : ", "A : text", "B : Pokk" , "C : Book " , "D : Livro"}};
while(true)
{
acerto = 0;
alunos++;
for (i = 0; i < prova.length; i++){
do
{
resp = JOptionPane.showInputDialog(null, prova[0] + "\n" + prova[1] +" "+ prova[2] +" "+ prova[3] +" "+ prova[4]);
}
while (!resp.equalsIgnoreCase("a") &&
!resp.equalsIgnoreCase("b") &&
!resp.equalsIgnoreCase("c") &&
!resp.equalsIgnoreCase("d"));
if(resp.equalsIgnoreCase(gabarito))
{
acerto+=2;
}
else{
acerto--;
}
}
if (acerto <= 0){
acerto = 0;
}
JOptionPane.showMessageDialog(null, "Sua nota foi " + acerto );
pontuacao += acerto;
if(i==0){
maior = acerto;
menor = acerto;
}
if (JOptionPane.showConfirmDialog(null, "Novo aluno?", "Confirmação", JOptionPane.YES_NO_OPTION) == 1)
{
break;
}
for(j = 0; j < total.length; j++){
if(media > total[j]){
alunosM++;
}
if(total[j] > maior){
maior = total[j];
}
if(total[j] < menor){
menor = total[j];
}
}
}
media = pontuacao / alunos;
JOptionPane.showMessageDialog(null, "A quantidade de alunos e " + alunos +
"\nMedia da turma " + media +
"\nNumeros de alunos acima da media " + alunosM +
"\nMaior nota obtida " + maior +
"\nMenor nota obtida " + menor );
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.