Resumen: obtener la mediana y la media de un arreglo en C. Es decir, obtener el promedio de un arreglo y también el elemento central o el que se encuentra a la mitad de la sucesión.
Para ello vamos a usar arreglos y condicionales sencillas.
La media: promedio
Primero comenzamos con la media, que no es otra cosa que el promedio. Si quieres ver el algoritmo a detalle mira: obtener promedio de arreglo en C.
Lo único que hacemos es recorrer todo el arreglo, ir sumando cada valor y luego dividir la sumatoria entre la longitud.
Obtener mediana
Para obtener la mediana primero debemos tener el arreglo ordenado de cualquier manera, es decir, ascendente o descendente.
Puedes ordenar el arreglo usando qsort, método de burbuja o quicksort. Aquí usaré qsort
por simplicidad.
Después de tener el arreglo debemos tener su longitud, y saber si es par o impar. En caso de que sea par, debemos obtener los dos elementos del centro y obtener su promedio.
En caso de que sea impar, obtenemos el elemento del centro.
Mediana de arreglo en C
Definimos el arreglo así como otras variables que nos ayudarán a encontrar el elemento medio y la longitud del mismo:
Lo ordenamos:
Ahora calculamos la mitad de la longitud del arreglo y dependiendo de si es par o no, obtenemos distintos resultados para la mediana:
Finalmente la imprimimos junto con el arreglo y el promedio:
Poniendo todo junto
El código completo queda así:
Al ejecutarlo en mi caso es:
Si quieres puedes ejecutarlo aquí.
¿Más ejercicios sobre ANSI C? míralos aquí.