![]()
平成26年 秋期 基本情報技術者 午後 問10
問10 COBOL問 10 次の COBOL プログラムの説明及びプログラムを読んで,設問1,2に答えよ。 〔プログラムの説明〕 X社では,特定の商品の売上傾向を分析するために,2年分の売上についてグラフ化することにした。 このプログラムは,分析する商品の商品コードをパラメタで受け取り, 全ての商品の売上データが記録されている売上ファイルから当該商品の売上を 月ごとに集計して,結果を図1に示すように印字する。
![]() 図1 売上グラフの例 (1) 売上グラフは,2012 年4月〜2014 年3月の各月の売上を表す。
A 横軸の数値は月で,左端から,2012 年4月,2012 年5月,…,2014 年3月を表す。 B 縦軸と横軸の数値は,用紙にあらかじめ印字されている。 (2) 売上ファイルは,図2に示すレコード様式の順ファイルで,X社が扱う全ての 商品の 2012 年4月〜 2014 年3月の各営業日の売上データが格納されている。 レコードは売上日の昇順に整列されている。
![]() 図2 売上ファイルのレコード様式
A 商品コードには,販売した商品のコードが格納されている。商品コードは, 商品ごとに一意に割り当てられている。 B 取引先コードには,商品を販売した取引先のコードが格納されている。 取引先コードは,取引先ごとに一意に割り当てられている。 C 各商品の月ごとの売上金額は,1〜 999,999 円とする。 (行番号) 1 DATA DIVISION. 2 FILE SECTION. 3 FD S-FILE. 4 Ø1 S-REC. 5 Ø2 S-DATE. 6 Ø3 S-YYYY PIC 9(4). 7 Ø3 S-MM PIC 9(2). 8 Ø3 S-DD PIC 9(2). 9 Ø2 S-GOODS PIC 9(5). 10 Ø2 S-QUANTITY PIC 9(4). 11 Ø2 S-AMOUNT PIC 9(8). 12 Ø2 S-CUSTOMER PIC 9(4). 13 FD P-FILE. 14 Ø1 P-REC PIC X(8Ø). 15 WORKING-STORAGE SECTION. 16 77 EOF-FLAG PIC X(1). 17 88 S-INIT VALUE SPACE. 18 88 S-EOF VALUE "E". 19 77 IX-LINE PIC 9(2). 20 77 IX-COL PIC 9(2). 21 77 CR-MONTH PIC 9(2). 22 Ø1 AMOUNT-DATA. 23 Ø2 AMOUNT-MONTH OCCURS 24 PIC 9(6). 24 Ø1 PRINT-TABLE. 25 Ø2 PRINT-LINE OCCURS 1Ø. 26 Ø3 PIC X(6). 27 Ø3 PRINT-ELM OCCURS 24. 28 Ø4 PRINT-MK PIC X(2). 29 Ø4 PIC X(1). 30 LINKAGE SECTION. 31 77 PRM-GOODS PIC 9(5). 32 PROCEDURE DIVISION USING PRM-GOODS. 33 MAIN-PROC. 34 SET S-INIT TO TRUE. 35 INITIALIZE AMOUNT-DATA. 36 MOVE 4 TO CR-MONTH. 37 MOVE 1 TO IX-COL. 38 OPEN INPUT S-FILE 39 OUTPUT P-FILE. 40 PERFORM UNTIL S-EOF 41 READ S-FILE 42 AT END SET S-EOF TO TRUE 43 NOT AT END IF S-GOODS = PRM-GOODS THEN 44 PERFORM ADD-PROC 45 END-IF 46 END-READ 47 END-PERFORM. 48 PERFORM PRINT-PROC. 49 CLOSE S-FILE P-FILE. 50 EXIT PROGRAM. 51 ADD-PROC. 52 IF CR-MONTH NOT = S-MM THEN 53
設問1 プログラム中の a,b に関する解答群 イ ADD S-AMOUNT TO AMOUNT-MONTH(IX-COL) ウ MOVE 1 TO CR-MONTH エ MOVE S-AMOUNT TO AMOUNT-MONTH(CR-MONTH) オ MOVE S-MM TO CR-MONTH カ MOVE S-MM TO IX-LINE IX-COL c に関する解答群 ウ PRINT-MK(IX-COL,IX-LINE) エ PRINT-MK(IX-LINE, IX-COL)
設問2 図1に示すグラフでは,季節変動がある商品の中長期的な傾向の
分析は難しいことが分かった。そこで,図3に示す Z チャートを表示するように
プログラムを変更することにした。表1中の
![]() 図3 Z チャートの例 [Zチャートの説明] ある月を起点に,各月の売上,起点からの売上累計,その月を含む過去1年間の 売上合計を表すグラフである。これら三つのグラフを重ね合わせると Z の形に なることから Z チャートと呼ばれ,季節変動のある商品の売上傾向を 分析する際などに用いられる。 〔図3の説明〕 (1) 縦軸の数値は売上金額(単位は万円)で,下段から,1〜 500,000 円, 500,001 〜 1,000,000 円,…,11,500,001 〜 12,000,000 円を表す。 (2) 横軸の数値は月で,左端から,2013 年4月,2013 年5月,…,2014 年3月を表す。 (3) 2013 年4月を起点として,各月の売上,起点からの売上累計,その月を 含む過去1年間の売上合計を,それぞれ記号 "*","@","#" で印字する。 ここで,印字が重なる場合は,優先順位("#" > "@" > "*")の高い方を印字する。 (4) 縦軸と横軸の数値は,用紙にあらかじめ印字されている。
表1 プログラムの変更内容
d 〜 f に関する解答群 イ ADD AMOUNT-MONTH(IX-AMOUNT)TO Z-YEAR ウ ADD Z-TOTAL TO Z-YEAR エ COMPUTE Z-YEAR = Z-YEAR + AMOUNT-MONTH(IX-AMOUNT) - AMOUNT-MONTH(IX-AMOUNT - 12) オ COMPUTE Z-YEAR = Z-YEAR + Z-TOTAL + AMOUNT-MONTH(IX-COL - 1) カ MOVE AMOUNT-MONTH(IX-COL) TO Z-TOTAL
[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2024 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
|