Introdução
Neste laboratório, você aprenderá a calcular a média de um conjunto de dados em programação C. O laboratório cobre os seguintes passos:
- Ler um array de números a partir da entrada do utilizador.
- Calcular a soma dos números e, em seguida, calcular a média dividindo a soma pelo número de números.
- Imprimir a média calculada.
O laboratório fornece um guia passo a passo, incluindo código de exemplo, para ajudá-lo a compreender o processo de cálculo da média em C. No final deste laboratório, você terá as competências para analisar e resumir dados numéricos usando programação C.
Ler um Array de Números
Neste passo, aprenderá a ler um array de números em programação C. Criaremos um programa simples que permite aos utilizadores introduzir um conjunto de números e armazená-los num array.
Primeiro, crie um novo ficheiro C no diretório ~/project:
cd ~/project
nano mean_calculation.c
Agora, introduza o seguinte código:
#include <stdio.h>
#define MAX_SIZE 100
int main() {
int numbers[MAX_SIZE];
int count;
// Solicita ao utilizador o número de elementos
printf("Introduza o número de elementos (máx. %d): ", MAX_SIZE);
scanf("%d", &count);
// Validação de entrada
if (count <= 0 || count > MAX_SIZE) {
printf("Número de elementos inválido!\n");
return 1;
}
// Lê os números para o array
printf("Introduza %d números:\n", count);
for (int i = 0; i < count; i++) {
printf("Introduza o número %d: ", i + 1);
scanf("%d", &numbers[i]);
}
// Imprime os números introduzidos
printf("\nOs números introduzidos são:\n");
for (int i = 0; i < count; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
return 0;
}
Compile o programa:
gcc mean_calculation.c -o mean_calculation
Execute o programa:
./mean_calculation
Exemplo de saída:
Introduza o número de elementos (máx. 100): 5
Introduza 5 números:
Introduza o número 1: 10
Introduza o número 2: 20
Introduza o número 3: 30
Introduza o número 4: 40
Introduza o número 5: 50
Os números introduzidos são:
10 20 30 40 50
Vamos analisar as partes principais do código:
#define MAX_SIZE 100define um limite máximo para o tamanho do arrayscanf()é usado para ler o número de elementos e os números individuais- Validamos a entrada para garantir que está dentro do intervalo permitido
- Um ciclo
foré usado para introduzir e depois exibir os números
Este programa demonstra como:
- Declarar um array com um tamanho máximo
- Obter o número de elementos do utilizador
- Introduzir números no array
- Validar a entrada do utilizador
- Exibir os números introduzidos
Calcular Soma e Média = Soma/Contagem
Neste passo, estenderemos o programa anterior para calcular a soma e a média dos números introduzidos pelo utilizador.
Abra o ficheiro existente:
cd ~/project
nano mean_calculation.c
Modifique o código para incluir o cálculo da soma e da média:
#include <stdio.h>
#define MAX_SIZE 100
int main() {
int numbers[MAX_SIZE];
int count;
int sum = 0;
float mean;
// Solicita ao utilizador o número de elementos
printf("Introduza o número de elementos (máx. %d): ", MAX_SIZE);
scanf("%d", &count);
// Validação de entrada
if (count <= 0 || count > MAX_SIZE) {
printf("Número de elementos inválido!\n");
return 1;
}
// Lê os números para o array e calcula a soma
printf("Introduza %d números:\n", count);
for (int i = 0; i < count; i++) {
printf("Introduza o número %d: ", i + 1);
scanf("%d", &numbers[i]);
sum += numbers[i];
}
// Calcula a média
mean = (float)sum / count;
// Imprime os resultados
printf("\nOs números introduzidos são:\n");
for (int i = 0; i < count; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
printf("Soma dos números: %d\n", sum);
printf("Média dos números: %.2f\n", mean);
return 0;
}
Compile o programa:
gcc mean_calculation.c -o mean_calculation
Execute o programa:
./mean_calculation
Exemplo de saída:
Introduza o número de elementos (máx. 100): 5
Introduza 5 números:
Introduza o número 1: 10
Introduza o número 2: 20
Introduza o número 3: 30
Introduza o número 4: 40
Introduza o número 5: 50
Os números introduzidos são:
10 20 30 40 50
Soma dos números: 150
Média dos números: 30.00
Alterações chave nesta versão:
- Variável
sumadicionada para acompanhar o total de todos os números - Cálculo da soma integrado no ciclo de entrada
- Média calculada dividindo a soma pela contagem
- Utilização de conversão de tipo
(float)para garantir divisão em ponto flutuante - Saída adicionada para a soma e a média com impressão formatada
O programa agora demonstra:
- Calcular a soma dos elementos do array
- Calcular a média aritmética
- Exibir os resultados com precisão
Imprimir a Média
Neste passo final, refatoraremos o código para criar uma função para calcular e imprimir a média, tornando o nosso programa mais modular e legível.
Abra o ficheiro existente:
cd ~/project
nano mean_calculation.c
Atualize o código com uma função dedicada para o cálculo da média:
#include <stdio.h>
#define MAX_SIZE 100
// Função para calcular e imprimir a média
void calculateMean(int numbers[], int count) {
if (count <= 0) {
printf("Erro: Não há números para calcular a média.\n");
return;
}
int sum = 0;
float mean;
// Calcula a soma
for (int i = 0; i < count; i++) {
sum += numbers[i];
}
// Calcula a média
mean = (float)sum / count;
// Imprime estatísticas detalhadas
printf("\nEstatísticas:\n");
printf("Número de elementos: %d\n", count);
printf("Soma dos números: %d\n", sum);
printf("Média dos números: %.2f\n", mean);
}
int main() {
int numbers[MAX_SIZE];
int count;
// Solicita ao utilizador o número de elementos
printf("Introduza o número de elementos (máx. %d): ", MAX_SIZE);
scanf("%d", &count);
// Validação de entrada
if (count <= 0 || count > MAX_SIZE) {
printf("Número de elementos inválido!\n");
return 1;
}
// Lê os números para o array
printf("Introduza %d números:\n", count);
for (int i = 0; i < count; i++) {
printf("Introduza o número %d: ", i + 1);
scanf("%d", &numbers[i]);
}
// Imprime os números introduzidos
printf("\nNúmeros introduzidos:\n");
for (int i = 0; i < count; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
// Calcula e imprime a média
calculateMean(numbers, count);
return 0;
}
Compile o programa:
gcc mean_calculation.c -o mean_calculation
Execute o programa:
./mean_calculation
Exemplo de saída:
Introduza o número de elementos (máx. 100): 4
Introduza 4 números:
Introduza o número 1: 10
Introduza o número 2: 20
Introduza o número 3: 30
Introduza o número 4: 40
Números introduzidos:
10 20 30 40
Estatísticas:
Número de elementos: 4
Soma dos números: 100
Média dos números: 25.00
Melhorias chave nesta versão:
- Criada uma função separada
calculateMean() - Adicionada saída estatística mais detalhada
- Melhorada a gestão de erros para casos limite
- Mantida a mesma funcionalidade principal das etapas anteriores
- Código mais modular e fácil de ler
O programa demonstra:
- Abordagem baseada em funções para cálculos
- Saída estatística abrangente
- Design de código modular
Resumo
Neste laboratório, aprenderá a ler um array de números em programação C, calcular a soma e a média do conjunto de dados e, em seguida, imprimir a média. Primeiro, solicitará ao utilizador que introduza um conjunto de números e os armazenará num array. Em seguida, calculará a soma dos números e dividirá por a contagem para encontrar a média. Finalmente, imprimirá a média calculada.
Os passos principais abordados neste laboratório incluem a declaração de um array com um tamanho máximo, a obtenção do número de elementos do utilizador, a introdução de números no array, a validação da entrada do utilizador e a exibição dos números introduzidos. No final do laboratório, terá uma compreensão clara de como calcular a média de um conjunto de dados em programação C.



