class ArregloBidimensional
{
int[,] tabla;
public ArregloBidimensional(int N, int M)
{
tabla = new int[N, M];
}
public void AsignarDato(int R, int C, int X)
{
tabla[R, C] = X;
}
public int ObtenerDato(int I, int J)
{
return tabla[I, J];
}
public int[,] T1
{
get { return tabla; }
set { tabla = value; }
}
public int SumaRengllon(int R, int NC)
{
int suma = 0;
int I;
for (I = 0; I < NC; I++)
{
suma = suma + tabla[R, I];
}
return suma;
}
public int SumaColumna(int NR, int C)
{
int suma = 0;
int I;
for (I = 0; I < NR; I++)
{
suma = suma + tabla[I, C];
}
return suma;
}
public int SumaTotal(int N, int M)
{
int I;
int suma = 0;
for (I = 0; I < N; I++)
{
suma = suma + SumaRengllon(I, M);
}
return suma;
}
}
}
class Arreglo
{
double[] Elemento;
public Arreglo()
{
Elemento = new double[12];
}
public Arreglo(int N)
{
Elemento = new double[N];
}
public void introducirDato(int J, double X)
{
Elemento[J] = X;
}
public void AcumularDato(int J, double X)
{
Elemento[J] = Elemento[J] + X;
}
public double ObtenerDato(int J)
{
return Elemento[J];
}
public double[] elemento
{
get { return Elemento; }
set { Elemento = value; }
}
public double suma(int N)
{
int I;
double sum = 0.0;
for (I = 0; I < N; I++)
{
sum = sum + Elemento[I];
}
return sum;
}
}
}
class Program
{
static void Main(string[] args)
{
int R, C, valor, N, M;
double suma;
Console.WriteLine(" Introduce numero de filas");
M = int.Parse(Console.ReadLine());
Console.WriteLine("Introduce numero de columnas");
N = int.Parse(Console.ReadLine());
ArregloBidimensional A = new ArregloBidimensional(M, N);
Arreglo X = new Arreglo(N);
Arreglo Y = new Arreglo(M);
for (R = 0; R < M; R++)
{
for (C = 0; C < N; C++)
{
Console.Write("Introduce el valor A [{0},{1}]: ", (R + 1), (C + 1));
valor = int.Parse(Console.ReadLine());
A.T1[R, C] = valor;
}
}
Console.WriteLine("Introduce los siguientes valores");
for (C = 0; C < N; C++)
{
Console.Write("X[{0}]:", (C + 1));
valor = int.Parse(Console.ReadLine());
X.introducirDato(C, valor);
}
for (R = 0; R < M; R++)
{
suma = 0.0;
for (C = 0; C < N; C++)
{
suma = suma + A.T1[R, C] * X.ObtenerDato(C);
}
Y.elemento[R] = suma;
}
for (R = 0; R < M; R++)
{
for (C = 0; C < N; C++)
{
Console.WriteLine("Valor [{0},{1}] = {2}", (R + 1), (C + 1), A.ObtenerDato(R, C));
}
}
for (C = 0; C < N; C++)
{
Console.WriteLine("Valor de X[{0}] = {1}", (C + 1), X.ObtenerDato(C));
}
for (R = 0; R < M; R++)
{
Console.WriteLine("Valor Y[{0}] = {1}", (R + 1), Y.ObtenerDato(R));
}
Console.ReadLine();
}
}
}
jueves, 28 de mayo de 2009
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario