Tomar la Raíz Cuadrada para Obtener la Desviación Estándar e Imprimir
En este último paso, completarás el cálculo de la desviación estándar tomando la raíz cuadrada de la varianza. La desviación estándar es una medida clave de la dispersión de los datos en el análisis estadístico.
Abre el archivo anterior para modificarlo:
cd ~/project
nano mean_calculation.c
Actualiza el programa con el cálculo de la desviación estándar:
#include <stdio.h>
#include <math.h>
#define MAX_SIZE 100
float calculateMean(int arr[], int size) {
float sum = 0;
for (int i = 0; i < size; i++) {
sum += arr[i];
}
return sum / size;
}
float calculateVariance(int arr[], int size, float mean) {
float sumSquaredDeviations = 0;
for (int i = 0; i < size; i++) {
float deviation = arr[i] - mean;
sumSquaredDeviations += deviation * deviation;
}
return sumSquaredDeviations / size;
}
float calculateStandardDeviation(float variance) {
return sqrt(variance);
}
int main() {
int dataset[MAX_SIZE];
int size;
printf("Enter the number of elements (max %d): ", MAX_SIZE);
scanf("%d", &size);
printf("Enter %d integers:\n", size);
for (int i = 0; i < size; i++) {
scanf("%d", &dataset[i]);
}
float mean = calculateMean(dataset, size);
float variance = calculateVariance(dataset, size, mean);
float standardDeviation = calculateStandardDeviation(variance);
printf("Dataset Statistics:\n");
printf("Mean: %.2f\n", mean);
printf("Variance: %.2f\n", variance);
printf("Standard Deviation: %.2f\n", standardDeviation);
return 0;
}
Compila el programa actualizado:
gcc mean_calculation.c -o mean_calculation -lm
Ejecuta el programa e ingresa datos de muestra:
./mean_calculation
Ejemplo de salida:
Enter the number of elements (max 100): 5
Enter 5 integers:
10
20
30
40
50
Dataset Statistics:
Mean: 30.00
Variance: 200.00
Standard Deviation: 14.14
Puntos clave en el código:
- Agregamos una nueva función
calculateStandardDeviation.
- Esta función utiliza
sqrt() de la biblioteca matemática para calcular la desviación estándar.
- La desviación estándar es la raíz cuadrada de la varianza.
- La función principal ahora imprime las tres medidas estadísticas.
- Continuamos usando la bandera
-lm para enlazar la biblioteca matemática.