• ベストアンサー

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     です。 自分の出した答に全く自信がありません。 どなたか、合っているか教えて下さいませんか? そして、間違っている場合、答の求め方を教えて下されば幸いです。 宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#156391
noname#156391
回答No.1

合ってますよ。大丈夫です。

chapuche
質問者

お礼

ありがとうございます!これで違う問題に進めます。 早い回答に感謝します。

その他の回答 (1)

noname#144219
noname#144219
回答No.2

あってます。自信を持ってください。

chapuche
質問者

お礼

ありがとうございます! テキストは、問題だけ書いていて、その答が載ってないので、不安だったんです。安心しました。

関連するQ&A

  • コボル!!!!!

    今コボルを習い始めています! 分からないことがあったので教えてください! IF (フラグ-終了-A   =   "END") AND  (フラグ-終了-B   =   "END") MOVE "END" TO フラグ-終了 END IF. とはどう言う意味ですか? 後、 COMPUTE    A  =  B  -  C どの様な動きをしているのか教えてください、よろしくお願いします。

  • COBOLについて

    COBOL初心者なのですが。 COBOLで 01 A.   03 B PIC 9(02).   03 C PIC X(02). MOVE  SPACE  TO  A. とした時、基本項目であるBには何が入っているのでしょうか? 数字項目にSPACEというのはありえないですよね。 どなたかわかる方、教えていただけませんか?

  • COBOLについて

    COBOLで以下のような仕様の場合、どのようなロジックにするのが良いでしょうか? ・仕様  A項目=値A または  B項目=値B または  (C項目=値C かつ D項目=値D ) または  E項目=値E 上記の場合、何も処理しない(以降の処理もせずに、次レコードを読みに行く  上記以外の場合、処理1を行い、次処理以降の処理を継続する。 (ロジック1) IF A項目=値A OR B項目=値B OR (C項目=値C かつ D項目=値D ) OR E項目=値E THEN CONTINUE ELSE 処理1を行う END-IF. (ロジック2) IF A項目=値A MOVE '1' TO 該当フラグ END-IF. IF B項目=値B MOVE '1' TO 該当フラグ END-IF. IF (C項目=値C かつ D項目=値D ) MOVE '1' TO 該当フラグ END-IF. IF E項目=値E MOVE '1' TO 該当フラグ END-IF. IF 該当フラグ='1' CONTINUE ELSE 処理1 END-IF. 自分は仕様に沿ってロジック1で組むべきだと思うのですが、 ロジック1は分かりずらいのとメンテが大変なのでロジック2で組むべきだと言われました。 どちらで組むのが普通でしょうか?どなたか教えて下さい!

  • COBOL 2次元配列について

    COBOL の2次元配列(?)について質問です。 例えば 01 A ...03 B OCCURS 5 ......05 C .........07 D OCCURS 10 ............09 E ............09 F とある場合、個々の E,F にアクセスするには どのように記述すればいいのでしょうか。。 MOVE 1 TO E(1,1) や、 MOVE 1 TO A(1,1) ではダメでした…。 よろしくお願いします。

  • 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タイプ ご指導よろしくお願いいたします。

  • COBOLの基本的な事なのですが。。。

    基本的な事なので、大変申し訳ありませんが教えて下さい。 ex)  A = 5      B = 1     C = 0 と定義しているとします。     MOVE B(A) TO C と定義すると、Cには何が移送されるのでしょうか?     あと、B(A)はどう言う意味?働き?になるのでしょうか?     教えて下さい。よろしくお願いします。     解りにくい説明で大変申し訳ないです。  

  • 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でMS-DOSコマンドの発行は?

    言語は日立系COBOL85なんですが、COBOLプログラム内で、 MS-DOSコマンド(例.MOVE A,TXT B.TXT)等のコマンド発行は可能でしょうか? コマンド発行でなくてもテキストファイル名操作が出来れば可です。 オンラインプログラムでは、サービスプログラム?を使用し、 確認できたのですが、バッチプログラムでは、 そのサービスプログラム?は、使用できない様な事を言われました。 SHELL等でではなく、直接COBOLからコマンド発行等が可能な方法は、ありませんでしょうか? できれば 具体的に教えて頂ければと思います。

  • COBOL仕様確認

    COBOLの仕様確認ですが、 AのプログラムからBを呼ぶ場合、 Bで何らかの値をセットし、Aへ一旦、戻ります。 再度、AからBを呼んだ場合、 前回、Bを呼んだときにセットした値を このときに参照可能でしょうか? それともセットした値が初期化されているのでしょうか? 宜しくお願いいたします。

  • COBOL85のコーディングについて

    COBOL85のコーディングについて教えてください。 以下のようなレコードを持つテーブルで、CD1="B"のレコードを、(1)→(2)→(3)の降順で読み込むには、どのようにコーディングすれば可能でしょうか? コーディング例をお願いします。   CD1|CD2|DATE   ――――――――――――――――   A  |1  |20120101   A  |2  |20991231 (3) B  |1  |20120101 (2) B  |2  |20131231 (1) B  |3  |20991231   C  |1  |20120101   C  |2  |20991231