Rexx - Sottoprogrammi

In qualsiasi linguaggio di programmazione, l'intero programma è suddiviso in moduli logici. Ciò semplifica la scrittura di codice che può essere mantenuto facilmente. Questo è un requisito fondamentale per qualsiasi linguaggio di programmazione.

In Rexx, i moduli possono essere scritti utilizzando subroutine e funzioni. Diamo un'occhiata alle subroutine in dettaglio.

Definizione di una subroutine

La sintassi di una dichiarazione di funzione è la seguente:

FunctionName: 
   Statement#1 
   Statement#2 
   …. 
   Statement#N

Dove,

  • FunctionName - Questo è il nome assegnato alla subroutine.

  • Statement#1 .. Statement#N - Questi sono l'elenco delle istruzioni che compongono la subroutine.

Il seguente programma è un semplice esempio che mostra l'uso delle subroutine.

/* Main program */ 
call add 
exit 
add: 
a = 5 
b = 10 
c = a + b 
say c

Le seguenti cose dovrebbero essere annotate sul programma di cui sopra:

  • Stiamo definendo una subroutine chiamata add.

  • La subroutine esegue una semplice funzionalità di aggiunta.

  • L'istruzione exit deve essere utilizzata per indicare la fine del programma principale.

L'output del programma precedente sarebbe il seguente:

15

Lavorare con gli argomenti

È anche possibile lavorare con argomenti in Rexx. Il seguente esempio mostra come questo può essere ottenuto.

/* Main program */ 
call add 1,2 
exit 
add: 
PARSE ARG a,b 
c = a + b 
say c

Le seguenti cose dovrebbero essere annotate sul programma di cui sopra:

  • Stiamo definendo una subroutine chiamata add che assume 2 parametri.

  • Nelle subroutine, i 2 parametri vengono analizzati utilizzando le parole chiave PARSE e ARG.

L'output del programma precedente sarebbe il seguente:

3

Metodi diversi per gli argomenti

Diamo un'occhiata ad alcuni altri metodi disponibili per gli argomenti.

arg

Questo metodo viene utilizzato per restituire il numero di argomenti definiti per la subroutine.

Syntax -

arg()

Parameters - Nessuno

Return Value - Questo metodo restituisce il numero di argomenti definiti per la subroutine.

Example -

/* Main program */ 
call add 1,2 
exit 
add: 
PARSE ARG a,b 

say arg() 
c = a + b 
say c

Quando eseguiamo il programma sopra, otterremo il seguente risultato.

2 
3

arg (indice)

Questo metodo viene utilizzato per restituire il valore dell'argomento nella posizione specifica.

Syntax -

arg(index)

Parameters

  • Index - Posizione dell'indice dell'argomento da restituire.

Return Value - Questo metodo restituisce il valore dell'argomento nella posizione specifica.

Example -

/* Main program */ 
call add 1,2 
exit 
add: 
PARSE ARG a,b 

say arg(1) 
c = a + b 
say c

Quando eseguiamo il programma sopra, otterremo il seguente risultato.

1 
3