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.

1024 volume V Programmazione<br />

83.2.12 ELM1300: creazione di un file sequenziale<br />

«<br />

File<br />

‘FILE-DA-SCRIVERE’ rappresenta il file che viene creato dal programma (il nome del<br />

file è ‘output.seq’). Il file è di tipo sequenziale, dove la riga ha una dimensione fissa;<br />

non si prevede l’inserimento di un codice di interruzione di riga alla fine delle righe.<br />

Variabili<br />

‘RECORD-DA-SCRIVERE’ è la riga del file da creare;<br />

‘EOJ’ quando assume il valore 1 il programma si arresta.<br />

Descrizione<br />

Il programma riceve dall’esterno il contenuto di ogni riga e di volta in volta lo registra<br />

nel file. Il programma termina il lavoro quando la stringa inserita contiene solo asterischi<br />

(almeno 30, pari alla larghezza massima prevista di ogni riga).<br />

Paragrafo ‘MAIN’<br />

Viene aperto in scrittura il file da creare.<br />

Viene eseguito il paragrafo ‘INSERIMENTO-DATI’.<br />

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

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

Viene chiuso il file da creare.<br />

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

Paragrafo ‘LAVORO’<br />

Si controlla se la stringa inserita contiene soltanto asterischi; se è così viene messo il<br />

valore uno nella variabile ‘EOJ’, altrimenti viene scritta la riga inserita nel file da scrivere<br />

e subito dopo viene eseguito nuovamente il paragrafo ‘INSERIMENTO-DATI’.<br />

Paragrafo ‘INSERIMENTO-DATI’<br />

Il paragrafo riceve dall’esterno il contenuto di una riga da registrare nel file, tenendo<br />

conto che vengono prese in considerazione al massimo i primi 30 caratteri, pari alla<br />

dimensione della variabile che deve accogliere i dati.<br />

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

|000100 IDENTIFICATION DIVISION.<br />

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

|000300 AUTHOR. DANIELE GIACOMINI.<br />

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

|000500*<br />

|000600 ENVIRONMENT DIVISION.<br />

|000700*<br />

|000800 INPUT-OUTPUT SECTION.<br />

|000900*<br />

|001000 FILE-CONTROL.<br />

|001100*<br />

|001200 SELECT FILE-DA-SCRIVERE ASSIGN TO "output.seq"<br />

|001300 ORGANIZATION IS SEQUENTIAL.

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

Saved successfully!

Ooh no, something went wrong!