Autor Tema: Ejercicio matrices Pascal  (Leído 12078 veces)

patocasla

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 1
    • Ver Perfil
Ejercicio matrices Pascal
« en: 29 de Septiembre 2014, 03:25 »
Gente, como andan ?
Ando buscando ayuda en la creación de un programa en pascal que necesitaria ayuda ya que es un ejercicio de la facultad.

Es un ejercicio de matrices que me pide:

1. Leer el valor de N
2. Leer el valor de M
3. Leer una matriz de NxM
4. Leer un vector de longitud M
5. Informar el vector de longitud N que se obtiene al multiplicar la matriz
leda en el punto 3 por el vector del punto 4.

Yo pense algo asi:

1) Declaro variables
2) Procedimiento Columnas_de_matriz
Donde le ingreso los valores de cada componente de las diferentes columnas de la matriz
3) Procedimiento filas_de_matriz
Le ingreso los valores de cada componente de las filas de la matriz
4) Procedimiento vector
Le ingreso los valores del vector
5) programa principal con:
a. se le ingresa la cantidad de columnas
b. se le ingresa la cantidad de filas
c. un FOR que vaya de 1 hasta el numero final de filas que adentro tenga primero otro for que utilice desde el 1 hasta el final de las columnas el procedimiento de columnas de matriz y despues el procedimiento de filas de matriz.
d. que muestre la matriz entera.
e. que haga el procedimiento vector
f. que muestre el vector.
g. que haga la multiplicacion vectorial
h. que muestre la matriz resultado.


Y en codigo tengo algo asi:
Código: [Seleccionar]
program matriz;
uses crt;
var
N,M:real;
tfilas:array[1..N] of real;
tcolumnas:array[1..M]of real;

begin
Procedure columnas_de_matriz (var M:real; N:real)
var
i:byte;
comp_columnas:tcolumnas;
begin
i:=0;
i:=i+1;
writeln('ingrese el componente ', i,N, 'de su matriz: ');
readln(comp_columnas[i]);
end;

Procedure filas_de_matriz (var M:real; N:real);
var
j:byte;
comp_filas:tfilas;
begin
j:=0;
j:=j+1;
writeln('ingrese el componente ', i,M, 'de su matriz: ');
readln(comp_filas[j]);
end;

writeln('ingrese la cantidad de filas de su matriz: ');
readln(N);
writeln('ingrese la cantidad de columnas de su matriz: ');
readln(M);
for 1 to N do
begin
for 1 to M do columnas_de_matriz;
filas_de_matriz;
end;


Me ayudan a seguir que me queda ahi?

Gracias
« Última modificación: 29 de Septiembre 2014, 08:37 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2659
    • Ver Perfil
Re:Ejercicio matrices Pascal
« Respuesta #1 en: 29 de Septiembre 2014, 08:52 »
Hola! Para pegar código pulsa el botón # del editor del foro y pega el código entre las etiquetas [ code ] ... [ / code ] que te aparecerán.

No acabo de entender bien el planteamiento que has hecho aunque a lo mejor si lo explicas sí logre entenderlo. Una matriz no se lee por separado en filas y columnas, sino que una matriz consta de elementos y cada elemento tiene una fila y una columna. Una matriz es un array (arreglo) bidimensional donde el primer índice indica la fila y el segundo la columna (esto normalmente, también podría ser al revés).

En este curso y entrega y en las siguientes puedes ver más explicaciones: http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=253:tipos-de-variables-variables-con-indice-o-localizador-arrays-matrices-formaciones-o-arreglos-i-cu00128a&catid=28:curso-bases-programacion-nivel-i&Itemid=59

Para tomar los datos de la matriz lo más normal sería usar algo parecido a esto (F es filas y C columnas):

For Fil:= 1 to F do
For Col:= 1 to C do
writeln('ingrese el elemento ', Fil,Col, 'de su matriz: ');
readln(Matriz[Fil,Col]);
End;
End;

Salu2

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".