Jump to content
Fórum Script Brasil
  • 0

Duvida de um exercicio com matrizes


Question

Bom dia.

No ambito de uma pos graduacao, tenho um exercicio para resolver com matrizes que consiste em registar os tempos de 3 atletas em 5 sessoes de treino, e calcular a media de tempo de cada sessao e o tempo maximo de cada atleta ao longo das 5 sessoes. 

Construir esta estrutura, mas não me esta a devolver a media de cada sessao calculada de forma correta. Alem disso, não sei como calcular o valor maximo:

 

int main ( )
{

float tempo[5][3], soma=0, media = 0, max = 0, v;
int i, j;

    for (i = 0; i < 5; i++)
        {
        for (j = 0; j < 3; j++)
        {
            printf("[treino %d][atleta %d] : ", i+1, j+1);
            scanf("%f", &tempo[i][j]);
            soma = soma + tempo[i][j];
        }
        media = soma/j;
        }
    for (j=0; j<5; j++){
        printf("As medias do treino %d :  %.2f\n",j, media);
    }

return (media);
 

 

Podem me por favor ajudar a corrigir e compreender onde esta o erro.

 

Link to post
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Primeiramente, ao postar um código no fórum, utilizem a ferramenta de inserção de código (quarto ícone do menu).
A quantidade de sessões e atletas devem ser declaradas como constantes para fácil alteração posteriormente. 
A fim de te fornecer um modelo de código para resolução dos seus problemas, elaborei a solução deste exercício devidamente comentada. Se tiver alguma dúvida, sinta-se a vontade para perguntar.

//Programa: Time Run
//Função: Analisar tempos de atletas em treinos
//Autor: Hazzu#0707
//Data: 28/01/2021

//Cabeçalhos
#include <stdio.h>

//Constantes
#define ATL 3	//Quantidade de atletas
#define SES 5	//Quantidade de sessões

//Função principal
int main(){
    //Declaração de variáveis
	float tempos[SES][ATL];		//Matriz de tempos Sessão X Atleta
	float soma, maximo;
	int i, j;
	
	//Apresentação
	printf("------ Time Run ------\n");
	printf("Olá, este programa irá analisar os tempos dos treinos.\n");

	//Coleta de dados
	for (i=0; i<SES; i++){
		for (j=0; j<ATL; j++){
			printf("[treino %d][atleta %d]: ", i+1, j+1);
			scanf("%f", &tempos[i][j]);
		}
	}
	
	//Cálculo de tempos máximos dos atletas
	printf("\nTempos Máximos\n");
	for (j=0; j<ATL; j++){
		maximo = tempos[0][j];	//Chutando tempo máximo como sendo o primeiro
		for (i=1; i<SES; i++){
			if (tempos[i][j] > maximo){
				maximo = tempos[i][j];
			}
		}
		printf("Atleta %d: %.3f s\n", j+1, maximo);
	}
	
	//Cálculo de tempos médios das sessões
	printf("\nTempos Médios\n");
	for (i=0; i<SES; i++){
		soma = 0;
		for (j=0; j<ATL; j++){
			soma += tempos[i][j];
		}
		printf("Treino %d: %.3f s\n", i+1, soma/ATL);
	}
	
    //Encerrando programa
	printf("Obrigado por utilizar o programa!\n");
    return 0;
}

Note que realizei a impressão dos resultados simultaneamente com o cálculo, evitando assim a necessidade de armazenar esses valores em vetores.

Edited by Hazzu
Link to post
Share on other sites
  • -1

.


    

Mano, você esqueceu de colocar a biblioteca #include <stdio.h> , ce abriu { e não fechou

eu arrumei e ficou desse jeito, funcionou aqui, vê se é o que você quer.

 

#include <stdio.h>

int main ( ){

    float tempo[5][3], soma=0, media = 0, max = 0, v;
    int i, j;

    for (i = 0; i < 5; i++)
        {
        for (j = 0; j < 3; j++)
        {
            printf("[treino %d][atleta %d] : ", i+1, j+1);
            scanf("%f", &tempo[i][j]);
            soma = soma + tempo[i][j];
        }
        media = soma/j;
        }
    for (j=0; j<5; j++){
        printf("As medias do treino %d :  %.2f\n",j, media);
        
    }
    
    return (media);
}

Edited by Pediinn
Link to post
Share on other sites

Join the conversation

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

Guest
Answer this question...

×   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.



  • Forum Statistics

    • Total Topics
      148933
    • Total Posts
      644970
×
×
  • Create New...