Jump to content

Recommended Posts

Posted

Olá, criei um programa que lê o n° do aluno,3 notas dele e faz a média, diz se foi aprovado, reprovado ou está de final. Porém não consigo estruturar 3 tópicos, preciso mostrar os números de alunos que foram aprovados, em exame e reprovados; O código do aluno que tirou a menor nota; O código do aluno que tirou a maior nota. Segue o meu código:

#include <stdio.h>
main ()
{
float n1, n2, n3;
int p1, p2, p3,N_Aluno=1,i, maior;
  while (N_Aluno>0) {
printf("Qual o número do aluno? ");
scanf("%i", &N_Aluno);
printf("Digite a primeira nota: ");
scanf("%f", &n1);
printf("Digite a segunda nota: ");
scanf("%f", &n2);
printf("Digite a terceira nota: ");
scanf("%f", &n3);
float  media = (n1+n2+n3)/2;
printf("\n A media do aluno é: %.2f",media);
   if(media >= 7) printf("\n APROVADO \n"); else { if(media >= 0 && media <= 3) printf("\n REPROVADO \n"); else if(media > 3 && media < 7) printf("\n EXAME FINAL\n");  
}}
  }

Posted

Eu acho que eu entendi, mas seria legal vc colocar o enunciado da questão também porque fica mais claro de entender... enfim, em relação a primeira dúvida, você pode usar um contador pra saber quantas pessoas foram aprovadas, estão de exame e reprovadas... toda vez que a média for calculada adiciona +1 no contador da condição. Sobre o maior e menor, eu geralmente uso uma lógica de criar duas variáveis "maior" e "menor" do tipo int e comparar as notas colocando as saídas em "maior" e "menor". Se quiser, pode chamar lá no discord tbm que a gente discuti a solução juntos, meu nick lá é meritissimo1 :D

  • Curtir 1
Posted

Você pode ter mais 3 variaveis, por ex 

int aprovado = 0;
int reprovado = 0;
int final = 0;

Além das variaveis que vc já vem (acrescente essas) e pra cada N_Alunos você calcula as médias (como já está fazendo) e no final printa tudo (depois do while)

Ai fica assim depois do while:
 

    printf("Alunos aprovados %d", aprovado);
    printf("Alunos reprovados %d", reprovado);
    printf("Alunos na final  %d", final); 

Se preferir, pode trocar o while por for e verificar as medias são >= etc o valor esperado, e incrementa o aprovado dentro do if (que eu comentei) e faz isso pra cada uma das variáveis, deu pra entender?
Ficaria tipo isso (lembrando que isso está dentro de uma estrutura de repetição)

 

    if(media >= 6) {
        printf("Aluno aprovado - media %.2f", media);
        aprovado++;
    }

 

Espero ter ajudado. Boa sorte.

  • Curtir 2

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...