PDA

Ver la Versión Completa : ayuda para un trabajo


skunky
06-01-2007, 18:10:54
Hola!!
Estoy estudiando i me gustaria saber como se hace para cuando por ejemplo te dan una palabra i le tienes ke invertir: casa -> asac
I tambien me gustaria saber como se hace para si te dan un numero , pues automaticamente se te convierta el numero escrito: 5 -> cinco
Espero respuesta gracias.

Onti
06-01-2007, 18:40:39
Bueno vamos por partes, veamos el caso de invertir una palabra, para ello utilizaremos los siguientes ingredientes:
1 variable para almacenar la palabra
1 variable para almacenar el resultado
1 instruccion "for" para recorrer cada letra de la palabra
1 " length para obtener el nro de letra de la palabra


Preparacion
tome la variable resultado inicializandola, luege obtenga con la instruccion length el nro de letras de la palabra, aplique un recorrido inverso de la palabra utilizando vigorosamente la instruccion "for" almacenando el resultado en la variable resultado, espere paciantemente 0.0000005 segundo y estra lista su variable con el resultado

aqui va el codigo


Var
CadOrigen, CadFinal :String;
La :Integer;
Begin
// Inicializar
CadOrigen :='casa';
CadFinal :='';

// Recorrido
For length(CadFinal) dowto 1 do
CadFinal :=CadFinal+CadOrigen[La];
End;



Nota : puede haber algun error lo hice de memoria aqui no tengo delphi

dec
06-01-2007, 19:05:18
Hola,

En la unidad "StrUtils" (al menos en Delphi 7) se encuentra una función de nombre "ReverseString" y que tiene este aspecto, por si a alguien le interesa:


function ReverseString(const AText: string): string;
var
I: Integer;
P: PChar;
begin
SetLength(Result, Length(AText));
P := PChar(Result);
for I := Length(AText) downto 1 do
begin
P^ := AText[I];
Inc(P);
end;
end;


Por cierto que existe una función en la misma unidad de nombre "AnsiReverseString", por si vuelve a interesar a alguien. :)

Respecto de convertir un número a texto... prueba a echar un vistazo al componente ATexto (http://dec.clubdelphi.com/delphi/atexto.zip).