2010-12-02 7 views
1

COBOLの宿題に少し問題があります。私は人々の名前と社会保障番号を書​​き出すプログラムを作る必要があります。基本的に私はおもちゃに123456789のような数字を123-45-6789のように表示し、JSDOEのような名前をJ S DOEのように表示させます。誰かが私を助けることができますか?COBOLでスペースとダッシュを作成するには

+0

は私がOveflowスタックと我々は通常、ここで行うだけで3つのことを覚えているあなたを歓迎することを許可します)あなたが助けを受けるときに、あなたの専門分野の質問にも答えてみてください2)FAQを読んでください!! 3)あなたが良い質問と回答を見たら、システムの信頼性が、ユーザーが自分の知識を共有することによって得られるという評判に基づいているので、それをアップしてください。また、問題があれば問題を解決する答えを受け入れることを忘れないでください –

答えて

5

あなたは何かのようにする必要があります。

01 toyNumber pic 9(9). 

01 yourNumber. 
    03 a pic x(3). 
    03 b pic x(2). 
    03 c pic x(4). 

01 outNumber. 
    03 a1  pic x(3). 
    03 filler pic x value "-". 
    03 b1  pic x(2). 
    03 filler pic x value "-". 
    03 c1  pic x(4).  

と手順で:

move 123456789 to toyNumber. 
    .... 
    move toyNumber to yourNumber. 
    move a to a1. 
    move b to b1. 
    move c to c1. 

    display outNumber. 

それとも、あなたがあなたの宿題に許可されている場合、「対応する移動」使用することができます。

このヘルプが必要です。

PS:名前の秘訣は同じです...

1

COBOL !!

私はこれを長い時間の後に書いています。だから、注意してください。

 

01 SSN. 
    03 SSN-FIRST   PIC X(03) VALUE SPACES. 
    03 SSN-FDASH   PIC X  VALUE "-". 
    03 SSN-MIDDLE  PIC X(02) VALUE SPACES. 
    03 SSN-MDASH   PIC X  VALUE "-". 
    03 SSN-LAST   PIC X(04) VALUE SPACES. 

01 NAME. 
    03 FNAME   PIC X(10) VALUE SPACES. 
    03 FDASH   PIC X  VALUE SPACES. 
    03 FMIDDLE  PIC X(10) VALUE SPACES. 
    03 MDASH   PIC X  VALUE SPACES. 
    03 FLAST  PIC X(10) VALUE SPACES. 

 
2

(?古代より少ない)より現代的なアプローチ:この作業もような何か - :1

STRING SSNUMBER(1:3) DELIMITED BY SIZE 
     '-'   DELIMITED BY SIZE 
     SSNUMBER(4:5) DELIMITED BY SIZE 
     '-'   DELIMITED BY SIZE 
     SSNUMBER(6:9) DELIMITED BY SIZE 
INTO PRINTFIELD. 
関連する問題