Ir ao conteúdo

Posts recomendados

Postado

estou com dificuldades em montar um programa que leia uma matriz de 5 linhas e 4 colunas contendo as seguintes informações sobre alunos de uma disciplina, sendo todas as informações do tipo inteiro:

primeira coluna: numero de matricula

segunda coluna:media das provas

terceira coluna:media dos trabalhos

quarta coluna:nota final

 

elabore um programa que:

leia as 3 primeiras informações de cada aluno

calcule a nota final como sendo a soma da media das provas e da media dos trabalhos

exiba a matricula do aluno que obteve a maior nota final(assuma que só existe uma nota maior)

exiba a media aritmética das notas finais.

 

 

sou novato em programação e estou com dificuldades, aguem pode me ajudar e me explicar como faço esse programa?

  • Curtir 1
Postado

@leandro silva de carvalho     para pegar os dados  você usa o comando scanf , e guarda na matriz onde as linhas fica dentro do primeiro colchete   [  ]   e as colunas no segundo colchete   [   ] ,    e como essa matriz terá cinco linhas então só poderá  ter cinco alunos, hum em cada linha e os dados referentes a ele nas 4 colunas, e as linhas e as colunas começam de zero ,   então precisa colocar dois laços de repetição , sendo um dentro do outro , e essa matriz seria assim  :

matriz_b.thumb.jpg.a4ba6fce24e3e567d747133c949f3def.jpg

 

então você coloca um aluno em cada linha e os dados dele em cada coluna,  assim no primeiro quadrado da coluna você coloca o número da matrícula, no segundo coloque a média das prova ,  no terceiro coloque a média dos trabalhos e no quarto coloque a nota final,  e sabendo onde está cada dado você calcula o resultado e imprime na tela usando o comando printf

  • Curtir 2
  • 11 meses depois...
Postado

Não estou conseguindo imprimir o exercicio C

 

 

#include <stdio.h>
#include <stdlib.h>
/*37) Faca um programa que leia uma matriz, de 5 linhas e 4 colunas, contem as seguintes  ́
informações sobre alunos de uma disciplina, sendo todas as informações do tipo inteiro:  ̃
 Primeira coluna: numero de matrıcula (use um inteiro)
 Segunda coluna: media das provas
 Terceira coluna: media dos trabalhos
 Quarta coluna: nota final.
Elabore um programa que:
(a) Leia as três primeiras informações de cada aluno  ̃
(b) Calcule a nota final como sendo a soma da media das provas e da média dos trabalhos
(c) Imprima a matrícula do aluno que obteve a maior nota final (assuma que só existe uma
maior nota)
(d) Imprima a media aritmética das notas finais. */
int main(){
    int i,j, M[2][4], maior;
    float mediafinais=0;
    for(i=0;i<2;i++){
        for(j=0;j<4;j++){
            printf("Numero da Matricula: [%d][%d]\n",i,j);
            scanf("%d", &M[0]);
            printf("Media das provas: \n");
            scanf("%d", &M[1]);
            printf("Media dos trabalhos: \n");
            scanf("%d", &M[2]);
        }
    }
    for(i=0;i<2;i++){
        for(j=0;j<4;j++){
            M[3] = M[1] + M[2] / 2;
            mediafinais = M[3] + M[3] / 5;
        }
    }
    maior=M[0][3];
    for(i=0;i<=2;i++){
        for(j=0;j<=4;j++){
            if(maior<M[j]){
                    maior=M[0];
            }
        }
    }
    printf("\nMaior Nota Final e do aluno com a matricula: %d\n", maior);
    printf("\n\nMedia aritmetica das notas finais: %.2f ", mediafinais);
    system("pause");
}

  • Curtir 1
Postado

@guibanks2     seu código está bom ,  e no enunciado não está pedindo para calcular a media aritmética não ,  apenas a matricula do aluno com a maior nota final ,   então seu código poderia ser assim  :

#include <stdio.h>
#include <windows.h>
/*             0     1    2     3   4      5      6      7         8  */
typedef enum{black,blue,green,cyan,red,magenta,brown,lightgray,darkgray,   /* nome das cores */
lightblue,lightgreen,lightcyan,lightred,lightmagenta,yellow,white} colors;
/*  9         10         11        12        13         14    15 */

static int __BACKGROUND = 1/*BLACK*/;/*pode ser o numero ou o nome da cor*/
static int __FOREGROUND = lightgray;

