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.

1000 volume V Programmazione<br />

83.1.1 Problema del modulo di programmazione<br />

«<br />

Il linguaggio COBOL nasce imponendo dei vincoli al modo di utilizzare gli spazi orizzontali<br />

nel file del sorgente. Questi vincoli consentivano di amministrare con un certo criterio la<br />

procedura di perforazione e riutilizzo delle schede perforate.<br />

Terminata l’era delle schede perforate, i compilatori hanno cominciato a essere più disponibili<br />

e ad accettare codice COBOL scritto senza rispettare i vincoli del modulo di programmazione<br />

tradizionale (normalmente viene eliminato l’obbligo della numerazione delle righe e l’area in<br />

cui è possibile scrivere le istruzioni si estende per un numero indefinito di colonne, cancellando<br />

la funzione della zona identificativa del programma); tuttavia, il suggerimento che qui viene<br />

dato è di continuare a usare il modello originale, considerata la particolarità del linguaggio di<br />

programmazione, che perderebbe la sua logica estetica. Il listato successivo mostra l’esempio<br />

di un programma COBOL molto breve, dove si può vedere l’utilizzo delle varie aree secondo<br />

il criterio del modulo di programmazione del linguaggio.<br />

|000100 IDENTIFICATION DIVISION.<br />

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

|000300 AUTHOR. DANIELE GIACOMINI.<br />

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

|000500*<br />

|000600 ENVIRONMENT DIVISION.<br />

|000700*<br />

|000800 DATA DIVISION.<br />

|000900*<br />

|001000 WORKING-STORAGE SECTION. WSS-0000<br />

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

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

|001300 01 C PIC 9(14). WSS-0000<br />

|001400*<br />

|001500 PROCEDURE DIVISION.<br />

|001600*-----------------------------------------------------------------<br />

|001700 MAIN.<br />

|001800 DISPLAY "MOLTIPLICAZIONE DI DUE NUMERI".<br />

|001900 DISPLAY "INSERISCI IL PRIMO ELEMENTO".<br />

|002000 ACCEPT A.<br />

|002100 DISPLAY "INSERISCI IL SECONDO ELEMENTO".<br />

|002200 ACCEPT B.<br />

|002300 COMPUTE C = A * B.<br />

|002400 DISPLAY C.<br />

|002500*<br />

|002600 STOP RUN.<br />

|002700*<br />

Nell’esempio si può osservare: l’uso dell’asterisco nella settima colonna per indicare un<br />

commento; la presenza di direttive che iniziano a dalla colonna ottava e di altre che iniziano<br />

dalla colonna dodicesima; l’indicazione di un’etichetta distintiva nelle otto colonne finali<br />

(‘WSS-0000’), in corrispondenza di alcune righe (probabilmente per ricordare che quella<br />

porzione proviene da un altro programma).

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

Saved successfully!

Ooh no, something went wrong!