elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  duda con un programa en c#
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: duda con un programa en c#  (Leído 5,770 veces)
jugran28

Desconectado Desconectado

Mensajes: 14


Ver Perfil
duda con un programa en c#
« en: 13 Noviembre 2007, 18:27 pm »

hola por la presente para solitarles su ayuda tengo un programa echo en c#es sobre la suma de areglos bidimencional el problema que tengo es no se como declarar dentro de una clase un areglo bidimensional  esto  por su pùesto dentro de un metodomi declaracion esta echo asi :      public int sumabidi1(int[,] suma = new int[3, 3]) esto me  sale error haber si alguien me ayuda aca pues mi codigo fuente... haber por favor quiero sus opiniones
saludos
// clase suma
namespace suma
{
    class sumabidi

    {
        public int sumabidi1(int[,] suma = new int[3, 3])
    {
        int[,] A = new int[3,3];
        int[,] B = new int[3,3];
                   
         for (int i = 0; i <3; i++)
            {
                for (int j = 0; j <3; j++)
                {
                    suma[i,j] = A[i,j] + B[i,j];
                    Console.WriteLine("Resultado suma ["+i+"]["+j+"] ="+suma[i,j]);
                    Console.ReadLine();
                }
            }
        }
    }
}
// esto es la clase principal
using System;
using System.Collections.Generic;
using System.Text;

namespace suma
{
    class Program
    {
        static void Main(string[] args)
        {
            sumabidi ok = new sumabidi();
            int[,] A = new int[3,3];
            int[,] B = new int[3,3];
           
            int x, y;
            for (int i = 0; i <3; i++)
            {
                for (int j = 0; j <3; j++)
                {
                    Console.WriteLine("ingrese el valor en A[{0}] ",A[i,j]);
                    x = Int32.Parse(Console.ReadLine());
                    A[i,j] = x;
                   }
            }
            for (int i = 0; i <3; i++)
            {
                for (int j = 0; j <3; j++)
                {
                    Console.WriteLine("ingrese el valor en B[{0}] ", B[i,j]);
                    y = Int32.Parse(Console.ReadLine());
                    B[i,j] = y;
                   
                }
            }
           
        }
               
        }
    }


En línea

gusman

Desconectado Desconectado

Mensajes: 43



Ver Perfil WWW
Re: duda con un programa en c#
« Respuesta #1 en: 14 Noviembre 2007, 18:19 pm »

Hola.

Me parece que tienes unos cuantos conceptos equivocados.

Lo primero es que tu función no devuelve ningún valor, por lo cual al declararla como int estás provocando un error del tipo "no todas las rutas devuelven un valor".

Lo segundo es que cuando vas a pasar la matríz como un parámetro no has de inicializarla en la declaración de la función, se supone que ya ha sido inicializada en el trozo de código que llama a esta.

Y lo tercero es que como no estás usando el valor de las sumas para nada más que mostrarlos, almacenarlos en una matriz es innecesario, con que almacenes el resultado de cada suma en un int es suficiente y ahorras memoria.

Te añado la clase con todo corregido y una segunda función adicional donde se devuelve la matríz de las sumas, esto es útil si te hace falta almacenar el resultado para trabajar con el más adelante.

Código
  1. namespace suma
  2. {
  3.    public class sumabidi
  4.    {
  5.        public void sumabidi1(int[,] Arr1, int[,] Arr2)
  6.        {
  7.  
  8.            if ((Arr1.GetLength(0) != Arr2.GetLength(0)) || (Arr1.GetLength(1) != Arr2.GetLength(1)))
  9.                throw new Exception("Las dimensiones de las matrices no coinciden");
  10.  
  11.            int suma;
  12.  
  13.            for (int x = 0; x < Arr1.GetLength(0); x++)
  14.            {
  15.  
  16.                for (int y = 0; y < Arr1.GetLength(1); y++)
  17.                {
  18.  
  19.                    suma = Arr1[x, y] + Arr2[x, y];
  20.                    Console.WriteLine("Resultado suma [" + x.ToString() + "][" + y.ToString() + "] =" + suma.ToString());
  21.                    Console.ReadLine();
  22.                }
  23.  
  24.            }
  25.  
  26.        }
  27.  
  28.        public int[,] sumabidi2(int[,] Arr1, int[,] Arr2)
  29.        {
  30.  
  31.            if ((Arr1.GetLength(0) != Arr2.GetLength(0)) || (Arr1.GetLength(1) != Arr2.GetLength(1)))
  32.                throw new Exception("Las dimensiones de las matrices no coinciden");
  33.  
  34.            int[,] suma = new int[Arr1.GetLength(0), Arr2.GetLength(0)];
  35.  
  36.            for (int x = 0; x < Arr1.GetLength(0); x++)
  37.                for (int y = 0; y < Arr1.GetLength(1); y++)
  38.                    suma[x, y] = Arr1[x, y] + Arr2[x, y];
  39.  
  40.            return suma;
  41.  
  42.        }
  43.    }
  44. }

Un saludo.


En línea

No está muerto todo lo que yace y con extraños evos hasta la misma muerte puede morir.
jugran28

Desconectado Desconectado

Mensajes: 14


Ver Perfil
Re: duda con un programa en c#
« Respuesta #2 en: 15 Noviembre 2007, 18:11 pm »

gracias doc lo probare   y luego te aviso
muy agradecido infitimanete
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda con programa en vbs
Scripting
serginmatonis 0 1,685 Último mensaje 4 Febrero 2012, 18:49 pm
por serginmatonis
Duda en programa
Programación C/C++
Black Lotus 2 1,998 Último mensaje 25 Diciembre 2012, 20:52 pm
por Black Lotus
DUDA CON MI PROGRAMA EN C
Programación C/C++
chelito033 0 1,453 Último mensaje 21 Agosto 2013, 01:20 am
por chelito033
Duda con programa en C++
Programación C/C++
EdgarKrieger 2 1,648 Último mensaje 28 Enero 2016, 03:24 am
por EdgarKrieger
Duda programa c++
Programación C/C++
thealberteitor 2 2,395 Último mensaje 11 Agosto 2016, 03:18 am
por MessageBoxA
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines