Vector-Column Program

Asked

Viewed 16 times

-1

I am trying to make this program read the first 4 columns and calculate the final note and the average, but I cannot put the correct solution in the arithmetic mean.

#include <stdio.h>
#include <iostream>

int main(){
    int i,j, M[5][5], maior;
    float mediafinais=0;
    for(i=0;i<2;i++){
        printf("\n\nNumero da Matricula [%d] : ",i      );
        scanf("%d", &M[i][0]);
        
        printf("Nota Av1: ");
        scanf("%d", &M[i][1]);
        
        printf("Nota Av2: ");
        scanf("%d", &M[i][2]);
                          
        printf("Media dos trabalhos : ");
        scanf("%d", &M[i][3]);                    
        
        printf("Nota Final: %d", M[i][1] + M[i][2] + M[i][3]);        
    }
    
    maior=M[0][3];
    int al=0;
    for(i=0;i<2;i++){       
        if(maior<M[i][3]){
            maior=M[i][3];
            al=i;
        }    
    }
    
    printf("\n A Maior Nota Final e do aluno com a matricula :");
    printf(" %d \n\n",M[al][0]);
    printf("\n\nMedia aritmetica das notas finais: %.2f ", mediafinais);
}
  • ta have any compilation error? execution? what’s your problem??

1 answer

0

Hello, I believe the question was very generic , I believe you wanted to put the notes in columns , for this I saw no use in J . Here’s my view of your code :

#include <stdio.h> 

int main(){ 
    // Ja que é uma matriz de notas , é melhor criar a matriz como float
    // 2 Linhas para 2 Alunos e 5 Colunas para 5 coisas ( Matricula + av1 + av2 + trabalho + Nota Final)
    int i,qntd = 0; float mediafinais = 0, notasFinais = 0, M[2][5]; 

    for(i = 0; i < 2; i++)
    {
        printf("\n\nNumero da Matricula [%d] : ",i);
        scanf("%f", &M[i][0]);
     
        printf("Nota Av1: ");
        scanf("%f", &M[i][1]);
        
        printf("Nota Av2: ");
        scanf("%f", &M[i][2]);
                          
        printf("Media dos trabalhos : ");
        scanf("%f", &M[i][3]);  
        
        // Coluna 4 Responsável por salvar as Notas Finais
         M[i][4]= M[i][1] + M[i][2] + M[i][3];

        // Média aritmetica no final
        notasFinais += M[i][1] + M[i][2] + M[i][3];
        qntd+=1;

        printf("Nota Final: %.2f" , M[i][4]);  
    }

    int al = 0, maior = 0, aux = 0;
    for(i = 0; i < 2; i++){
        // Estabeleço uma base para comparar os valores
        if (aux==0){
            maior = M[i][4];aux++;
        }
        else if(M[i][4] > maior){
            maior=M[i][4];
            al=i;
        }
    }

    printf("\n A Maior Nota Final e do aluno com a matricula :");
    printf(" %.0f \n\n", M[al][0]);
    // Coloquei a variavel qtd , pois você não sabe se sempre serão 2 alunos
    // Eu mantive 2 no for, pois é seu código .
    printf("\n\nMedia aritmetica das notas finais: %.2f", notasFinais/qntd);
    printf("\n\n\n");
    return 0;
}
  • Our brother Obrgd msm cara ksks to awake until agr encabulado with that, vlw msm

Browser other questions tagged

You are not signed in. Login or sign up in order to post.