這個要看你是在什麼環境下了,如果是DOS、WINDOWS、UNIX類的作業系統,你可以用它們的字元介面,ACCEPT對應於鍵盤輸入,DISPLAY對應於螢幕輸出。
舉個例子吧,ACCEPT一個數值,然後求它的平方,DISPLAY出來,
working-storage section.
77 x pic x(10).
77 XasNum pic s9(09).
77 x2 pic 9(18).
77 x2-edit pic z(17)9.
procedure division.
display "請輸入一個數值(最大9位,可以為負數): "
with no advancing.
accept x.
move function numval(x) to XasNum.
compute x2 = XasNum ** 2.
move x2 to x2-edit.
display "這個數值的平方是: " x2-edit.
stop run.
如果是MAINFRAME環境,你要在JCL中的SYSIN中指定X的數值,至於DISPLAY的輸出結果,你要到JOB LOG中去看。
至於輸出乘法表,如下:
77 i pic 99.
77 j pic 99.
77 k pic 99.
perform varying i from 1 by 1 until i > 9
perform varying j from 1 by 1 until j > i
compute k = i * j
display i "*" j "=" k " " with no advancing
end-perform
display " "
end-perform.
這兩個程式,只要是符合COBOL ANSI 85標準的編譯器都支援,還有,我只是把必要的程式碼列了出來,像DATA DIVISION,ENVIRONMENT DIVISION, IDENTIFICATION DIVISION這些我都沒有寫。
這個要看你是在什麼環境下了,如果是DOS、WINDOWS、UNIX類的作業系統,你可以用它們的字元介面,ACCEPT對應於鍵盤輸入,DISPLAY對應於螢幕輸出。
舉個例子吧,ACCEPT一個數值,然後求它的平方,DISPLAY出來,
working-storage section.
77 x pic x(10).
77 XasNum pic s9(09).
77 x2 pic 9(18).
77 x2-edit pic z(17)9.
procedure division.
display "請輸入一個數值(最大9位,可以為負數): "
with no advancing.
accept x.
move function numval(x) to XasNum.
compute x2 = XasNum ** 2.
move x2 to x2-edit.
display "這個數值的平方是: " x2-edit.
stop run.
如果是MAINFRAME環境,你要在JCL中的SYSIN中指定X的數值,至於DISPLAY的輸出結果,你要到JOB LOG中去看。
至於輸出乘法表,如下:
working-storage section.
77 i pic 99.
77 j pic 99.
77 k pic 99.
procedure division.
perform varying i from 1 by 1 until i > 9
perform varying j from 1 by 1 until j > i
compute k = i * j
display i "*" j "=" k " " with no advancing
end-perform
display " "
end-perform.
stop run.
這兩個程式,只要是符合COBOL ANSI 85標準的編譯器都支援,還有,我只是把必要的程式碼列了出來,像DATA DIVISION,ENVIRONMENT DIVISION, IDENTIFICATION DIVISION這些我都沒有寫。