RE:Búsqueda en una cadena de caracteres
IDENTIFICATION DIVISION.
PROGRAM-ID. SEARCH5.
AUTHOR. ifar999.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES.
DECIMAL-POINT IS COMMA.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 FRASE.
03 FILLER PIC X(35) VALUE
"YO LOS CONOZCO, SON OCHO LOS MONOS,".
03 FILLER PIC X(44) VALUE
" SON TODOS LOS TROLOS, LOLO, POLOLO, MONTOTO".
03 FILLER PIC X(35) VALUE
" COROLO, BARTOLO, SON TODOS CHORROS".
01 VECTOR REDEFINES FRASE.
05 W-VECTOR OCCURS 115 TIMES INDEXED BY IDK.
07 W-ELEMENTO PIC X(01).
01 SWT-BUSCADOR PIC 9(01) VALUE 0.
88 NO-LO-ENCONTRE VALUE 9.
01 W-LETRA PIC X(01) VALUE SPACE.
01 INDICE PIC 9(03) VALUE 0.
PROCEDURE DIVISION.
MAIN.
INITIALIZE SWT-BUSCADOR.
MOVE "T" TO W-LETRA
SET IDK TO +1
SEARCH W-VECTOR VARYING IDK AT END
SET NO-LO-ENCONTRE TO TRUE
WHEN W-ELEMENTO(IDK) = W-LETRA
PERFORM MOSTRAR-EL-ELEMENTO
END-SEARCH.
IF NO-LO-ENCONTRE THEN
DISPLAY "CARACTER INEXISTENTE"
END-IF.
GOBACK.
*------------------------------------------------------------------*
MOSTRAR-EL-ELEMENTO.
*------------------------------------------------------------------*
SET INDICE TO IDK.
DISPLAY "ESTA EN LA POSICION--> " INDICE.