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.
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).