void textcolor2 (int letras, int fundo){/*para mudar a cor de fundo mude o background*/
    __FOREGROUND = letras;
    __BACKGROUND = fundo;
    SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),
    letras + (__BACKGROUND << 4));
}
int main(){
    int i,j, M[2][4], maior;
    float mediafinais=0;
    for(i=0;i<2;i++){                              /* aqui serão dois alunas */
        /*for(j=0;j<4;j++){ esse loop não precisa */
        textcolor2(14,0);
        printf("Numero da Matricula [%d] : ",i      /*,j*/);
        textcolor2(11,0);
        scanf("%d", &M[i][0]);                     /* matricula */
        textcolor2(14,0);
        printf("Media das provas ------ : ");
        textcolor2(11,0);
        scanf("%d", &M[i][1]);                     /* primeira media */
        textcolor2(14,0);
        printf("Media dos trabalhos --- : ");
        textcolor2(11,0);
        scanf("%d", &M[i][2]);                     /* segunda media */
        M[i][3] = (M[i][1] + M[i][2]) / 2;         /* nota final */
        /*}*/
    }
    /*for(i=0;i<2;i++){
        for(j=0;j<4;j++){
            M[i][3] = (M[i][1] + M[i][2]) / 2;
            mediafinais = M[i][3] + M[3] / 5;
        }
    }*/
    maior=M[0][3];
    int al=0;
    for(i=0;i<2;i++){
        /*for(j=0;j<=4;j++){*/
            if(maior<M[i][3]){
                maior=M[i][3];
                al=i;
            }
        /*}*/
    }
    textcolor2(12,14);
    printf("\n A Maior Nota Final eh do aluno com a matricula :");
    textcolor2(15,9);
    printf(" %d \n\n",M[al][0]);
    /*printf("\n\nMedia aritmetica das notas finais: %.2f ", mediafinais); essa não foi pedida no enunciado */
    textcolor2(10,12);
    system("pause");
    textcolor2(15,0);
    printf("\n\n\n");
}

 

Postado

@vangodp  pode me ajudar? tentei fazer e todo jeito e n acho o erro.

A organização de um evento esportivo deseja um programa que faça a leitura do nome e a pontuação de cada um dos 10 participantes e exiba o nome do vencedor. Elabore este programa.

 

< #include <stdio.h>


int main() {
    int cont, x=0;
    float pont1, pontM, pontMaior;
    char nome1[10], nomeM[10], campeao[10];

            printf("Insira o nome do atleta: .\n");
            scanf("%s", &nome1);
            printf("Insira a pontuacao do atleta: \n");
            scanf("%.2f", &pont1);

   for(cont=1;cont<=10;cont++){
            printf("Insira o nome do atleta: .\n");
            scanf("%s", nomeM);
            printf("Insira a pontuacao do atleta: \n");
            scanf("%.2f", pontM);
   }
             if(pontM>pont1){
                   campeao==nomeM;
                   pontMaior==pontM;
                }
                else{
                    campeao==nome1;
                    pontMaior==pont1;
                }
                x= x + 1;

                printf("/nO seu campeao e: %s, com a pontuacao de: %.2f. Parabens!!", campeao, pontMaior);

    return 0;

adicionado 1 minuto depois

@devair1010 pode me ajudar a achar o erro?

A organização de um evento esportivo deseja um programa que faça a leitura do nome e a pontuação de cada um dos 10 participantes e exiba o nome do vencedor. Elabore este programa.

 

< #include <stdio.h>


int main() {
    int cont, x=0;
    float pont1, pontM, pontMaior;
    char nome1[10], nomeM[10], campeao[10];

            printf("Insira o nome do atleta: .\n");
            scanf("%s", &nome1);
            printf("Insira a pontuacao do atleta: \n");
            scanf("%.2f", &pont1);

   for(cont=1;cont<=10;cont++){
            printf("Insira o nome do atleta: .\n");
            scanf("%s", nomeM);
            printf("Insira a pontuacao do atleta: \n");
            scanf("%.2f", pontM);
   }
             if(pontM>pont1){
                   campeao==nomeM;
                   pontMaior==pontM;
                }
                else{
                    campeao==nome1;
                    pontMaior==pont1;
                }
                x= x + 1;

                printf("/nO seu campeao e: %s, com a pontuacao de: %.2f. Parabens!!", campeao, pontMaior);

    return 0;

  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!