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.
Manuale COBOL 945<br />
L’esempio mostra in particolare il concatenamento che si vuole ottenere. Si ricorda che non è<br />
importante se le variabili utilizzate nell’istruzione sono alfanumeriche o numeriche, perché è<br />
il compilatore che provvede a convertire tutto nel modo più appropriato al tipo di dispositivo<br />
che deve emettere il messaggio.<br />
82.12.7 Istruzione «DIVIDE»<br />
L’istruzione ‘DIVIDE’ consente di eseguire delle divisioni, fornendone il risultato ed<br />
eventualmente il resto. Sono previsti diversi formati per l’utilizzo di questa istruzione.<br />
«<br />
Nello schema sintattico appena mostrato, si vede che dopo la parola chiave ‘DIVIDE’ viene<br />
indicato un valore, in forma costante o attraverso una variabile; questo valore viene diviso<br />
per la variabile indicata dopo la parola chiave ‘INTO’ e il risultato viene assegnato alla stessa<br />
variabile che funge da divisore. Se appaiono più variabili dopo la parola ‘INTO’, la divisione<br />
viene ripetuta per ognuna di quelle, assegnando rispettivamente il risultato.<br />
L’opzione ‘ROUNDED’ richiede di eseguire un arrotondamento se la variabile ricevente non può<br />
rappresentare in modo esatto il valore; l’opzione ‘SIZE ERROR’ serve a eseguire un’istruzione<br />
nel caso una delle variabili riceventi non possa accogliere la porzione più significativa del<br />
valore ottenuto dalla somma. Si osservi l’esempio seguente:<br />
|000000 DIVIDE 100 INTO A.<br />
Supponendo che la variabile ‘A’, prima della divisione contenga il valore 5, dopo l’operazione<br />
contiene il valore 20 (100/5). Si potrebbe scrivere la stessa cosa utilizzando l’istruzione<br />
‘COMPUTE’:<br />
|000000 COMPUTE A = 100 / A.<br />
Lo schema sintattico successivo mostra l’utilizzo di ‘DIVIDE’ in modo da non alterare i valori<br />
utilizzati come divisori: