Parte ii - IIS Marconi Latina - Area didattica
Parte ii - IIS Marconi Latina - Area didattica
Parte ii - IIS Marconi Latina - Area didattica
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.