Parte ii - IIS Marconi Latina - Area didattica
Parte ii - IIS Marconi Latina - Area didattica
Parte ii - IIS Marconi Latina - Area didattica
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Manuale COBOL 983<br />
L’esempio successivo mostra un piccolo programma completo che compila in più fasi una<br />
variabile ricevente. La variabile ricevente contiene inizialmente una serie di simboli ‘#’, per<br />
consentire di vedere facilmente cosa succede al suo interno, durante le varie fasi.<br />
|Listato 82.236. Programma elementare che dimostra il funzionamento di ‘STRING’.<br />
|000100 IDENTIFICATION DIVISION.<br />
|000200 PROGRAM-ID. TEST-STRING.<br />
|000300 AUTHOR. DANIELE GIACOMINI.<br />
|000400 INSTALLATION. NANOLINUX IV,<br />
|000500 OPENCOBOL 0.31,<br />
|000600 DATE-WRITTEN. 2005-03-16.<br />
|000700*<br />
|000800 ENVIRONMENT DIVISION.<br />
|000900*<br />
|001000 DATA DIVISION.<br />
|001100*<br />
|001200 WORKING-STORAGE SECTION.<br />
|001300 77 TESTO-RICEVENTE PIC X(40) VALUE ALL "#".<br />
|001400 77 PUNTATORE PIC 99.<br />
|001500*<br />
|001600 PROCEDURE DIVISION.<br />
|001700*------------------------- LIVELLO 0 -----------------------------<br />
|001800 MAIN.<br />
|001900 MOVE 1 TO PUNTATORE.<br />
|002000 DISPLAY PUNTATORE, " ", TESTO-RICEVENTE.<br />
|002100 STRING "CIAO", SPACE, DELIMITED BY SIZE<br />
|002200 INTO TESTO-RICEVENTE WITH POINTER PUNTATORE.<br />
|002300 DISPLAY PUNTATORE, " ", TESTO-RICEVENTE.<br />
|002400 STRING "COME STAI?" DELIMITED BY SIZE<br />
|002500 INTO TESTO-RICEVENTE WITH POINTER PUNTATORE.<br />
|002600 DISPLAY PUNTATORE, " ", TESTO-RICEVENTE.<br />
|002700 MOVE 11 TO PUNTATORE.<br />
|002800 STRING "VA LA VITA?" DELIMITED BY SIZE<br />
|002900 INTO TESTO-RICEVENTE WITH POINTER PUNTATORE.<br />
|003000 DISPLAY PUNTATORE, " ", TESTO-RICEVENTE.<br />
|003100*<br />
|003200 STOP RUN.<br />
|003300*<br />
Dopo aver compilato il programma, eseguendo ciò che si ottiene, di dovrebbe vedere il risultato<br />
seguente attraverso il terminale:<br />
|01 ########################################<br />
|06 CIAO ###################################<br />
|16 CIAO COME STAI?#########################<br />
|22 CIAO COME VA LA VITA?###################<br />
Come si può vedere leggendo il sorgente del programma, dopo l’inserimento della stringa<br />
‘CIAO ’, la variabile usata come puntatore all’interno della variabile di destinazione, si trova<br />
a essere già posizionata sulla sesta colonna, in modo che un inserimento ulteriore si trovi già<br />
nella posizione necessaria. Dopo, viene riposizionato il puntatore per sovrascrivere la parola<br />
«STAI».