Definovat digitální data
Položky digitálních dat definuje klauzule OBRÁZEK. Každá devět v popisu dat představuje desetinnou číslici.
Characterswithspecialmeaningsthatcanappearare:Pindicatesleading0andtrailing0Sindicator,plusorminussignVimpliesadecimalpoint
Údaje o určitých aspektechSada čísel.
Zobrazení digitálních dat
Abyste usnadnili čtení digitálních dat při zobrazování a tisku, můžete použít příznaky (například: desetinná čárka, čárka, znak dolaru a debitní znak a kreditní znak) Formátovat číselné datové položky.
Například, Upravená-cena je upravená položka digitálních dat v následujícím kódu:
05PricePic9(5)v99.
05Upraveno-cenaPic$zz,zz9,99.
...
MovePriceToEdited-price
Zobrazená upravená cena
MoveEdited-pricetoPrice
Zobrazená cena
Ovládejte ukládání digitálních dat
Digitální data v programu COBOL lze ukládat v následujícím formátu:Externí desítkové (USAGEDISPLAY)Externí Plovoucí bod (USAGEDISPLAY)Interní Desítkové (USAGEPACKED-DECIMAL)Binární(USAGEBINARY)MístníBinárníCOMAGElo)COMBinární(USAGEPint-1USPUSP )
COMP a COMP-4 jsou ekvivalentní BINARY (binární) a COMP-3 je ekvivalentní (packed-decimal) BACKED-DECIMALCOMP.
Aritmetické operace
OBNOAritmetické operace mají následující metody: VÝPOČET, PŘIDAT, ODČÍST, NÁSOBIT a ROZDĚLIT příkazy. Služby, které lze volat v prostředí digitálního vestavěného funkčního jazyka
4.4.1ArithmeticstatementCOMPTEstatementassignsthevalueofanexpressiontooneormoredataitems.TheCOMPUTEstatementcanbeusedtoeasilycombinearithmeticoperations,andisnotsubjecttoresultstoragerestrictionssuchasADD,SUBSTRACT,MULTIPLY,andDIVIDEstatements.
4.4.1.1Příkaz ADDsyntaxe ADD1:
ADDidentifikátor-1,identifikátor-2,...TOidentifikátor-n[ZAKRUHLENÉ]
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[END-ADD]
Příklad:
ADDNUM1TONUM2.
ADDNUM1,10TONUM2.
ADDNUM1,NUM2TONUM3ONSIZEERRORPERFORM100-ERROR.
ADDSyntaxe2:
ADDidentifikátor-1,identifikátor-2,…[TO]identifikátor-nGIVINGidentifikátor-m[ZAKRUHLENÉ]
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[END-ADD]
Příklad:
ADDNUM1TONUM2GIVINGNUM3.
ADDNUM1,NUM2GIVINGNUM3.
ADDNUM1,10TONUM2GIVINGNUM3.
ADDSyntaxe3:
ADDCORRidentifikátor-1TOidentifikátor-2[ZAKRUHLENÉ]
[ONSIZEERRORprohlášení-1
[NOTONSIZEERRORprohlášení-2][END-ADD]
Příklad:
03AKTUÁLNÍ MĚSÍC.
05PAYPIC9(3)V9(2).
05TAXPIC9(2)V9(2).
03YTD.
05PAYPIC9(3)V9(2).
05TAXPIC9(2)V9(2).
p>ADDCORRRRENT-MONTHTOYTD.
4.4.1.2Příkaz SUBTRACTSUBTRACTsyntax1:
SUBTRACTidentifier-1,identifier-2,…FROMidentifier-n
[ZAKRUHLE]
[ONSIZEERRORprohlášení-1
[NOTONSIZEERRORprohlášení-2]
[END-SUBTRACT]
Příklad:
SUBTRACTNUM1FROMNUM2.
SUBTRACTsyntaxe2:
SUBTRACTidentifier-1identifier-2,…FROMidentifier-n
GIVINGidentifikátor-m[ZAKRUHLE]
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[END-SUBTRACT]
Příklad:
SUBTRACTNUM1FROMNUM2GIVINGNUM3.
SUBTRACTsyntaxe3:
SUBTRACTCORRidentifier-1FROMidentifier-2
[ZAKRUHLE]
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[END-SUBTRACT]
Příklad:
SUBTRACTCORRREC1FROMREC2.
4.4.1.3MULTIPLYpříkazMULTIPLYsyntax1:
MULTIPLYidentifier-1BYidentifier-2
[ZAKRUHLE]
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[KONEC-NÁSOBIT]
Příklad:
MULTIPLYNUM1BYNUM2.
VÍCENÁSOBNÁ syntaxe2:
MULTIPLYidentifier-1BYidentifier-2
GIVINGidentifikátor-3
[ZAKRUHLE]
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[KONEC-NÁSOBIT]
Příklad:
MULTIPLYNUM1BYNUM2GIVINGNUM3.
4.4.1.4Příkaz DIVIDEsyntaxe DIVIDE1:
DIVIDEidentifier-1INTOidentifier-2
[ZAKRUHLE]
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[END-DIVIDE]
Příklad:
DIVIDENUM1INTONUM2.
DIVIDEsyntaxe2:
DIVIDEidentifier-1INTOidentifier-2
GIVINGidentifikátor-3
[ZAKRUHLE]
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[END-DIVIDE]
Příklad:
DIVIDENUM1INTONUM2GIVINGNUM3.
DIVIDEsyntaxe3:
DIVIDEidentifier-1BYidentifier-2
GIVINGidentifikátor-3
[ZAKRUHLE]
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[END-DIVIDE]
Příklad:
DIVIDENUM1BYNUM2GIVINGNUM3.
Syntaxe DIVIDE4:
DIVIDEidentifier-1INTOidentifier-2
GIVINGidentifikátor-3
[ZAKRUHLE]
Identifikátor REMAINDER-4
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[END-DIVIDE]
Příklad:
DIVIDENUM1INTONUM2GIVINGNUM3REMAINDERNUM4.
DIVIDEsyntaxe5:
DIVIDEidentifier-1BYidentifier-2
GIVINGidentifikátor-3
[ZAKRUHLE]
Identifikátor REMAINDER-4
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[END-DIVIDE]
Příklad:
DIVIDENUM1BYNUM2GIVINGNUM3REMAINDERNUM4.
4.4.1.5COMPUTEpříkaz COMPUTEsyntaxe:
COMPUTEidentifier-1[ROUNDED],identifier-2[ROUNDED],...
=aritmetický-výraz
[ONSIZEERRORprohlášení-1]
[NOTONSIZEERRORprohlášení-2]
[KONEC VÝPOČTU]
Příklad:
COMPUTERESULT=NUM1*NUM2+NUM3-NUM4.
4.4.2ArithmeticexpressionallowsnumericdataitemstoappearPlacescanbereplacedwitharithmeticexpressions.
Aritmetické výrazy mohou mít kladné a záporné znaménka (+,-), mocninné znaménka (**), dělení nebo násobení (/,*) a znaménka plus nebo mínus (+,-).
4.4.3 Digitální vestavěné funkce Vestavěné digitální funkce se mohou objevit pouze tam, kde jsou povoleny číselné výrazy.
Thenumberbuilt-infunctionreturnsasignedvalue.Thefunctionitselfcanberegardedasatemporarydigitaldataitem.
Zde jsou některé vestavěné digitální funkce:Zpracování čísel:DÉLKA,MAX,MIN,NUMVAL,NUMVAL-C,ORD-MAX,ORD-MINDateandtime:CURRENT-DATE,DATE-TO-YYYYMMDD,...EtcMathematics:INTEGER,LOG,SUMA,SIN, COS, MOD, atd.
Příklad:
COMPUTEX=DÉLKA(ZÁZNAM).
POČÍTAČ=MAX(X,Y).