Pascal/Turbo Pascal - Necesito pasar esto a un procedimiento..

 
Vista:

Necesito pasar esto a un procedimiento..

Publicado por kikinho (12 intervenciones) el 04/03/2007 13:04:04
Hola,necesito pasar lo que hace este programa (elmina blancos y signos de puntuacion de una cadena) a un procedimiento (que seria llamado al introducir la cadena) pero no consigo hacerlo y seguro que es una tonteria. Si podeis echarme un cable os estaria muy agradecido.
Un saludo y gracias.
---------------------------------------
program nuevo;

{$APPTYPE CONSOLE}

uses
SysUtils;

VAR
cadena_pedida,cadena_transformada : string[255];
i,j : integer;
begin
write('Escriba una frase que tenga 255 caracteres como maximo: ');
readln(cadena_pedida);
i:=ORD(cadena_pedida[0]);
for j:=1 to i do
begin
If cadena_pedida[j] = ' ' then
begin
cadena_transformada:=cadena_transformada;
end
else
If cadena_pedida[j] = '.' then
begin
cadena_transformada:=cadena_transformada;
end
else
If cadena_pedida[j] = ';'
then
begin
cadena_transformada:=cadena_transformada;
end
else
If cadena_pedida[j] = ','
then
begin
cadena_transformada:=cadena_transformada;
end
else
If cadena_pedida[j] = ':'
then
begin
cadena_transformada:=cadena_transformada;
end
else
cadena_transformada:=cadena_transformada+cadena_pedida[j];;
end;
write(cadena_transformada);
readln;
end.
------------------------------------------------------
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

RE:Necesito pasar esto a un procedimiento..

Publicado por M@rceloL (7 intervenciones) el 04/03/2007 22:35:52
Bueno, más o menos:

procedure SacarCaracteres(var cadena_pedida,cadena_transformada:string);
var i,j : integer;
begin
..cadena_transformada:='';
..i:=ORD(cadena_pedida[0]);
..for j:=1 to i do
....begin
....If cadena_pedida[j] = ' ' then
......begin
......cadena_transformada:=cadena_transformada;
....end
..else If cadena_pedida[j] = '.' then
....begin
....cadena_transformada:=cadena_transformada;
....end
...else If cadena_pedida[j] = ';' then
.....begin
.....cadena_transformada:=cadena_transformada;
....end
..else If cadena_pedida[j] = ',' then
....begin
....cadena_transformada:=cadena_transformada;
....end
..else If cadena_pedida[j] = ':' then
....begin
....cadena_transformada:=cadena_transformada;
....end
..else
....cadena_transformada:=cadena_transformada+cadena_pedida[j];;
end;

VAR cadena_pedida,cadena_transformada : string[255];
begin
write('Escriba una frase que tenga 255 caracteres como maximo: ');
readln(cadena_pedida);
SacarCaracteres(cadena_pedida,cadena_transformada);
write(cadena_transformada);
readln;
end.

Saludos.
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