ACCEPT
浠庨敭鐩樻垨鍏朵粬杈撳叆璁懼璇誨彇鏁版嵁銆?BR> ACCEPT A FROM DEV. 浠嶥EV璇誨彇鏁版嵁鍒癆錛屼篃鍙互鐪佺暐FROM DEV錛岃〃紺轟粠閿洏璇誨彇銆?BR> ACCEPT A FROM DATE/DAY/DAY-OF-WEEK/TIME.璇誨彇鏃ユ湡錛岃〃紺轟負6涓瓧絎︼紝濡?90909錛?999騫?鏈?鏃ワ級銆?BR> 璇誨彇褰撳墠鏃ユ湡鍦ㄥ勾搴︼紙鍓?浣嶏級涓負絎嚑澶╋紙鍚?浣嶏級錛岃〃紺轟負6涓瓧絎︼紝濡?994騫?鏈?鏃ヨ〃紺轟負94091銆?BR> 璇誨彇褰撳墠鏄熸湡鍑狅紝琛ㄧず涓?浣嶅瓧絎︺?琛ㄧず鏄熸湡涓錛?琛ㄧず鏄熸湡鏃ャ?BR> 璇誨彇褰撳墠鏃墮棿錛岃〃紺轟負8浣嶅瓧絎︺傜簿紜埌姣銆傚涓嬪崍2錛?1琛ㄧず涓?4410000銆?/P>
DISPLAY
灝嗘暟鎹啓鍏ヨ緭鍑鴻澶囥傚鐩戣鍣紙monite錛夛紝緋葷粺杈撳嚭嫻佸拰鎿嶄綔鍛樻帶鍒跺彴錛坈onsole錛夈?BR> DISPLAY AAAAA BBBBB [UPON DEV] [WITH NO ADVANCING]
濡傛灉浣跨敤UPON閫夐」錛宒ev瑕佷笌special-names孌典腑鐨勭‖浠跺悕鐩稿叧鑱斻?BR> 濡傛灉浣跨敤no advancing閫夐」錛屽垯杈撳嚭鏈鍚庝竴涓瓧絎﹀悗杈撳嚭璁懼浠嶇劧淇濇寔鍘熶綅錛屼嬌涓嬩竴鏉isplay璇彞榪樺湪璇ヤ綅緗樉紺恒傚惁鍒欏彲鑳藉埌涓嬩竴琛屾樉紺恒?/P>
INITIALIZE
鍒濆鍖栨暟鎹紝鏁板瓧鍜屾暟瀛楃紪杈戞暟鎹」鍒濆鍖栦負0錛屽叾浠栧垵濮嬪寲涓虹┖鏍箋?/P>
INSPECT TALLYING
璁$畻欏圭洰涓瀛楃涓插嚭鐜扮殑嬈℃暟銆?BR> INSPECT AA TALLYING BB FOR ALL 鈥淓E鈥? 浠嶢A涓煡鎵炬湁澶氬皯涓狤E錛屽皢涓暟鍐欏叆BB銆?BR> INSPECT AA TALLYING BB FOR CHARACTERS BEFORE 鈥淓鈥? 浠嶢A涓煡鎵綞鍓嶉潰鏈夊灝戜釜瀛楃錛屽皢涓暟鍐欏叆BB銆?BR> INSPECT AA TALLYING BB FOR CHARACTERS AFTER 鈥淐鈥?BEFORE 鈥淓鈥? 浠嶢A涓煡鎵綜鍚庨潰E鍓嶉潰鏈夊灝戜釜瀛楃錛屽皢涓暟鍐欏叆BB銆?BR> INSPECT AA TALLYING BB FOR LEADING 鈥淓鈥? 浠嶢A涓涓涓瓧絎﹀紑濮嬫煡鎵炬湁澶氬皯涓狤錛屽鏋滄病鏈夊氨緇撴潫鎿嶄綔錛屾湁灝卞皢涓暟鍐欏叆BB錛岀洿鑷蟲病鏈夈?BR> INSPECT AA TALLYING BB FOR LEADING 鈥淓鈥?AFTER 鈥淐鈥? 浠嶢A涓瑿鍚庨潰寮濮嬫煡鎵炬湁澶氬皯涓狤錛屽鏋滄病鏈夊氨緇撴潫鎿嶄綔錛屾湁灝卞皢涓暟鍐欏叆BB錛岀洿鑷蟲病鏈夈?BR>緇勫悎渚嬪瓙錛?BR> 77 CS PIC X(9) VALUE "REELWHEEL".
77 COUNT-0.
77 COUNT-1.
77 COUNT-2.
MOVE 0 TO COUNT-0,COUNT-1,COUNT-2.
INSPECT CS TALLYING
COUNT-0 FOR ALL "E",
COUNT-1 FOR LEADING "W" AFTER "L",
COUNT-2 FOR CHARACTERS.
紼嬪簭棣栧厛鍒ゆ柇鐨勬槸瀛楃"R",鎵цCOUNT-0 FOR ALL "E"錛屽洜涓虹涓涓瓧絎︿笉鏄?E"錛屾墍浠ョ▼搴忚漿鑰屾墽琛孋OUNT-1 FOR LEADING "W" AFTER "L"錛屼篃涓嶇鍚堣姹傦紝
浜庢槸紼嬪簭鎵цCOUNT-2 FOR CHARACTERS錛孋OUNT-2 =1銆傜劧鍚庡瓧絎︿覆寰涓嬩竴浣嶏紝鍒ゆ柇"E",鎵цCOUNT-0 FOR ALL "E"錛岀鍚堣姹傦紝鍒機OUNT-0=1銆?BR> 鏈変簡婊¤凍鏉′歡鐨勫垽鏂紝鍒欎綑涓嬬殑鍒ゆ柇涓嶅啀鎵ц錛屽瓧絎︿覆鍐嶅線涓嬩竴浣嶏紝鍒ゆ柇"E"錛屽垯COUNT-0=2銆傛帴鐫鍒ゆ柇"L",鍒機OUNT-2 =2銆備互姝ょ被鎺紝鏈鍚庣粨鏋滀負COUNT-0=4錛?BR> COUNT-1=1錛孋OUNT-2=4銆?BR>INSPECT REPLACING
鐢ㄥ彟涓涓瓧絎︿覆鏇挎崲榪欎釜瀛楃涓層?BR> 榪樼敤涓婇潰鐨勪緥瀛愩?BR> INSPECT CS REPLACING ALL "E" BY "Y". 緇撴灉"RYYLWHYYL"
INSPECT CS REPLACING CHARACTERS BY "Z" AFTER "L". 緇撴灉"REELZZZZZ"
INSPECT CS REPLACING LEADING "E" BY "Y". 緇撴灉涓嶅彉
INSPECT CS REPLACING LEADING "E" BY "Z" AFTER "H". 緇撴灉"REELWHZZL"
INSPECT CS REPLACING FIRST "E" BY "I". 緇撴灉"RIELWHEEL"
INSPECT CS REPLACING FIRST "EE" BY "00",ALL "WH" BY "TH",CHARACTERS BY SPACE. 緇撴灉" 00 TH "
INSPECT CONVERTING
灝辨槸INSPECT REPLACING鐨勭緝鍐欍?BR> INSPECT CS CONVERTING "EE" TO "00". 涔熷彲浠ュ姞涓夿EFORE錛孉FTER銆?/P>
STRING
灝嗗嚑涓瓧絎︿覆鍚堝茍鎴愪竴涓瓧絎︿覆銆?BR> STRING A DELIMITED BY SPACE錛? 錛? DELIMITED BY SIZE INTO C.鍋囪A涓殑鍐呭鏄?HELLO",鍒欑粨鏋滄槸"HELLO !".
DELIMITED BY SPACE鎰忔濇槸紕板埌絀烘牸錛屾垨鍒癆鐨勭粨灝炬垨C鐨勭粨灝撅紝鍒欏悎騫禔瀛楃涓茬粨鏉熴?BR> DELIMITED BY SIZE鎰忔濇槸鍒? 錛?鐨勭粨灝炬垨C鐨勭粨灝撅紝鍒欏悎騫? 錛?瀛楃涓茬粨鏉熴?BR> STRING A INTO B POINTER C ON OVERFLOW PROC1 NOT ON OVERFLOW PROC2.
灝咥瀛楃涓插鍒跺埌B涓敱C寮濮嬬殑鍦板潃澶勩傚鏋淐灝忎簬1鎴栧ぇ浜嶣鐨勯暱搴︼紝鎴朅鐨勯暱搴﹀ぇ浜嶣涓瑿鍒扮粨灝懼鐨勯暱搴︼紝鍒欏彂鐢?BR> OVERFLOW婧㈠嚭錛屾墽琛孭ROC1銆?/P>
UNSTRING
灝嗕竴涓瓧絎︿覆涓殑瀛楃鎸夌収瑕佹眰鏀懼叆澶氫釜鍙橀噺涓?BR> UNSTRING AAA [DELIMITED BY [ALL] B [OR [ALL] C] ...] INTO { C [DELIMITER IN D] [COUNT IN E] } ...[WITH POINTER F] [TALLYING IN G] [ON OVERFLOW PROC1] [NOT ON OVERFLOW PROC2] [END-UNSTRING]
灝咥AA涓殑瀛楃鏀懼叆C錛屽鏋滆繕鏈夊叾浠栧彉閲忥紝濡侰2錛屽垯絳塁鏀炬弧鍚庢斁鍏2銆?BR> DELIMITED BY鍜孲TRING涓殑浣滅敤涓鏍楓傝〃紺哄皢AAA涓埌B涓烘鐨勫瓧絎﹀彇鍑恒傚鏋滄湁OR錛屽垯琛ㄧず鍒癇鎴朇瀛楃涓烘鐨勫瓧絎﹀彇鍑恒傚鏋滄湁ALL錛屽垯濡傛灉鍑犱釜鐩稿悓鐨凚鍦ㄤ竴璧鳳紝鍒欒涓烘槸涓涓狟銆?BR> DELIMITER IN 灝咮鏀懼叆D錛岀煡閬撴槸鍝釜瀛楃涓哄垎闅旂銆?BR> COUNT IN 瀹為檯澶嶅埗鍒癈涓殑瀛楃鏁版斁鍏涓?BR> WITH POINTER 鍜孲TRIGN涓竴鏍楓?BR> TALLYING IN 璁$畻鏈夊嚑涓帴鍙楅」銆傝闂竴涓柊鐨勬帴鍙楅」錛孏鍊煎姞1銆?BR>渚嬪瓙錛?BR> 03 CITY PIC X(10).
O3 ZIP PIC X(10).
77 TEST PIC X(20).
MOVE "NEW YORK,NY 10017" TO TEST.
UNSTRING TEST DELIMITED BY "," INTO CITY,ZIP.
鎵ц緇撴灉CITY鍊兼槸NEW YORK.ZIP鐨勫兼槸NY 10017銆?/P>
閫昏緫鍜屾帶鍒惰鍙?BR> IF (A [NOT] > B) 絳変環浜?IF (A [NOT] GREATER THAN B)
IF (A [NOT] < B) 絳変環浜?IF (A [NOT] LESS THAN B)
IF (A [NOT] = B) 絳変環浜?IF (A [NOT] EQUAL TO B)
IF (A >= B) 絳変環浜?IF (A GREATER THAN OR EQUAL TO B)
IF (A <= B) 絳変環浜?IF (A LESS THAN OR EQUAL TO B)
IF A IS [NOT] NUMERIC 鏁板瓧鍜屽彲閫夌鍙?BR> IF A IS [NOT] ALPHABETIC A~Z,a~z瀛楃鍜岀┖鏍?BR> IF A IS [NOT] ALPHABETIC-LOWER a~z瀛楃鍜岀┖鏍?BR> IF A IS [NOT] ALPHABETIC-UPPER A~Z瀛楃鍜岀┖鏍?BR> IF A IS [NOT] CLASS-NAME SPECIAL-NAMES瀹氫箟鐨勫瓧絎﹂泦
渚嬪錛歋PECIAL-NAMES.
CLASS MYDEFINE IS "12345+ABCDE-".
鍒ゆ柇鍙橀噺鏄惁瀹氫箟浜嗘暟鍊箋傝繖涓彉閲忔槸88灞傜殑錛屼笖瑕佷笌涓涓暟鎹」鍏寵仈銆?BR> 03 STATE PIC XX.
88 CON VALUES ARE "A","B","C".
IF CON ...
鍒ゆ柇鍘傚瀹氫箟榪愯寮鍏崇殑寮/鍏崇姸鎬併?BR> SPECIAL-NAMES.
SWITCH-A ON STATUS IS A-ON ,OFF STATUS IS A-OFF.
IF A-ON...
鑻ュ紑鍏沖湪寮浣嶇疆錛屽垯IF A-ON榪斿洖TRUE銆?/P>
IF A IS [NOT] POSITIVE 鍒ゆ柇鏄惁澶т簬0
IF A IS [NOT] NEGATIVE 鍒ゆ柇鏄惁灝忎簬0
IF A IS [NOT] ZERO 鍒ゆ柇鏄惁絳変簬0
COBOL鏀寔NOT ,AND ,OR 鎿嶄綔銆?/P>
PERFORM
榪囩▼璋冪敤錛屼絾鏄笉浼犻掑弬鏁般?BR> PERFORM PROC1 [THROUGH PROC2]
鎵ц瀹孭ROC1鍐嶆墽琛孭ROC2.娌℃湁THROUGH(THRU)灝卞彧鎵цPROC1.
PERFORM PROC1 [THRU PROC2] N TIMES
鎵цPROC1[鎴栬呰繕鏈塒ROC2]N嬈°?BR> PERFORM PROC1 [THRU PROC2] [WITH TEST BEFORE/AFTER] UNTIL A NOT EUQAL 0.
鎵цPROC1[鎴栬呰繕鏈塒ROC2]鐩村埌A涓嶇瓑浜?銆俉ITH TEST BEFORE/AFTER鎸囧畾鍦ㄧ涓嬈℃墽琛屼箣鍓嶈繕鏄箣鍚庡垽鏂潯浠躲傞粯璁ゆ槸BEFORE錛屾墽琛屼箣鍓嶅垽鏂?BR> PERFORM PROC1 [THRU PROC2] [WITH TEST BEFORE/AFTER] VARYING A FROM B BY C UNTIL CONDITION1 [AFTER D FROM E BY F UNTIL CONDITION2].
鐩稿綋浜嶧OR寰幆錛屽皢A鐨勫間粠B寮濮嬶紝浠涓哄崟浣嶉掑錛岀洿鍒版弧瓚矯ONDITION1銆侫FTER璇彞鏄竴涓祵濂楃殑FOR 寰幆銆俈ARYING鏄寰幆錛孉FTER鏄唴寰幆銆侫錛孊鍙互鏄儲寮曘?/P>
榪囩▼涔熷彲浠ョ洿鎺ュ啓鍏ERFORM涓備絾鏄疶HROUGH灝變笉濂界敤浜嗐傝娉曞涓?錛?BR> PERFORM 榪囩▼璇彞 END-PERFORM.
PERFORM N TIMES 榪囩▼璇彞 END-PERFORM.
PERFORM [WITH TEST BEFORE/AFTER] UNTIL CONDITION 榪囩▼璇彞 END-PERFORM.
PERFORM [WITH TEST BEFORE/AFTER] VARYING A FROM B BY C UNTIL CONDITION1 榪囩▼璇彞 END-PERFORM.
IF璇彞
IF CONDITION THEN STATEMENTS1/NEXT SENTENCE ELSE STATEMENTS2 END-IF/NEXT SENTENCE/ENDIF
NEXT SENTENCE灝嗚煩鍑篒F鎿嶄綔璇彞鎵ц涓嬩竴鏉¤鍙ャ?BR> IF璇彞涓笉瑕佷嬌鐢?鍙ュ彿銆?鍙ュ彿灝嗙粨鏉熸墍鏈塈F璇彞銆傝緇撴潫涓涓祵濂楃殑IF璇彞錛屽彲浠ヤ嬌鐢‥ND-IF鎴栬匩EXT SENTENCE.濡?BR> IF A IF B END-IF ELSE C END-IF.鎴栬?BR> IF A IF B ELSE NEXT SENTENCE ELSE C END-IF.
EVALUATE
鐩稿綋浜嶴WITCH CASE璇彞銆?BR> EVALUATE A
WHEN B ...
WHEN 0 THRU 100 ...(FROM 0 TO 100)
WHEN OTHER ...
[END-EVALUATE]
棣栧厛寰楀埌A鐨勭粨鏋滐紝鍜學HEN璇彞鐨勫弬鏁版瘮杈冿紝濡傛灉鍜孊鐩哥瓑錛屽氨鎵цB鍚庣殑鎿嶄綔錛屾墽琛屽畬浜嗕笉鍐嶆墽琛屽悗闈㈢殑WHEN璇彞銆傚鏋滀笉絳夊氨鎵ц涓嬩竴鏉HEN璇彞銆傚鏋滄病鏈夌浉絳夌殑灝辨墽琛學HEN OTHER璇彞銆?BR> EVALUATE A ALSO B
WHEN C ALSO D ...
WHEN E ALSO F ...
WHEN OTHER ...
瀵逛簬鏈夊涓垽鏂潯浠剁殑錛岃澶氫釜鏉′歡鍚屾椂婊¤凍銆傚涓婅C=A鍚屾椂D=B錛屾墠鎵цWHEN璇彞銆?/P>
CONTINUE
緇х畫鎵ц涓嬮潰鐨勭▼搴忋?/P>
GO TO
GO TO PROC1 [DEPENDING ON N] DEPENDING ON N灝嗚煩杞埌娓呭崟涓殑絎琋涓狿ROC.
EXIT
涓鑸負鏈鍚庝竴鍙ヨ瘽銆?/P>
STOP
STOP RUN 緇撴潫紼嬪簭銆?/P>
ALTER
ALTER PROC1 TO PROC2. 涓嶆噦浠涔堟剰鎬濓紝鍙嶆宸茬粡浠庢爣鍑嗕腑搴熼櫎浜嗚繖涓鍙ャ?/P>
ENTER
浣垮叾浠栫紪紼嬭璦涓殑璇彞鍙互鏀捐繘褰撳墠婧愮▼搴忎腑銆?BR> ENTER LANGUAGE-NAME [ROUTINE-NAME]
LANGUAGE 鏄巶瀹舵寚瀹氬彲浠ヨ緭鍏OBOL鐨勪換浣曡璦錛岃繖涓鍙ュ悗闈㈡槸鍏朵粬緙栫▼璇█鐨勮鍙ワ紝鐒跺悗瑕佺敤ENTERCOBOL琛ㄧず榪斿洖COBOL璇█銆?BR> 濡傛灉鏃犳硶灝嗗叾浠栬璦鐨勭▼搴忕洿鎺ユ斁鍏ワ紝鍙互鐢≧OUTINE-NAME寮曠敤鍏朵粬璇█緙栧啓鐨勭▼搴忋?BR>
PICTURE
聽聽聽 瀹氫箟鍩烘湰欏圭洰鐨勫叿浣撻暱搴︼紝鏍煎紡錛屾暟鎹被鍨嬨傚彲浠ョ畝鍐欐垚PIC.
聽聽聽 鏍煎紡瀛楃涓叉渶澶?0涓瓧絎︼紝鍙互鍖呭惈涓嬪垪瀛楃錛?BR>聽聽聽 A聽 瀛楁瘝A-Z,a-z,絀烘牸
聽聽聽 B聽 鎻掑叆絀烘牸
聽聽聽 P聽 鏍囬噺瀛楃錛屼唬琛ㄥ瓧孌典腑涓嶆樉紺虹殑灝忔暟鐐逛綅緗?BR>聽聽聽 S聽 浠f暟絎﹀彿錛屽疄闄呮樉紺哄彇鍐充簬欏圭洰鐨刄SAGE
聽聽聽 V聽 灝忔暟鐐逛綅緗?BR>聽聽聽 X聽 浠諱綍瀛楃
聽聽聽 Z聽 鎶戝埗鍓嶅ご鐨?騫惰漿鎹㈡垚絀哄瓧絎?BR>聽聽聽 0聽 鎻掑叆0
聽聽聽 9聽 鏁板瓧0~9
聽聽聽 /聽 鎻掑叆/
聽聽聽 ,聽 鎻掑叆,(閫楀彿涓嶈兘浣滀負瀛楃涓茬殑鏈鍚庝竴浣嶏紝鏈鍚庢椂閫楀彿鏄垎闅旂)
聽聽聽 銆?鎻掑叆銆?BR>聽聽聽 *聽 鎶戝埗鍓嶅ご鐨?騫惰漿鎹㈡垚*
聽聽聽 +聽 姝e兼彃鍏?錛岃礋鍊兼彃鍏?
聽聽聽 -聽 姝e兼彃鍏ョ┖鏍鹼紝璐熷兼彃鍏?
聽聽聽 $聽 鎻掑叆緹庡厓鍙?BR>聽聽聽 CR 姝e兼彃鍏ヤ袱涓┖鏍鹼紝璐熷兼彃鍏R
聽聽聽 DB 姝e兼彃鍏ヤ袱涓┖鏍鹼紝璐熷兼彃鍏B
渚嬪瓙錛?BR>聽聽聽 03 VAR PIC AAAAA.聽聽聽 STATE鍙橀噺闀垮害涓?涓瓧絎︼紝涓嶈兘鏈夋暟瀛楋紝絳変環浜?3 STATE PIC A(5)銆?BR>聽聽聽杈撳叆ASDFG ,鏄劇ずASDFG
聽聽聽 03 VAR PIC XXXXX.聽聽 FILLER鍙橀噺闀垮害涓?涓換鎰忓瓧絎︺傜瓑浠蜂簬03 FILLER PIC X(5)銆?BR>聽聽聽杈撳叆123AS 錛?鏄劇ず123AS
聽聽聽 03 VAR PIC 99/XXX/9999 闀垮害11錛岃緭鍏?5may2004,鏄劇ず05/may/2004
聽聽聽 03 VAR PIC 0ABXXX/9999 闀垮害11錛岃緭鍏?5may2004,鏄劇ず05 may/2004
聽聽聽 03 VAR PIC 9(3) 闀垮害3錛?~999涔嬮棿銆?BR>聽聽聽 03 VAR PIC 9(4)V99 闀垮害6錛?.00~9999.99涔嬮棿銆?BR>聽聽聽 03 VAR PIC S9(5)V99 闀垮害7錛?99999.99~99999.99涔嬮棿銆?BR>聽聽聽 03 VAR PIC 9(6)PPP 闀垮害6錛屽彲浠ユ槸1000錛?000錛?..,999999000銆傝緭鍏?234錛屾樉紺?000銆?BR>聽聽聽 03 VAR PIC PPP999 闀垮害3錛?.000001~0.000999涔嬮棿銆傝緭鍏?23錛屾樉紺?.000123銆?BR>聽聽聽 03 VAR PIC ZZZ.99錛岃緭鍏?00.50,鏄劇ず100.50;杈撳叆-51.50,鏄劇ず51.50;
聽聽聽聽聽聽聽聽聽聽聽 杈撳叆0,鏄劇ず.00.
聽聽聽 03 VAR PIC $ZZZ.ZZ-錛岃緭鍏?00.50,鏄劇ず$100.50;杈撳叆-51.50,鏄劇ず$51.50-;
聽聽聽聽聽聽聽聽聽聽聽 杈撳叆0,鏄劇ず
聽聽聽 03 VAR PIC $***,***.99CR錛岃緭鍏?000,鏄劇ず$**1000.00;杈撳叆-1000,鏄劇ず$**1000.00CR;
聽聽聽聽聽聽聽聽聽聽聽 杈撳叆0,鏄劇ず$***,***.00;杈撳叆51.5,鏄劇ず$***,*51.50
聽聽聽 03 VAR PIC $$$,$$$.99錛岃緭鍏?00.50,鏄劇ず$100.50;杈撳叆-100.50,鏄劇ず$100.50;
聽聽聽聽聽聽聽聽聽聽聽 杈撳叆0.777,鏄劇ず$.77;杈撳叆0,鏄劇ず$.00
聽聽聽 03 VAR PIC $.$$$錛岃緭鍏?.00,鏄劇ず$.00;杈撳叆0.65,鏄劇ず$.65;
聽聽聽聽聽聽聽聽聽聽聽 杈撳叆0,鏄劇ず$.00;
聽聽聽 03 VAR PIC $--錛岃緭鍏?7.7,鏄劇ず$17;杈撳叆-17.7,鏄劇ず$-17;
聽聽聽聽聽聽聽聽聽聽聽 杈撳叆-5,鏄劇ず$-5
聽聽聽 03 VAR PIC $999.99+錛岃緭鍏?00.50,鏄劇ず$100.50+;杈撳叆-100.50,鏄劇ず$100.50-;
聽聽聽 03 VAR PIC 9(3)B9(3)錛岃緭鍏?5,鏄劇ず000 055;杈撳叆1000.78,鏄劇ず001 000;
USAGE 琛ㄧず鍩烘湰鎴栫粍鏁版嵁鐨勭被鍨嬨傛湁BINARY,COMPUTATIONAL(COMP),DISPLAY,INDEX,PACKED-DECIMAL.
JUSTIFIED
聽聽聽 03 VAR1 PIC X(5) JUSTIFIED RIGHT.
聽聽聽 03 VAR2 PIC X(5).
聽聽聽 杈撳叆XYZ錛孷AR1鏄劇ず鐨勬槸"聽 XYZ",VAR2鏄劇ず鐨勬槸"XYZ聽 "銆?/P>
BLANK WHEN ZERO
聽聽聽 03 VAR PIC $999,999.99 BLANK WHEN ZERO .
聽聽聽 褰撳瓧孌靛間負0錛岃繖涓」鐩緗負鍏ㄩ儴絀烘牸銆?/P>
VALUE
聽聽聽 瀹氫箟鐨勬椂鍊欏氨璧嬪箋?BR>聽聽聽 03 VAR PIC X(5) VALUE "ABCDE".
聽聽聽 01 VAR VALUE ALL SPACES.
聽聽聽聽聽 03 VAR1 PIC XXX.
聽聽聽聽聽 03 VAR2 PIC XX.
綆楁湳璇彞
聽聽聽 COBOL涓搷浣滅鎵ц欏哄簭涓猴細鍙栨(+)銆佸彇璐?-)鏈楂樼駭錛屾寚鏁版搷浣?**)鍏舵錛屼箻(*)銆侀櫎(/)鍐嶅叾嬈★紝鍔?+)銆佸噺(-)鏈鍚庛?BR>ROUNDED聽聽 鑸嶅叆鎿嶄綔銆?BR>聽聽聽 77 A PIC 9V9 VALUE 9.1.
聽聽聽 77 B PIC 9.
聽聽聽聽聽 ADD 0.5 TO A GIVING B ON SIZE ERROR GO TO PROC1.
聽聽聽聽聽 ADD 0.5 TO A GIVING B ROUNDED ON SIZE ERROR GO TO PROC2.
聽聽聽聽聽 END-ADD.
ON SIZE ERROR 鏄綋璇彞鍑虹幇閿欒鏃舵墽琛岀殑銆傛湰渚嬩腑絎竴鍙ヨ瘽鎵ц娌℃湁閿欒錛屾墍浠N SIZE ERROR
涓嶆墽琛孭ROC1.絎簩鍙ヨ瘽錛屽綋0.5鍔犱笂9.1寰楀埌9.6錛屽洜涓烘湁ROUNDED,鎵浠ユ墽琛岃垗鍏ユ搷浣滐紝寰楀埌10銆傝孊鍙湁1浣嶆暟瀛楋紝鎵浠ュ彂鐢熼敊璇紝鎵цON SIZE ERROR鎿嶄綔錛岃煩杞墽琛孭ROC2銆偮?
CORRESPONDING(CORR)聽聽聽 鏁版嵁欏瑰悓鍚嶆椂緙栧啓澶氭潯璇彞銆侫DD鍜孲UBSTRACT鏈夋閫夐」銆?BR>聽聽聽 01 A .
聽聽聽聽聽 03 B.
聽聽聽聽聽聽聽 05 B1 PIC 999V99.
聽聽聽聽聽聽聽 05 B1 PIC 999V99.
聽聽聽聽聽聽聽 05 B1 PIC 999V99.
聽聽聽聽聽 03 C.
聽聽聽聽聽聽聽 05 B1 PIC 999V99.
聽聽聽聽聽聽聽 05 B1 PIC 999V99.
聽聽聽聽聽聽聽 05 B1 PIC 999V99.
鍒欒鍙DD CORR B TO C.鐩稿綋浜庢墽琛屼簡涓嬮潰3鏉¤鍙ャ?BR>聽聽聽 ADD B1 OF B TO B1 OF C.
聽聽聽 ADD B2 OF B TO B2 OF C.
聽聽聽 ADD B3 OF B TO B3 OF C.
緇勯」鐩笉涓瀹氳鏍煎紡鐩稿悓銆備竴涓粍欏圭洰涓殑鍐呭鍦ㄥ彟涓涓粍欏圭洰涓彲浠ユ病鏈夛紝鏁版嵁欏歸『搴忎篃鏃犲叧绱ц銆傚彧鏄弗鏍兼寜鐓ф暟鎹」鍚嶇О瀵瑰簲銆?BR>聽聽聽 ADD A,B GIVING C. END-ADD.聽聽聽聽聽聽聽聽聽聽聽聽聽 灝咥,B鐩稿姞鏀懼叆C銆?BR>聽聽聽 SUBTRACT A,B FROM C銆侲ND-SUBTRACT.聽聽聽聽聽 浠嶤涓噺鍘籄,B.
聽聽聽 MULTIPLY A BY B GIVING C. END-MULTIPLY. 灝咥,B鐩鎬箻鏀懼叆C銆?BR>聽聽聽 DIVIDE A INTO B GIVING C. END-DIVIDE.聽聽 灝咮闄や簬A鐨勭粨鏋滄斁鍏.
聽聽聽 DIVIDE A BY B GIVING C. END-DIVIDE.聽聽聽聽 灝咥闄や簬B鐨勭粨鏋滄斁鍏.
聽聽聽 DIVIDE A BY B GIVING C REMAINDER D.聽聽聽聽 灝咥闄や簬B鐨勫晢鏀懼叆C錛屼綑鏁版斁鍏.
聽聽聽 D=A-B*C.
聽聽聽 77 C PIC S99V9.
聽聽聽 77 D PIC S99V9.
聽聽聽 DIVIDE 3 INTO 7 GIVING C REMAINDER D.
聽聽聽 C鐨勫間負2.3錛孌涓?.1銆?D=7-3*2.3)
COMPUTE
聽聽聽 闄や簡鍙栦綑鎿嶄綔瑕佺敤DIVIDE澶栵紝鍏朵粬鎿嶄綔閮藉彲浠ョ敤姝よ鍙ャ傛湰璇彞姹傚間竴涓畻鏈〃杈懼紡錛屽茍灝嗙粨鏋滃瓨鏀懼湪涓涓垨鍑犱釜鍙橀噺涓?BR>COMPUTE聽 A ROUNDED,B聽 = X*Y/(N+M)+Z. 灝哫*Y/(N+M)+Z鐨勭粨鏋滃瓨鏀懼湪B涓紝鐒跺悗鑸嶅叆鍚庢斁鍏涓?/P>
MOVE
聽聽聽 MOVE A TO B.
聽聽聽 涔熷彲浠ョ敤CORR閫夐」銆?BR>聽聽聽 MOVE CORR A TO B.