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.

Manuale COBOL 927<br />

|004900 DISPLAY "PICTURE: +Z(7)9.9(5)DB VALUE: ", D,<br />

|005000 " DATA: ", RECORD-D.<br />

|005100 DISPLAY "PICTURE: *(9)9.9(5)+ VALUE: ", E,<br />

|005200 " DATA: ", RECORD-E.<br />

|005300 DISPLAY "PICTURE: +*(9)9.9(4)$ VALUE: ", F,<br />

|005400 " DATA: ", RECORD-F.<br />

|005500 DISPLAY "PICTURE: +*(9)9,9(4)$ VALUE: ", G,<br />

|005600 " DATA: ", RECORD-G.<br />

|005700 DISPLAY "PICTURE: -(10)9,9(4)$ VALUE: ", H,<br />

|005800 " DATA: ", RECORD-H.<br />

|005900 DISPLAY "PICTURE: +(10)9,9(4)$ VALUE: ", I,<br />

|006000 " DATA: ", RECORD-I.<br />

|006100 STOP RUN.<br />

|006200*<br />

Compilando il programma con TinyCOBOL, l’avvio dell’eseguibile che si ottiene genera il<br />

risultato seguente:<br />

|SOURCE VALUE IS: +123456.789<br />

|PICTURE: S9(10)V9(5) VALUE: 0000123456.78900 DATA: 00001234567890{<br />

|PICTURE: +Z(9)9.9(5) VALUE: + 123456.78900 DATA: + 123456.78900<br />

|PICTURE: CR+Z(7)9.9(5) VALUE: CR+ 123456.78900 DATA: CR+ 123456.78900<br />

|PICTURE: +Z(7)9.9(5)DB VALUE: + 123456.78900DB DATA: + 123456.78900DB<br />

|PICTURE: *(9)9.9(5)+ VALUE: ****123456.78900+ DATA: ****123456.78900+<br />

|PICTURE: +*(9)9.9(4)$ VALUE: +****123456.7890$ DATA: +****123456.7890$<br />

|PICTURE: +*(9)9,9(4)$ VALUE: +********12,3456$ DATA: +********12,3456$<br />

|PICTURE: -(10)9,9(4)$ VALUE: 12,3456$ DATA: 12,3456$<br />

|PICTURE: +(10)9,9(4)$ VALUE: +12,3456$ DATA: +12,3456$<br />

Tra i vari risultati, si può osservare che la virgola è stata interpretata come un segno senza un<br />

ruolo preciso, pertanto si colloca semplicemente prima delle ultime quattro cifre, secondo la<br />

previsione del modello.<br />

Intervenendo nella sezione ‘CONFIGURATION SECTION’ è possibile invertire il ruolo del punto<br />

e della virgola, nella rappresentazione dei numeri; nello stesso modo, è possibile attribuire<br />

un simbolo differente per la valuta. L’esempio seguente è una variante di quello appena mostrato,<br />

con le modifiche necessarie per questo scopo. Si osservi che come simbolo di valuta è<br />

stata scelta la lettera «E».<br />

|000100 IDENTIFICATION DIVISION.<br />

|000200 PROGRAM-ID. PICTURE-NUMERIC-EDITED-BIS.<br />

|000300 AUTHOR. DANIELE GIACOMINI.<br />

|000400 DATE-WRITTEN. 2005-02-25.<br />

|000500*<br />

|000600 ENVIRONMENT DIVISION.<br />

|000700 CONFIGURATION SECTION.<br />

|000800 SPECIAL-NAMES. DECIMAL-POINT IS COMMA<br />

|000900 CURRENCY SIGN IS "E".<br />

|001000*<br />

|001100 DATA DIVISION.<br />

|001200*<br />

|001300 WORKING-STORAGE SECTION.

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

Saved successfully!

Ooh no, something went wrong!