Inhalt
Index
Support Über uns
Home

2.4.37 SUBTRACT



Beschreibung:

Der SUBTRACT - Befehl subtrahiert von einem oder mehreren Datenfeldern die angegebenen Werte. Das Ergebnis kann in mehreren Feldern abgestellt und bei Bedarf gerundet werden.


 
Format1


SUBTRACT Wert1 [Wert2 ...] FROM Datenfeld1 [ROUNDED] [Datenfeld2 [ROUNDED] ...]

[ON SIZE ERROR Befehlssequenz1] [NOT ON SIZE ERROR Befehlssequenz2] [END-SUBTRACT]



 
Format2


SUBTRACT Wert1 [Wert2 ...] FROM Datenfeld1 GIVING Datenfeld2 [ROUNDED] [Datenfeld3 [ROUNDED] ...]

[ON SIZE ERROR Befehlssequenz1] [NOT ON SIZE ERROR Befehlssequenz2] [END-SUBTRACT]


Die Summe der angegebenen Werte wird von den Datenfeldern abgezogen und, falls angegeben, entsprechend gerundet und abgespeichert.

Bei der Angabe von GIVING wird die Summe der Werte von Datenfeld1 abgezogen und in Datenfeld2 [Datenfeld3 ...] entsprechend der angegebenen Rundung abgespeichert. Der Inhalt von Datenfeld1 bleibt unverändert.

Tritt ein Überlauf auf wird Befehlssequenz1 (falls angegeben) ausgeführt, wenn nicht, wird Befehlssequenz2 (falls angegeben) ausgeführt.

END-SUBTRACT beendet den Ausführungsbereich des SUBTRACT - Befehls.


Beispielprogramm subtract.cob Ausgabe von subtract.cob
      *c32 %;slink §
       identification division.
        program-id.     SUBTRACT Demo
       environment division.
        set cwsize to '0:0 0:0 60:18'.
        set cfont to 'fixedsys'.
       data division.
       working-storage section.
        77 f1           pic 9(4)V99    value 1,0.
        77 f2           pic 9(3)       value -2.
        77 f3           pic 9(5)v999   value 3,0.
        77 ant          pic x.
       procedure division.
        display 'Start: f1 pic 9(4)v99 f2 pic 9(3) f3 pic 9(5)v999'.
        display '           ' f1 '          ' f2 '     ' f3.
        display 'subtract 1 from f1 f2 f3'.
        subtract 1 from f1 f2 f3.
        perform showres
        subtract f1 f2 from f3.
        display 'subtract f1 f2 from f3'.
        perform showres
        display 'subtract f1 f2 from f3 giving f1 f2'.
        subtract f1 f2 from f3 giving f1 f2.
        perform showres.
        display 
         "subtract 20 from f1 f2 f3 not on size error display 'ok'".
        call getchar.
        subtract 20 from f1 f2 f3 not on size error display 'ok'.
        perform showres1.
        display 
         "subtract 980 from f1 f2 f3 not on size error display 'ok'"
        display " on size error display 'overflow'"
        display " end-subtract"
        call getchar.
        subtract 980 from f1 f2 f3 not on size error display 'ok'
         on size error display 'overflow'
        end-subtract
        perform showres1.
        stop run.


       showres section.
        call getchar.
       showres1.
        display '           ' f1 '          ' f2 '     ' f3.
        call getchar.




Siehe auch Add Multiply Divide Compute

Zurück zu Acc-Cobol String Statement    Hoch zu Procedure Divison in COBOL    Weiter zu UNLOCK
Entwickler Portal Impressum AGB Kontakt


© 1980-2017 Acc Computertechnik GmbH All rights reserved.