none
Como sumar toda la matriz 1 RRS feed

  • Pregunta

  • Podrian ayudarme en sumar toda la matriz 1 y mostrarla en un label y en base a ese me baso para hacer los mismo para la matriz 2 y la matriz sumatoria 

    private void cmbmatriz_SelectedIndexChanged(object sender, EventArgs e)
            {
                int fila = 0;
                int columna = 0;

                string linea = this.cmbmatriz.Text;
                string[] datos = linea.Split('x');

                fila = Convert.ToInt16(datos[0]);
                columna = Convert.ToInt16(datos[1]);

                int[,] matriz1 = new int[fila, columna];
                int[,] matriz2 = new int[fila, columna];
                int[,] sumatoria = new int[fila, columna];


                this.lblmatriz1.ResetText();
                this.lblMatriz2.ResetText();
                this.lblsum.ResetText();
                this.lblvalor1.ResetText();
                this.lblvalor2.ResetText();
                this.lblvalor3.ResetText();
                this.lblvalor4.ResetText();
                this.lblvalor5.ResetText();
                this.lblvalor6.ResetText();

                for (int f = 0; f < fila; f++)
                {
                    for (int c = 0; c < columna; c++)
                    {
                        Random numero = new Random();
                        int valor1 = numero.Next(100);
                        matriz1[f, c] = valor1;

                        System.Threading.Thread.Sleep(100);
                        Random numero2 = new Random();
                        int valor2 = numero2.Next(100);
                        matriz2[f, c] = valor2;

                        sumatoria[f, c] = matriz1[f, c] + matriz2[f, c];

                        //this.lblvalor1.Text = this.lblvalor1.Text + "" + matriz1[f++, c++];

                        this.lblmatriz1.Text = this.lblmatriz1.Text + "" + matriz1[f, c];
                        this.lblMatriz2.Text = this.lblMatriz2.Text + "" + matriz2[f, c];
                        this.lblsum.Text = this.lblsum.Text + "" + sumatoria[f, c];
                    }

                    this.lblmatriz1.Text = this.lblmatriz1.Text + ",\n";
                    this.lblMatriz2.Text = this.lblMatriz2.Text + ",\n";
                    this.lblsum.Text = this.lblsum.Text + ",\n";
                }


                //int sumadiag4 = 0;
                //int sumadiag5 = 0;
                //int sumadiag6 = 0;
                //for (int y = 0, k = fila - 1; y < fila; y++, k--)
                //{
                //    sumadiag4 += matriz1[y, k];
                //    sumadiag5 += matriz2[y, k];
                //    sumadiag6 += sumatoria[y, k];

                //    sumatoria[y, k] = matriz1[y, k] + matriz2[y, fila - 1 - y];
                //}
                //this.lblvalor4.Text = sumadiag4.ToString();
                //this.lblvalor5.Text = sumadiag5.ToString();
                //this.lblvalor6.Text = sumadiag6.ToString();



                int sumadiag1 = 0;
                int sumadiag2 = 0;
                int sumadiag3 = 0;
                for (int y = 0; y < fila; y++)
                {
                    sumadiag1 = sumadiag1 + matriz1[y, y];
                    sumadiag2 = sumadiag2 + matriz2[y, y];
                    sumadiag3 = sumadiag3 + sumatoria[y, y];
                }
                this.lblvalor1.Text = sumadiag1.ToString();
                this.lblvalor2.Text = sumadiag2.ToString();
                this.lblvalor3.Text = sumadiag3.ToString();
            }

            private void Form1_Load(object sender, EventArgs e)
            {
                this.cmbmatriz.Items.Add("2x2");
                this.cmbmatriz.Items.Add("3x3");
                this.cmbmatriz.Items.Add("4x4");
            }

    jueves, 13 de octubre de 2016 14:56

Todas las respuestas

  • ya no gracias. ya pude
    jueves, 13 de octubre de 2016 15:20
  • Muchas gracias, yo lo resolvi de esta manera:

                //int suma = 0;
                //int suma1 = 0;
                //int suma2 = 0;

                //for (int f = 0; f < fila; f++)
                //{
                //    for (int c = 0; c < columna; c++)
                //    {
                //        suma = suma + matriz1[f, c];
                //        suma1 = suma1 + matriz2[f, c];
                //        suma2 = suma2 + sumatoria[f, c];
                //    }
                //    this.lblvalor7.Text = suma.ToString();
                //    this.lblvalor8.Text = suma1.ToString();
                //    this.lblvalor9.Text = suma2.ToString();
                //}
    viernes, 14 de octubre de 2016 3:08
  • Tengo otra duda, si yo quisiera sumar una matriz de 3x3 excepto el valor del medio como lo haría 
    Tendría que crear otro for con otras variables?
    viernes, 14 de octubre de 2016 3:14