Media y mediana en C usando arreglo y qsort

Mediana y media en C

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:

Media y mediana en C usando arreglo y qsort
Imprimir media y mediana en C

Si quieres puedes ejecutarlo aquí.

¿Más ejercicios sobre ANSI C? míralos aquí.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *