24.01.2014 Views

Parte ii - IIS Marconi Latina - Area didattica

Parte ii - IIS Marconi Latina - Area didattica

Parte ii - IIS Marconi Latina - Area didattica

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

912 volume V Programmazione<br />

|003600 ACCEPT COGNOME (IND-UTENTE).<br />

|003700 DISPLAY IND-UTENTE, " INSERISCI IL NOME: ".<br />

|003800 ACCEPT NOME (IND-UTENTE).<br />

|003900 DISPLAY IND-UTENTE, " INSERISCI UNA NOTA DESCRITTIVA: ".<br />

|004000 ACCEPT NOTA (IND-UTENTE).<br />

|004100*<br />

|004200 IF IND-UTENTE >= 60<br />

|004300 THEN<br />

|004400 MOVE 1 TO EOJ;<br />

|004500 ELSE<br />

|004600 DISPLAY "VUOI CONTINUARE? SI O NO",<br />

|004700 ACCEPT RISPOSTA;<br />

|004800 IF RISPOSTA = "SI"<br />

|004900 THEN<br />

|005000 NEXT SENTENCE;<br />

|005100 ELSE<br />

|005200 MOVE 1 TO EOJ.<br />

|005300*-----------------------------------------------------------------<br />

|005400 SCANSIONE.<br />

|005500 DISPLAY "INSERISCI IL COGNOME DA CERCARE:".<br />

|005600 ACCEPT RICERCA.<br />

|005700 IF RICERCA = SPACES<br />

|005800 THEN<br />

|005900 MOVE 1 TO EOJ;<br />

|006000 ELSE<br />

|006100 SET IND-UTENTE TO 1,<br />

|006200 SEARCH UTENTE<br />

|006300 AT END<br />

|006400 DISPLAY "IL COGNOME CERCATO ",<br />

|006500 "NON SI TROVA NELLA TABELLA: ",<br />

|006600 QUOTE RICERCA QUOTE;<br />

|006700 WHEN COGNOME (IND-UTENTE) = RICERCA<br />

|006800 DISPLAY "IL COGNOME ", RICERCA,<br />

|006900 "SI TROVA NELLA POSIZIONE ",<br />

|007000 IND-UTENTE.<br />

|007100*<br />

Nell’esempio sono evidenziate le righe in cui si dichiara la tabella e quelle che eseguono la<br />

scansione. Si deve osservare che prima dell’istruzione ‘SEARCH’, l’indice deve essere collocato<br />

manualmente nella posizione iniziale.<br />

L’esempio seguente mostra una variante del programma già descritto, in cui si vuole eseguire<br />

una ricerca binaria. Perché la ricerca possa avere successo, la tabella deve essere dichiarata con<br />

una dimensione variabile di elementi, inoltre non è più necessario impostare il valore iniziale<br />

dell’indice, prima della scansione.<br />

|000100 IDENTIFICATION DIVISION.<br />

|000200 PROGRAM-ID. TEST-SEARCH-KEY.<br />

|000300 AUTHOR. DANIELE GIACOMINI.<br />

|000400 INSTALLATION. NANOLINUX IV,<br />

|000500 OPENCOBOL 0.31,<br />

|000600 DATE-WRITTEN. 2005-03-12.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!