Pascal/Turbo Pascal - Problema de matrices en pascal

   
Vista:

Problema de matrices en pascal

Publicado por adriana adriannasong@gmail.com (1 intervención) el 14/04/2015 23:54:10
Disculpen, cómo se realizaría dicho ejercicio en free pascal?


Declara dos matrices de enteros, de 10 filas y 3 columnas (sugerencia usa type). Deberás
indicar al usuario que escriba en la primera matriz números positivos y en la segunda números negativos,
(verifica que se cumpla la condición antes de guardar el numero)
Los números solicitados se almacenan en la primera columna; calcula y almacena el cuadrado de cada número en
la segunda columna, y en la tercera el cubo. Imprime ambas matrices.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Problema de matrices en pascal

Publicado por David (139 intervenciones) el 15/04/2015 13:47:25
Te propongo la siguietne solución:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Uses CRT;
 
Const
  COLUMNAS = 3;
  FILAS = 10 ;
 
Type
  TipoMatriz = Array [1..COLUMNAS,1..FILAS] of integer;
 
var
  MatNeg,MatPos : TipoMatriz;
  n, I, J : integer;
 
Procedure PresentaMatriz (var mat : tipoMatriz);
 
var
  i, j:Integer;
 
begin
  for i := 1 to columnas do
    for j:=1 to filas do
      begin
        gotoxy(i*5,j);
        write(mat[i,j]:4);
      end;
end;
 
 
begin
  clrscr;
  Writeln('Introduzca diez valores positivos');
  for i:=1 to filas do
    begin
      Repeat
        Readln(n);
      Until n>0;
      matpos[1,i]:=n;
      matpos[2,i]:=sqr(n);
      matpos[3,i]:=sqr(n)*n;
    end;
 
  Writeln('Introduzca diez valores negativss');
  for i:=1 to filas do
    begin
      Repeat
        Readln(n);
      Until n<0;
      matneg[1,i]:=n;
      matneg[2,i]:=sqr(n);
      matneg[3,i]:=sqr(n)*n;
    end;
   clrscr;
   presentaMatriz(matpos);
   readln;
   PresentaMatriz(matneg);
end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema de matrices en pascal

Publicado por dario (20 intervenciones) el 15/04/2015 16:15:07
Esta es otra solucion, esta hecha la primera matriz. Si quieres aprender practica, te dejo para que hagas la segunda matriz. Saludos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
uses crt;
var
	matriz1:array[1..10,1..3]of integer;
	i,j:byte;
begin
	clrscr;
	{se rellena la matriz con numeros en la primera columna}
	for i:=1 to 10 do
		for j:=1 to 1 do begin
			write('Elemento ',i,',',j,': ');
			readln(matriz1[i][j]);
		end;
 
	{el cuadrado de la primera columna}
	for i:=1 to 10 do
		for j:=1 to 1 do
			matriz1[i][j+1]:=sqr(matriz1[i][j]);
 
	{el cubo de la primera columna}
	for i:=1 to 10 do
		for j:=1 to 1 do
			matriz1[i][j+2]:=sqr(matriz1[i][j])*matriz1[i][j];
 
	writeln;
	{se muestra la matriz}
	for i:=1 to 10 do begin
		for j:=1 to 3 do
			write(matriz1[i][j]:7);
		writeln;
	end;
end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar