public static void Main()
int filas = 3, columnas = 3, sumaPares = 0, sumaImpares = 0;
int[,] matriz = new int[filas, columnas];
matriz[0, 0] = 1; matriz[0, 1] = 2; matriz[0, 2] = 3;
matriz[1, 0] = 4; matriz[1, 1] = 5; matriz[1, 2] = 6;
matriz[2, 0] = 7; matriz[2, 1] = 8; matriz[2, 2] = 9;
sumaPares = SumarPares(matriz, filas, columnas);
sumaImpares = SumarImpares(matriz, filas, columnas);
Console.WriteLine("La suma de números pares es " + sumaPares);
Console.WriteLine("La suma de números impares es " + sumaImpares);
static int SumarPares(int[,] matriz, int filas, int columnas)
return RecorrerMatriz(matriz, filas, columnas, (int i) => i % 2 == 0);
static int SumarImpares(int[,] matriz, int filas, int columnas)
return RecorrerMatriz(matriz, filas, columnas, (int i) => i % 2 != 0);
static int RecorrerMatriz(int[,] matriz, int filas, int columnas, Func<int, bool> predicate)
for (int i = 0; i < filas; i++)
for (int j = 0; j < columnas; j++)
int numero = matriz[i, j];