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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Programmare in COBOL 1011<br />

Viene eseguito il paragrafo ‘LAVORO’ ripetutamente, terminando il ciclo quando la<br />

variabile ‘EOJ’ contiene il valore uno.<br />

Il programma si arresta perché incontra l’istruzione ‘STOP RUN’.<br />

Paragrafo ‘LAVORO’<br />

Viene eseguito tramite l’istruzione ‘PERFORM’ il paragrafo ‘SOMMA’ ripetutamente, decrementando<br />

il valore della variabile ‘B’, fino a zero, quando il ciclo termina. A quel punto,<br />

la variabile ‘C’ contiene il risultato del prodotto, che viene visualizzato con l’istruzione<br />

‘DISPLAY’.<br />

Il programma riceve dall’esterno una parola: un ‘SI’ o un ‘NO’; se viene fornita la stringa<br />

‘SI’ (scritta con lettere maiuscole) il programma azzera il contenuto della variabile ‘C’<br />

ed esegue il paragrafo ‘INSERIMENTO-DATI’, altrimenti, viene messo il valore uno nella<br />

variabile ‘EOJ’.<br />

Paragrafo ‘INSERIMENTO-DATI’<br />

Il paragrafo riceve dall’esterno i valori per le variabili ‘A’ e ‘B’.<br />

Paragrafo ‘SOMMA’<br />

Viene sommato al contenuto di ‘C’ il valore di ‘A’.<br />

Una copia di questo file dovrebbe essere disponibile presso 〈allegati/cobol/ELM0500.cob 〉.<br />

|000100 IDENTIFICATION DIVISION.<br />

|000200 PROGRAM-ID. ELM0500.<br />

|000300 AUTHOR. DANIELE GIACOMINI.<br />

|000400 DATE-WRITTEN. 1985-02-14.<br />

|000500*<br />

|000600 ENVIRONMENT DIVISION.<br />

|000700*<br />

|000800 DATA DIVISION.<br />

|000900*<br />

|001000 WORKING-STORAGE SECTION.<br />

|001100 01 A PIC 9(7).<br />

|001200 01 B PIC 9(7).<br />

|001300 01 C PIC 9(14) VALUE ZERO.<br />

|001400 01 EOJ PIC 9 VALUE ZERO.<br />

|001500 01 RISPOSTA PIC XX.<br />

|001600*<br />

|001700 PROCEDURE DIVISION.<br />

|001800*------------------------- LIVELLO 0 -----------------------------<br />

|001900 MAIN.<br />

|002000 PERFORM INSERIMENTO-DATI.<br />

|002100 PERFORM LAVORO UNTIL EOJ = 1.<br />

|002200*<br />

|002300 STOP RUN.<br />

|002400*------------------------- LIVELLO 1 -----------------------------<br />

|002500 LAVORO.<br />

|002600 PERFORM SOMMA VARYING B FROM B BY -1 UNTIL B = 0.<br />

|002700 DISPLAY C.<br />

|002800*<br />

|002900 DISPLAY "VUOI CONTINUARE? SI O NO".<br />

|003000 ACCEPT RISPOSTA.

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

Saved successfully!

Ooh no, something went wrong!