Vai al contenuto
eLearner.app
Modulo 3 · Lezione 1 di 25/10 nel corso~12 min
Lezioni del modulo (1/2)

Paragrafi e PERFORM

In COBOL, la modularità e la strutturazione logica del codice all'interno della PROCEDURE DIVISION non avvengono tramite funzioni o metodi, bensì attraverso i Paragrafi e l'istruzione PERFORM.

Definizione dei Paragrafi

Un paragrafo è una sezione etichettata di codice che inizia con un nome a colonna 8 (Area A) terminato da un punto ., seguito da una sequenza di istruzioni a colonna 12 (Area B).

Code
STAMPA-MESSAGGIO.
    DISPLAY "Questo è un paragrafo!".

I paragrafi consentono di suddividere programmi potenzialmente lunghissimi in blocchi riutilizzabili ed auto-documentati.

Esecuzione di Paragrafi tramite PERFORM

L'istruzione PERFORM richiama ed esegue un paragrafo, dopodiché restituisce il controllo del flusso alla riga immediatamente successiva alla chiamata del PERFORM.

Code
PROCEDURE DIVISION.
MAIN-PROCEDURE.
    DISPLAY "Inizio programma...".
    PERFORM ELABORA-DATI.
    DISPLAY "Fine programma.".
    STOP RUN.

ELABORA-DATI.
    DISPLAY "Sto elaborando i dati in memoria...".

Nel listato sopra:

  1. Viene eseguito il DISPLAY in MAIN-PROCEDURE.
  2. PERFORM ELABORA-DATI devia l'esecuzione al paragrafo ELABORA-DATI.
  3. Terminato il paragrafo ELABORA-DATI, l'esecuzione torna a MAIN-PROCEDURE per stampare "Fine programma." e arrestarsi con STOP RUN..

Prova tu

Esercizio#cobol.m3.l1.e1
Tentativi: 0Caricamento…

Definisci un paragrafo chiamato DISPLAY-TOTAL che stampa 'TOTAL IS DONE' usando DISPLAY, e richiamalo all'interno di MAIN-PROCEDURE tramite PERFORM prima di arrestare il programma.

Caricamento editor…
Mostra suggerimento

Scrivi PERFORM DISPLAY-TOTAL. a colonna 12, e sotto il blocco MAIN-PROCEDURE dichiara il paragrafo DISPLAY-TOTAL. a colonna 8.

Soluzione disponibile dopo 3 tentativi

Esercizio#cobol.m3.l1.e2
Tentativi: 0Caricamento…

Richiama sequenzialmente due paragrafi, prima INITIALIZE-DATA e poi PROCESS-DATA, all'interno del blocco MAIN-PROCEDURE.

Caricamento editor…
Mostra suggerimento

Inserisci le due istruzioni PERFORM in ordine sequenziale a colonna 12.

Soluzione disponibile dopo 3 tentativi