Mayor y menor de matriz en C

Número mayor y menor de matriz en C

Las matrices en C son arreglos de dos dimensiones. En este post vamos a ver cómo obtener el número mayor y menor de una matriz en C, utilizando el ciclo for y comparaciones con if.

Mayor y menor de matriz en C

Explicación del algoritmo

Para obtener el número mayor y menor de una matriz en C simplemente hay que comenzar definiendo ambas variables; el valor inicial que deben tener es uno que esté dentro de la matriz, por ejemplo en la posición [0][0]

Después, recorremos la matriz; para ello necesitamos dos ciclos de los cuales uno estará dentro del otro. En cada paso, comparamos el valor actual con el mayor.

Si el actual es más grande que el mayor, entonces el mayor ahora es el actual.

Por otro lado, si el actual es más pequeño que el menor, entonces el menor ahora es el actual.

Terminamos los ciclos e imprimimos los valores.

Función que obtiene el mayor y menor de una matriz en C

Veamos el código para trabajar con matrices en C. Estamos definiendo la altura y la anchura de la matriz utilizando #define para evitar calcular la longitud de un arreglo con sizeof.

/**
 * Mayor y menor de una matriz en C
 *
 * @author parzibyte
 * https://parzibyte.me/blog
 *
 * */
#define ALTURA 3
#define ANCHURA 3

#include <stdio.h> // Para printf

int main() {
    int matriz[ALTURA][ANCHURA] = {
            {20,  50, 80},
            {500, 12, 44},
            {56,  4,  3},
    };
    // Iniciar los números, suponiendo que son los primeros
    int menor = matriz[0][0];
    int mayor = matriz[0][0];
    // Recorrer la matriz y comparar
    for (int y = 0; y < ALTURA; y++) {
        for (int x = 0; x < ANCHURA; x++) {
            int elementoActual = matriz[y][x];
            if (elementoActual > mayor) mayor = elementoActual;
            if (elementoActual < menor) menor = elementoActual;
        }
    }
    printf("Mayor: %d\n", mayor);
    printf("Menor: %d\n", menor);
    return 0;
}

Hacemos dos ciclos en la línea 23 y 24. Nuestras variables son x e y; obtenemos el elemento actual en la línea 25 y después en la línea 26 y 27 hacemos comparaciones.

Al terminar de recorrer la matriz, imprimimos nuestros resultados con printf. Al menos para el caso de la matriz del código, la salida es:

C:\Users\usuario\CLionProjects\EjerciciosC\cmake-build-debug\EjerciciosC.exe
Mayor: 500
Menor: 3

Process finished with exit code 0

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 *