10代と話して驚いたこと

こんにちは。

早速ですがCOBOLのプログラミングで困っています。
MOVEを使って文字列を数値項目に転記する際についてなのですが、
私の今の困っている現状を報告します。
↓  ↓   ↓

W-A PIC X(5). ←中身は12345

上記のW-Aをの中味が、文字列で'12345'となっている場合に、
このW-Aの中味を、12.345と数値項目で表示するにはどうすればいいのでしょうか?ちなみに小数点第3位まで表示したいのです。
色々参考書とか見ても分からなかったので困っています。。

今日中に終わらせなくてはならない事なので、どうかアドバイスの方を頂けたらと思っています。。

基本的な部分で申し訳ないのですが、どうぞ宜しくお願いします。

A 回答 (1件)

いくつかの方法があると思いますが、・・



変数の定義をレベルを変えて定義する。バイト数が同じならば
定義ができる。
例)
 01 W-B 
    02 W-B-N  99V999.
W-Bは、X(5)と同じ。これにW-A(12345)をMOVEすると、W-B-Nにも、12345が入る。カンマ編集で表示するならば、表示の変数を定義して、これにW-B-NをMOVEし、表示用変数を表示してみると、99.999として出ます。

01 W-A PIC X(5) VALUE '12345'.
01 W-B.
02 W-B-N PIC 99V999.
01 W-C PIC 99.999.

MOVE W-A TO W-B.
MOVE W-B-N TO W-C.
DISPLAY W-C ----> 12.345 になるはず。
ちなみに、W-B-N は数字項目ですから、数字以外の文字列を編集し
扱おうとするとCOBOLの種類によっては異常終了しますので。

以上
    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報