[ Foro de Pascal ]
Escriba un procedimiento que reciba como parámetro, una tabla de enteros y devuelva una cadena con los caracteres correspondientes. Incluya el procedimiento en un pequeño programa de prueba para depurarlo y verificar que es correcto.
esto es lo que he sido capaz de hacer, pero el resultado no es el deseado, mas bien es una catástrofe de resultado. Agradeceria que alguien me pudiera prestar algo de ayuda. Gracias.
program cadenaenteros;
type
tabla = array[1..20] of integer;
var
cadena : string[20];
tab : tabla;
i, cont : integer;
caracteres : tabla;
procedure valores (var caracteres : tabla);
begin
write(' Entre cadena max 20 caracteres : ');
readln(cadena);
for cont := 1 to length(cadena) do
begin
tab[cont] := ord(cadena[cont]);
writeln;
writeln('tabla de caracteres obtenida');
writeln;
for i := 1 to cont do
write(' ',chr(tab[i]));
end;
end;
begin
valores (caracteres);
end.
Perdona el retraso en contestar. Quizá la respuesta llegue tarde, pero por si acaso...
Hay algo que quizá esté mal planteado en el propio enunciado: si debe devolver una cadena de texto, ya no se trata de un "procedure" sino de una "function". Lo habitual en esos casos es que no pidas datos desde dentro de la función, sino que te limites a manipular los resultados. Por ejemplo, podrías hacer que a partir de una lista de datos como 1, 3, 5 se devolviera una cadena como "135".
(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.)