[ Foro de Pascal ]

1.2 tema 7

14-Apr-2014 17:45
Invitado (Napster_EPD)
1 Respuestas

hola tengo que corregir un codigo, aqui dejo lo que tengo que corregir:

Mira como has definido la constante

Const TAMCOLECCION = 4;
Ahora cuando declaras el array debes escribir la costante también con mayísculas

Type
coleccion = array[1..tamcoleccion] of real;
coleccion = array[1..TAMCOLECCION] of real;
Aunque funciona correctamente con el while, lo habitual y más eficiente es utilizar un for para el recorrido de un array.

ahora dejo el codigo en cuestion que hay que corregir


Program Galeria; 
uses 
crt;
 (*-- Constantes globales al programa -- *) 
Const 
TAMCOLECCION = 4; (
*-- Tipos globales al programa -- *) 
Type coleccion = array[1..tamcoleccion] of real;
 (*-- Variables del módulo principal -- *) 
Var 
precios : Coleccion; 
(*-- Funciones y procedimientos -- *)
 procedure lee_tabla(var t : coleccion; n : integer); var i : integer; 
begin i := 1; writeln(' Entre Precio Cuadro '); 
while i < n + 1 do begin write(' Numero ',i,' : '); readln(t[i]); i := i + 1; 
end;
 end;
 procedure imprime_tabla(t : coleccion; n : integer);
 var
 i : integer;
 begin i := 1;
 writeln(' Los Resultados Son ');
 writeln;
 while i < n + 1 do 
begin
 writeln (' Num. : ',i,' Precio : ',t[i]:0:2); i := i + 1;
 end; 
end;
 (*-- Programa Principal -- *)
 Begin 
clrscr;
 lee_tabla(precios, TAMCOLECCION);
 clrscr;
 imprime_tabla(precios, TAMCOLECCION);
 readln;
 End.


quiero que me lo pongan en codigo pascal la correccion, gracias.


16-Apr-2014 00:55
Nacho Cabanes (+84)

La parte de usar la constante en mayúsculas ya la tienes puesta, y el convertir un "While" en un "For" es muy fácil. Si no has leído nada sobre el "for", mira este apartado del curso:

http://www.aprendeaprogramar.com/mod/resource/view.php?id=116

o, en la versión nueva, éste:

http://www.nachocabanes.com/pascal/cupas5/cupas03.php






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)