- ベストアンサー
COBOLのS9タイプからXタイプへ変換する過程
はじめましてCOBOL初心者です。 COBOLプログラムにおいて、S9タイプをXタイプに変換するためにはどのようにしたらよいでしょうか。 自分なりに2つの方法を考えてみたのですが、いずれかで可能でしょうか? (1) MOVE S9タイプ TO 9タイプ MOVE 9タイプ TO Xタイプ (2) COMPUTE 9タイプ = S9タイプ * 1 MOVE 9タイプ TO Xタイプ ご指導よろしくお願いいたします。
- sk010910
- お礼率100% (1/1)
- その他(プログラミング・開発)
- 回答数1
- ありがとう数4
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
どちらでも可能です。 が、(1)の方が他の方が当該プログラムを読む上では理解しやすいでしょう。
関連するQ&A
- S9タイプからXタイプにデータは移行できるのか。(COBOL)
こんにちは。 まったくのCOBOLビギナーで困っています。 私がしたいことは、 S9タイプのデータを、Xタイプに移すということです。 元データには'40'(16進数)というデータが入っています。 これは +0 という意味だとおもいます。 これを、Xタイプにムーブして、 '0'と出したいわけです。 '0'を出す為には、'30'(16進数)であればいいことは バイナリで確認しています。 単純にMOVEを書けても、これは、'@'になってしまいます。 S9→X への移行ってできるものなのでしょうか? 知っている方がいらっしゃったらご教授ください。
- ベストアンサー
- その他(プログラミング・開発)
- COBOL
すごい簡単な問題なんで恐縮します。COBOL超初心者です。 通信学習で学んでるのですが、テキストに詳しく載っていないので行き詰っています。 下記A, B, Cの値を求めなさい。 MOVE 9 TO A. COMPUTE B = A / 3 COMPUTE C = A + B COMPUTE A = A * 2 で、私が考えた答は、 A = 18 B = 3 C = 12 です。 自分の出した答に全く自信がありません。 どなたか、合っているか教えて下さいませんか? そして、間違っている場合、答の求め方を教えて下されば幸いです。 宜しくお願いいたします。
- ベストアンサー
- その他(プログラミング・開発)
- COBOLについて
COBOL初心者なのですが。 COBOLで 01 A. 03 B PIC 9(02). 03 C PIC X(02). MOVE SPACE TO A. とした時、基本項目であるBには何が入っているのでしょうか? 数字項目にSPACEというのはありえないですよね。 どなたかわかる方、教えていただけませんか?
- ベストアンサー
- その他(プログラミング・開発)
- コボル!!!!!
今コボルを習い始めています! 分からないことがあったので教えてください! IF (フラグ-終了-A = "END") AND (フラグ-終了-B = "END") MOVE "END" TO フラグ-終了 END IF. とはどう言う意味ですか? 後、 COMPUTE A = B - C どの様な動きをしているのか教えてください、よろしくお願いします。
- 締切済み
- その他(プログラミング・開発)
- COBOL VB 変換
自分の通っているある先生がCOBOLに詳しいのですが、やはりVBにしようと考えているらしくCOBOLからVBへ変換するソフトを探しています。 しかしグーグル等で検索してみても見つからないため困っています。 なにか方法はあるでしょうか。 ご存じの方よろしくお願いします。
- ベストアンサー
- その他(ソフトウェア)
- COBOL数値転記の仕様
このたび、まったくの未経験のCOBOLをやることになりました。 で、数値データの表し方になんやかやとやたら方法があるようなのですが、それらを互いに「転記」したときに、どういう結果になるものか、皆目わからないんです(環境はCOBOL85でWindows上での開発です)。 テクニックとしては基本だと思うのですが、それでいてどこにも説明されていな~い!フリーのCOBOLツールは見つけてきましたが、使い方が???なもので…。 たとえば、 01 X1 PIC XX (数値が入ってるとします) 01 N1 PIC 99 01 D1 PIC 99 COMP 01 B1 PIC 1(16) BIT な場合、X1とN1は直接 MOVE N1 TO X1 などとやってもデータは失われないと思うんですが、他の形式での操作は(桁あふれとか無視して)ちゃんと転記できるのでしょうか。 いま特に、D1からX1へというパターンが多いです。1バイトの2進データを、数値の文字列として使おう、というんです。いわば、1バイトを3バイトに展開してやるんです。何も考えずに書けば、 01 D2 PIC 9(4) COMP VALUE 97 01 X2 PIC X(3) MOVE D2 TO X2 でしょうけど、たぶん'a△△'になるだけのような気がします…。 それとも、 01 N2 PIC 9(4) MOVE D2 TO N2 MOVE N2 TO X2 などとやっていけたりするのでしょうか。 いったいどうなるのでしょう、いろいろ書いちゃいましたけど、各々の転記の仕組みを教えてください。 また、COBOLの(お堅い規格を書き写しただけでない)解説のサイトなどあれば、ご紹介いただけますでしょうか。
- ベストアンサー
- その他(プログラミング・開発)
- COBOL PICTUREで X,S,Vの意味
COBOL PICTUREで X(03) S9(01) とか V9(02)とか記載されているのマトリックス表があるのですが、この意味を教えてください。
- ベストアンサー
- その他(プログラミング・開発)
- COBOL初心者です
COBOL初心者です。 1月~6月の売上高の合計と、 半年の売上高の合計に対する各月の割合を表示するプログラムを作成しろという課題が出たのですが、実行してみたら合計の数字が違うのです。。。。 01 1月 PIC 9(8). 01 2月 PIC 9(8). 01 3月 PIC 9(8). 01 4月 PIC 9(8). 01 5月 PIC 9(8). 01 6月 PIC 9(8). 01 半年合計 PIC 9(9). 01 表示半年合計 PIC Z(9)9. 01 1月割合 PIC Z(2)9.99. 01 2月割合 PIC Z(2)9.99. 01 3月割合 PIC Z(2)9.99. 01 4月割合 PIC Z(2)9.99. 01 5月割合 PIC Z(2)9.99. 01 6月割合 PIC Z(2)9.99. ・ ・ ・ 合計を求めるCOMPUTE文 COMPUTE 半年合計 = 1月 + 2月 + 3月 + 4月 + 5月 + 6月. MOVE 半年合計 TO 表示半年合計. DISPLAY "合計売上高は" AT 1405. DISPLAY 表示半年合計 AT 1428. DISPLAY "円です。" AT 1436. ・ ・ ・ 割合を求めるCOMPUTE文。 COMPUTE 1月割合 = (1月 / 半年合計) * 100. COMPUTE 2月割合 = (2月 / 半年合計) * 100. COMPUTE 3月割合 = (3月 / 半年合計) * 100. COMPUTE 4月割合 = (4月 / 半年合計) * 100. COMPUTE 5月割合 = (5月 / 半年合計) * 100. COMPUTE 6月割合 = (6月 / 半年合計) * 100. 実行結果 例えば、1月 00000100 ・ ・ ・ 6月 00000100 と各月すべて100と入力したら、合計は6円です。という具合に実行結果が出ます。 どのように直せばよいでしょうか?
- 締切済み
- その他(プログラミング・開発)
- COBOLのプログラムで・・。
現在COBOLプログラムを作ってまして以下のプログラムで表示結果が「EQUAL」となるようにしたいのですがどうやったらいいでしょうか?回答のほうよろしくお願いします、以下がプログラムです。 IDENTIFICATION DIVISION. PROGRAM-ID. TEST9. DATA DIVISION. * WORKING-STORAGE SECTION. * 01 GR01. 02 DATA1 PIC N(2). * 01 DATA2 PIC N(2). 02 SPACE TO DATA2 * PROCEDURE DIVISION. * MOVE SPACE TO GR01. * MOVE SPACE TO DATA2. IF DATA1 = DATA2 THEN DISPLAY "EQUAL" ELSE DISPLAY "NOT EQUAL" END-IF. * * STOP RUN. * END PROGRAM TEST9.
- 締切済み
- その他(プログラミング・開発)
- COBOL
COBOLで INIT-SEC. OPEN INPUT IN-FILE. OUTPUT OUT-FILE. DISPLAY " 学番 名前 国 数 英 合計". MOVE ZERO TO CTR-IN CTR-OUT. PERFORM READ-SEC. の部分に「開始メッセージを表示する」を追加したいのですがプログラムソースを教えてください。
- ベストアンサー
- その他(プログラミング・開発)
お礼
ありがとうございます! COBOLを実際に使える環境を持合わせていなかったので大変参考になりました! ありがとうございました!