Ir para conteúdo
Fórum Script Brasil
  • 0

programação com matriz java


Andrei soares

Pergunta

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

  • 0
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

i aew Andrei soares tente seguir esses passos:

coloque no loop uma verificação para saber se seus atributos maior e menor estão nulos

se estiver nulo

sete os atributos maior e menor com a media(se eles estão nulos logo conclui-se que é a média do primeiro aluno)

se não estiver nulo

façã uma verificação para saber se a média desse aluno é maior que o atributo maior se sim

atribua o valor maior com a media desse aluno... repita o mesmo processo para o atributo menor.

espero que ajude abraço.

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...