Domingo 19 Mai 2024

Search All é um método de pesquisa binária, que é usado para encontrar elementos dentro da tabela. A tabela deve estar em ordem classificada para a opção Pesquisar tudo. O índice não requer inicialização. Na busca binária a tabela é dividida em duas metades e determina em qual metade do elemento pesquisado está presente. Este processo se repete até que o elemento é encontrado ou o fim é alcançado.

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

DATA DIVISION.
   WORKING-STORAGE SECTION.
   01 WS-TABLE.
      05 WS-RECORD OCCURS 10 TIMES ASCENDING KEY IS WS-NUM INDEXED BY I.
      10 WS-NUM PIC 9(2).
      10 WS-NAME PIC A(3).

PROCEDURE DIVISION.
   MOVE '12ABC56DEF34GHI78JKL93MNO11PQR' TO WS-TABLE.
   SEARCH ALL WS-RECORD
     AT END DISPLAY 'RECORD NOT FOUND'
     WHEN WS-NUM(I)=93
     DISPLAY 'RECORD FOUND '
     DISPLAY WS-NUM(I)
     DISPLAY WS-NAME(I)

END-SEARCH.