2
respostas

Estou iniciando em Linguagem C e queria dicas como jeitos mais rapidos para resolver o exercio abaixo:

Escreva um programa que leia 3 notas de um aluno e a média das notas dos exercícios realizados por ele.A partir da média, informar o conceito de acordo com a tabela: maior ou igual a 9 A maior ou igual a 7.5 e menor que 9 B maior ou igual a 6 e menor que 7.5 C maior ou igual a 4 e menor que 6 D menor que 4 E

Minha resolução:

#include <stdio.h>

int main(){




    double primeiranota = 3;
    double segundanota = 3.5;
    double terceiranota = 3.8;

    printf("Sua Primeira nota é %.1f\n", primeiranota);
    printf("\n\n");
    printf("Sua Segunda nota é %.1f\n", segundanota);
    printf("\n\n");
    printf("Sua Terceira nota é %.1f\n", terceiranota);
    printf("\n\n");


    double notafinal = (primeiranota + segundanota + terceiranota)/3.0;

    printf("Sua nota final é %.1f\n", notafinal);
    printf("\n\n");



    if(notafinal >= 9){
        printf("Parabens você é um Aluno nota A\n");

    }

    if(notafinal >= 7.5){
        printf("Você pode melhorar é um Aluno nota B\n");
    }

    if(notafinal >= 6){
        printf("Você é um Aluno nota C\n");
    }

    if(notafinal >= 4){
        printf("Você é um Aluno nota D\n");
    }
    if(notafinal <4){
        printf("Você é um Aluno nota E\n");
    }


}
2 respostas

Olá Bernardo.

Pensei em duas modificações no seu código.

  • Primeiro, a descrição fala em leitura das notas, então inclui o scanf que fará a leitura dos dados, como podemos ver na documentação.

      // ENTRADA DAS NOTAS
      printf("\nSua Primeira nota é: ");
      scanf("%lf", &primeiranota);
    
      printf("Sua Segunda nota é: ");
      scanf("%lf", &segundanota);
    
      printf("Sua Terceira nota é: ");
      scanf("%lf", &terceiranota);
    
      printf("\n\n");
  • Segunda, do jeito que os seus condicionais if foram construídos, se o aluno tiver media 10 por exemplo, o programa vai imprimir todos os conceitos (A, B, C, D), isso porque 10 vai ser maior que (9, 7.5, 6, 4), desse jeito vai entrar em todos os if. Para resolver isso basta incluir o else, assim caso ele entre no primeiro if ele nem vai verificar os outros condicionais e já vai encerrar o programa.

    //DEFINICAO DO CONCEITO
      if(notafinal >= 9){
          printf("Parabens você é um Aluno nota A\n");
    
      }
      else if(notafinal >= 7.5){
          printf("Você pode melhorar é um Aluno nota B\n");
      }
      else if(notafinal >= 6){
          printf("Você é um Aluno nota C\n");
      }
      else if(notafinal >= 4){
          printf("Você é um Aluno nota D\n");
      }
      else{
          printf("Você é um Aluno nota E\n");
      }

    Veja que o ultimo if, o if(notafinal <4) foi eliminado, porque se o numero não é maior ou igual a 4 ele logicamente é menor com que 4, então podemos deixar somente o else nesse caso.

O código completo vai ficar assim:

#include <stdio.h>

int main(){

    double primeiranota;
    double segundanota;
    double terceiranota;

    // ENTRADA DAS NOTAS
    printf("\nSua Primeira nota é: ");
    scanf("%lf", &primeiranota);

    printf("Sua Segunda nota é: ");
    scanf("%lf", &segundanota);

    printf("Sua Terceira nota é: ");
    scanf("%lf", &terceiranota);

    printf("\n\n");

    //CALCULO MEDIA
    double notafinal = (primeiranota + segundanota + terceiranota)/3.0;
    printf("Sua nota final é %.1f\n", notafinal);
    printf("\n\n");

    //DEFINICAO DO CONCEITO
    if(notafinal >= 9){
        printf("Parabens você é um Aluno nota A\n");

    }
    else if(notafinal >= 7.5){
        printf("Você pode melhorar é um Aluno nota B\n");
    }
    else if(notafinal >= 6){
        printf("Você é um Aluno nota C\n");
    }
    else if(notafinal >= 4){
        printf("Você é um Aluno nota D\n");
    }
    else{
        printf("Você é um Aluno nota E\n");
    }
    return 0;
}

Espero ter ajudado, mas qualquer duvida não hesite em perguntar.

Bons Estudos.

Igor, muito obrigado pela ajuda!!

Estarei testando essas funções que você me passou com outros exercícios.

Muito boa sua descrição e exemplos.

Ótimo dia!!