Neste passo final, você aprimorará o programa de cálculo da mediana para fornecer uma saída mais detalhada e demonstrar diferentes maneiras de apresentar a mediana.
Abra o arquivo existente para fazer as modificações finais:
cd ~/project
nano median_calculator.c
Atualize o código com formatação de saída aprimorada:
#include <stdio.h>
#include <stdlib.h>
#define MAX_SIZE 100
// Funções anteriores (readArray, sortArray, printArray, calculateMedian) permanecem as mesmas
void printDetailedMedianInfo(int arr[], int n, float median) {
printf("\n--- Detalhes do Cálculo da Mediana ---\n");
printf("Número total de elementos: %d\n", n);
printf("Elementos do array: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n\nCálculo da Mediana:\n");
if (n % 2 != 0) {
printf("Número ímpar de elementos\n");
printf("Índice do elemento do meio: %d\n", n / 2);
printf("Elemento do meio: %d\n", arr[n / 2]);
} else {
printf("Número par de elementos\n");
printf("Dois índices dos elementos do meio: %d e %d\n", (n / 2) - 1, n / 2);
printf("Elementos do meio: %d e %d\n", arr[(n / 2) - 1], arr[n / 2]);
}
printf("\nMediana Final: %.2f\n", median);
}
int main() {
int arr[MAX_SIZE];
int n;
readArray(arr, &n);
sortArray(arr, n);
float median = calculateMedian(arr, n);
// Imprimir o array ordenado
printArray(arr, n);
// Imprimir informações detalhadas sobre a mediana
printDetailedMedianInfo(arr, n, median);
return 0;
}
Compile e execute o programa atualizado:
gcc median_calculator.c -o median_calculator
./median_calculator
Exemplo de saída para um número ímpar de elementos:
Digite o número de elementos (máximo 100): 5
Digite 5 elementos:
42
15
7
23
11
Array ordenado: 7 11 15 23 42
--- Detalhes do Cálculo da Mediana ---
Número total de elementos: 5
Elementos do array: 7 11 15 23 42
Cálculo da Mediana:
Número ímpar de elementos
Índice do elemento do meio: 2
Elemento do meio: 15
Mediana Final: 15.00
Exemplo de saída para um número par de elementos:
Digite o número de elementos (máximo 100): 6
Digite 6 elementos:
42
15
7
23
11
8
Array ordenado: 7 8 11 15 23 42
--- Detalhes do Cálculo da Mediana ---
Número total de elementos: 6
Elementos do array: 7 8 11 15 23 42
Cálculo da Mediana:
Número par de elementos
Dois índices dos elementos do meio: 2 e 3
Elementos do meio: 11 e 15
Mediana Final: 13.00
Melhorias-chave neste passo:
- Adicionada uma nova função
printDetailedMedianInfo().
- Fornece informações abrangentes sobre o cálculo da mediana.
- Mostra diferentes cenários para um número ímpar e par de elementos.
- Melhora a compreensão do usuário sobre o cálculo da mediana.