Ver Mensaje Individual
  #5  
Antiguo 21-06-2013
napsterk89 napsterk89 is offline
Registrado
NULL
 
Registrado: jun 2013
Posts: 6
Reputación: 0
napsterk89 Va por buen camino
Cita:
Empezado por maeyanes Ver Mensaje
Hola...

Prueba con esto:

Código Delphi [-]
program ASD;

uses
  sysutils, dialogs;

Var
  Texto: string;
  Car: string;
  Car1: string;
  Car2: string;
  Palabra: string;
  Mensaje: string; 
  I: Integer;

begin
  Mensaje := InputBox('Ingresar mensaje', 'Ingrese un mensaje', '');
  Texto := '';
  // Recorremos todo el mensaje
  For := 1 to Length(Mensaje) do
  begin
    // Obtenemos el siguiente caracter
    Car := Copy(Mensaje, I, 1);
    // Si no es un espacio en blanco, lo concatenamos con Texto
    if Texto <> ' ' then
      Texto := Texto + Car
    else
      // Si la longitud de la palabra es par, hacemos el intercambio
      if Length(Texto) mod 2 = 0 then
      begin
        Car1 := Copy(Texto, 1, 1);
        Palabra := Copy(Texto, 2, Length(Texto) - 1);
        Car2 := Copy(Texto, Length(Texto), 1);
        Palabra := Car2 + Palabra + Car1;
        ShowMessage(Palabra);
        Texto := ''
      end
  end
end.

Probé pero ingreso el texto y queda en un loop o algo así porque no da ningún resultado. Gracias igualmente, mientras sigo intentando xD

"Palabra := Copy(Texto, 2, Length(Texto) - 1);" eso es una buena idea en lugar de usar el Delete, no se me había ocurrido!
Responder Con Cita