Exercícios Resolvidos de Funções que recebem arrays

Ver Teoria

Enunciado

Utilizando sobrecarga de funções, desenvolva duas funções chamadas m e d i a . Uma deve receber um vetor de inteiros com tamanho 5 e a outra uma matriz 5 × 5 de inteiros, e ambas devem retornar a média dos valores armazenados nessas matrizes.

Passo 1

Eai, tudo beleza?

Nessa questão, nós vamos utilizar a sobrecarga de funções para criarmos duas funções distintas com o mesmo nome. O programa, para saber qual das duas funções vai ele vai utilizar ao chamarmos uma delas, vai verificar o tipo de parâmetro passado. Nesse caso, a diferença vai estar no fato de uma delas receber um vetor, enquanto a outra recebe uma matriz.

Vamos declarar a primeira função. Como ela deve retornar uma média, e esse valor pode não ser um número inteiro, vamos declarar essa função de forma que ela retorne um float.

Passo 2

Dentro dessa função, vamos declarar uma variável para acumular a média dos valores do vetor passado para essa função.

Em seguida, vamos fazer uma laço de f o r para passarmos por cada termo desse vetor e vamos somar à variável m cada elemento do vetor dividido por 5 , de forma que, ao final do loop, a média dos elementos do vetor estará armazenada na variável m .

Perceba que, fizemos um c a s t para f l o a t no elemento do vetor, pois ele é do tipo i n t e queremos passar o seu valor para uma variável f l o a t .

Passo 3

Na segunda função, vamos fazer o mesmo processo de declará-la com um retorno do tipo f l o a t e, dentro da função, vamos declarar uma variável local m do tipo f l o a t .

Em seguida, vamos iniciar dois laços de f o r para passarmos por todos os termos dessa matriz. Dentro desses laços, vamos fazer a variável m acumular a média dos valores armazenados nessa matriz.

Por fim, basta retornarmos o valor armazenado em m .

Resposta