P_74_E19-Obtener+cadena+union

=__**Obtener la cadena union de los caracteres de dos cadenas**__=

> Leer dos cadenas de caracteres y obtener la cadena unión de ambas

code format="pascal" PROGRAM string_19 ; USES Crt ; CONST iLONG_FISICA = 128 ; TYPE tsCadena = String [iLONG_FISICA] ;

FUNCTION fnsObtenerUnion (sCad_1, sCad_2: tsCadena) : tsCadena ; VAR byIndice : Byte ; sUnion  : tsCadena ; BEGIN sUnion := '' ;

FOR byIndice := 1 TO Length (sCad_1) DO       IF Pos (sCad_1[byIndice], sUnion) = 0 THEN sUnion := sUnion + sCad_1[byIndice] ;

FOR byIndice := 1 TO Length (sCad_2) DO       IF Pos (sCad_2[byIndice], sUnion) = 0 THEN sUnion := sUnion + sCad_2[byIndice] ;

fnsObtenerUnion := sUnion END ; { fnsObtenerUnion  }

VAR {--- Variables del programa principal ---} sCadena_1, sCadena_2, sUnion : tsCadena ;

BEGIN { Programa Principal } Writeln ; Writeln ('Programa que obtiene los caracteres que est n en una o en otra cadena') ; Writeln ('(o en las dos)') ; Writeln ;

Write ('Escribe una secuencia de caracteres: ') ; Readln (sCadena_1) ; Write ('                      Escribe otra: ') ; Readln (sCadena_2) ;

sUnion := fnsObtenerUnion(sCadena_1, sCadena_2) ;

Writeln ; WriteLn ('          La cadena union es ->', sUnion, '<-') ;

Writeln ; Writeln ('Pulsa ENTER para finalizar') ; ReadLn ; END. { Fin de STRIN_19.PAS } code