Parte ii - IIS Marconi Latina - Area didattica
Parte ii - IIS Marconi Latina - Area didattica
Parte ii - IIS Marconi Latina - Area didattica
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
922 volume V Programmazione<br />
«<br />
82.9.3 Variabili alfanumeriche modificate<br />
Il modello di definizione di una variabile alfanumerica può contenere simboli che applicano<br />
una modifica al valore stesso. La modifica avviene nel momento in cui il valore viene ricevuto.<br />
|Tabella 82.114. Simboli del modello di definizione di una variabile alfanumerica che<br />
descrivono una modifica del valore ricevuto.<br />
Simbolo<br />
Descrizione<br />
| B Richiede l’inserimento di uno spazio.<br />
| 0 Richiede l’inserimento di uno zero.<br />
| / Se il compilatore lo permette, inserisce una barra obliqua.<br />
| , Se il compilatore lo permette, inserisce una virgola. Si osservi comunque che<br />
non può apparire la virgola come simbolo conclusivo del modello, perché in tal<br />
caso assumerebbe il significato di un delimitatore.<br />
Teoricamente, ogni altro simbolo che non abbia un significato preciso per la realizzazione<br />
dei modelli di definizione delle variabili, dovrebbe essere aggiunto<br />
tale e quale; in pratica, molto dipende dalle caratteristiche del compilatore.<br />
A titolo di esempio, viene mostrato un piccolo programma con due variabili scalari alfanumeriche,<br />
aventi modelli diversi, abbinate ognuna a una variabile strutturata. Alle variabili scalari<br />
viene assegnato lo stesso valore, in modo da poter confrontare come questo viene inteso e rappresentato.<br />
Nell’esempio si tenta in particolare di inserire in un modello una barra obliqua e<br />
una virgola.<br />
|000100 IDENTIFICATION DIVISION.<br />
|000200 PROGRAM-ID. PICTURE-ALPHANUMERIC-EDITED.<br />
|000300 AUTHOR. DANIELE GIACOMINI.<br />
|000400 DATE-WRITTEN. 2005-02-23.<br />
|000500*<br />
|000600 ENVIRONMENT DIVISION.<br />
|000700*<br />
|000800 DATA DIVISION.<br />
|000900*<br />
|001000 WORKING-STORAGE SECTION.<br />
|001100 01 RECORD-A.<br />
|001200 02 A PICTURE X(15) USAGE IS DISPLAY.<br />
|001300 01 RECORD-B.<br />
|001400 02 B PICTURE ABX09,/X(8) USAGE IS DISPLAY.<br />
|001500*<br />
|001600 PROCEDURE DIVISION.<br />
|001700*<br />
|001800 MAIN.<br />
|001900 MOVE "ABCDEFGHIJKLMNOPQRSTUVWXYZ" TO A.<br />
|002000 MOVE "ABCDEFGHIJKLMNOPQRSTUVWXYZ" TO B.<br />
|002100 DISPLAY "SOURCE VALUE IS: ", QUOTE,<br />
|002200 "ABCDEFGHIJKLMNOPQRSTUVWXYZ", QUOTE.<br />
|002300 DISPLAY "PICTURE: X(15) VALUE: ", QUOTE, A, QUOTE,<br />
|002400 " DATA: ", QUOTE, RECORD-A, QUOTE.<br />
|002500 DISPLAY "PICTURE: ABX09,/X(8) VALUE: ", QUOTE, B, QUOTE,