sumar filas , columnas y diagnoales

publicado por: Anonymous

debo hacer un cuadro magico, ya tengo la matriz y leo los valores que en ella hay, posteriormente deseo primero sumar las filas, pero no se como hacer para que automaticamente las posiciones 0.0,0,1,0,2 etc etc, tengo la parte final del codigo asi

Console.WriteLine("suma filas");
            for (i = 0; i < matriz.GetLength(0); i++)
            {
                for (j = 0; j < matriz.GetLength(1); j++)
                {
                    if (i>sumafilas)
                    {
                        sumafilas += matriz[i, i];
                    }


                }

                Console.Write(sumafilas);
                Console.WriteLine();

solución

Para realizar las sumas de un cuadro mágico mediante ciclos:

int [, ] mn = new int [3, 3] {{4,9,2}, {3,5,7}, {8,1,6}};

        //SUMA DE LINEAS
        for (int i = 0; i < mn.GetLength(0); i++)
        {
            int suma = 0;
            for (int j = 0; j < mn.GetLength(1); j++)
            {
                suma += mn[i, j];
            }
            Console.WriteLine("Linea " + i + " = " + suma);
        }
        //SUMA DE COLUMNAS

        for (int j = 0; j < mn.GetLength(0); j++)
        {
            int suma = 0;
            for (int i = 0; i < mn.GetLength(1); i++)
            {
                suma += mn[i, j];
            }
            Console.WriteLine("Columna " + j + " = " + suma);
        }
        //SUMA DE DIAGONAL 
        int sumad1 = 0;
        for (int i = 0; i < mn.GetLength(0); i++)
        {
            for (int j = i; j <= i; j++)
            {
                sumad1 += mn[i, j];
            }

        }
        Console.WriteLine("Linea diagonal \ = " + sumad1);
        //SUMA DE DIAGONAL /
        int sumad2 = 0;
        for (int j = 0; j < mn.GetLength(0); j++)
        {
            for (int i = mn.GetLength(0) -j - 1; i == mn.GetLength(0) -j - 1 ; i++)
            {
                sumad2 += mn[i, j];
            }

        }
        Console.WriteLine("Linea diagonal / = " + sumad2);

Saludos.

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *