none
corregir matrices ayuda por favor RRS feed

  • Pregunta

  • hola este es un codigo de matrices pero debo cambiarlo y no se como hacerlo. En lugar de multiplicar sacar el maximo, en lugar de sumar sacar el minimo (esta mejor explicado en el codigo)

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;

    namespace MultiplicarMatrices
    {
        class Program
        {
            public static void Main()
            {            
                Console.WriteLine("PRODUCTO O MULTIPLICACION DE MATRICES");
                //MATRIZZ [1]
                    Console. WriteLine ( "[Matriz[1] A]" );//Muestra al usuario llenar la matriz 1 
                Console. Write ( "Inserte el Nº de Filas: " ) ;
                int f1 = int . Parse ( Console. ReadLine ( ) ) ;//Captura numero de Filas de matriz 1 
                Console. Write ( "Inserte el Nº de Columnas: " ) ;
                int c1 = int . Parse ( Console. ReadLine ( ) ) ;//Captura numero de Columnas de matriz 1 
                //MATRIZZ [2] 
                    Console. WriteLine ( "\n[Matriz[2] B]" ) ;//Muestra al usuario llenar la matriz 2 
                Console. Write ( "Inserte el Nº de Filas: " ) ;//Muestra al usuario llenar el numero de Filas 
                int f2 = int . Parse ( Console. ReadLine ( ) );//Captura numero de Filas de matriz 2 
                    Console. Write ( "Inserte el Nº de Columnas: ");
                int c2 = int . Parse ( Console. ReadLine ( ) );//Captura numero de Columnas de matriz 2 
                                                               //DECLARACION DE LAS MATRICES 1 Y 2 
                                                               //Las filas y columnas se suman +1 para empezar desde posicion 1 
                int [ , ] Matriz1 = new int [ f1 + 1 , c1 + 1 ];
                int [ , ] Matriz2 = new int [ f2 + 1 , c2 + 1 ];  
                int [ , ] Multiplicacion = new int [ f1 + 1 , c2 + 1 ] ;//Matriz para la multiplicacion 
                                                                        
                if ( c1 == f2 )
                {
                    //Empezando a llenar la Matriz 1 
                    Console. WriteLine ( " \n Datos [Matriz 1]: " ) ;
                    for ( int i = 1 ; i <= f1 ; i ++ ) { for ( int j = 1 ; j <= c1 ; j ++ )
                        {
                            Console. Write ( "Ingresa Dato (Fila: {0} - Columna: {1}): " , i, j ) ;
                            Matriz1 [ i, j ] = int . Parse ( Console. ReadLine ( ) ) ;
                        }
                    } //Empezando a llenar las Matriz 2 
                    Console. WriteLine ("\nDatos [Matriz 2]: ") ;
                    for ( int i = 1 ; i <= f2 ; i ++ )
                    {
                        for ( int j = 1 ; j <= c2 ; j ++ )
                        {
                            Console. Write ( "Ingresa Dato (Fila: {0} - Columna: {1}): " , i, j ) ;
                            Matriz2 [ i, j ] = int.Parse(Console. ReadLine( )) ;
                        }
                    } //Multiplicando las 2 matrices
                    for ( int i = 1 ; i <= f1 ; i ++ )
                    {
                        for ( int j = 1 ; j <= c2 ; j ++ )
                        {
                            Multiplicacion [ i, j ] = 0 ;
                            for (int z = 1; z <= c1; z++) 
                                Multiplicacion[i, j] = Matriz1[i, z] * Matriz2[z, j] + Multiplicacion[i, j]; //CAMBIAR: en lugar de multiplicar sacar el maximo, en lugar de sumar sacar el minimo
                        }
                    } Console. WriteLine ("\nMultiplicacion de 2 Matrices") ;
                    for ( int i = 1 ; i <= f1 ; i ++ ) { for ( int j = 1 ; j <= c2 ; j ++ )
                        {
                            Console. Write ( "{0} " , Multiplicacion [ i, j ] ) ;     //Muestra el resultado total
                        } Console. WriteLine ( ) ;     //Si la columna de la matriz 1 no es igual al numero de filasde la matriz 2 no se puede multiplicar 
                    }
                }
                else
                    Console. WriteLine ( "Error: No se puede multiplicar las matrices" + " Columnas: {0}! = Filas: {1}" , c1, f2 ) ;
                Console.ReadKey();
            }
        }
    }

    domingo, 7 de enero de 2018 16:39

Respuestas

  • Hola ArisaSparks55

    Tienes que declarar una variable llamada máximo y otra llamada mínimo de tipo int. Luego debes colocar una condición If, else y colocando > con eso obtienes el máximo y para el mínimo colocar el símbolo <.

    De hecho  si cuentas con el libro de Ceballos de Programación en C# en la sección de matrices allí encontrarás el ejemplo y la solución.

    Quedamos al pendiente de cualquier actualización de tu parte.

    Saludos Cordiales.

    Gracias por usar los foros de MSDN.

    Pablo Rubio
     _____

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    lunes, 8 de enero de 2018 16:33
    Moderador