bueno me explico, la cosa es que tengo que hacer un programa en free pascal que lo que haga (entre otras cosas) sea recorrer lexicograficamente un codigo de 4 letras...
por ejemplo, el codigo empieza con los valores "AAAA" para luego ir recorriendo todas las posibilidades hasta llegar a "FFFF" , luego de comenzar el siguiente seria "AAAB" , "AAAC", "AAAD" , "AAAE", "AAAF" , "AABA","AABB" etc....
lo que se me ocurrio hasta el momento es el siguiente codigo:
program recorre;
const
LARGO_CODIGO =4;
ULTIMA_LETRA ='F';
PRIMERA_LETRA ='A';
type
Tletra = PRIMERA_LETRA..ULTIMA_LETRA;
Tcodigo = array [1..LARGO_CODIGO] of Tletra;
var
i,ultimacasilla : integer;
codigo : tcodigo;
begin
for i:= 1 to largo_codigo do
begin
codigo[i]:= primera_letra;
write (codigo[i]);
end;
ultimacasilla:=4;
repeat
codigo[ultimacasilla]:= (succ(codigo[ultimacasilla]));
write (codigo[i]);
i:=i+1;
until (codigo[ultimacasilla]=ultima_letra)
end.
con esto lo que pretendo hacer es llegar hasta el "AAAF" pero no logro nisiquiera eso ya que cuando lo ejecuto me salta el error 201 que segun me informe es un tema de fuera de rango...
si alguien me puede dar una mano lo agradesco