初級シスアド超入門は、初級シスアド(初級システムアドミニストレータ)の総合情報を無料で提供します。
情報処理過去問

マクロ

初級シスアド 平成16年度秋 午前問24

ファイル中のレコードを1レコードずつ印字するソフトウェアがある。このソフトウェアでは、明細行を印字する直前にマクロ記述を呼び出して実行する。次のマクロ記述を使って印字したものはどれか。ここで、ファイルの1レコードは1行の明細行(XXXX XXXX XXXXで表示)として印字される。

【マクロ仕様】

  1. マクロ記述は、記述した順番に従って実行される。
  2. マクロ記述の中に変数を定義できる。初期値は0である。変数は、すべての明細行を印字し終わるまで、その内容を保持する。
  3. マクロ記述の中で条件を指定できる。条件は“条件”欄に記述し、条件を満たした場合には、“動作”を実行する。“線引き”は、線(───で表示)を印字する。

【マクロ記述】

記述順条件動作コメント
1i+1->i変数iに1を加える。
2i=3線引き変数iが3なら、線を引く。
3i=31->i変数iが3なら、iの値を1にする。


XXXX XXXX XXXX
XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX


XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX


XXXX XXXX XXXX
XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX
XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX


XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX
XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX
XXXX XXXX XXXX

解答・解説

レコード1行目が印字される前に変数iは0から1になります。

XXXX XXXX XXXX

レコード2行目が印字される前に変数iは1から2になります。

XXXX XXXX XXXX
XXXX XXXX XXXX

レコード3行目が印字される前に変数iは2から3になり、かつ線が印字されます。その後変数iは3から1になります。

XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX

レコード4行目が印字される前に変数iは1から2になります。

XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX
XXXX XXXX XXXX

レコード5行目が印字される前に変数iは2から3になり、かつ線が印字されます。その後変数iは3から1になります。

XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX
XXXX XXXX XXXX
--------------
XXXX XXXX XXXX

以降も同様にレコード2行おきに線が引かれます。

解答は「イ」になります。
今日のような問題は実際に手を動かして紙に書きながら考えましょう。

2005年01月26日 01:36
スポンサードリンク
初級シスアド本 ランキング
合格情報処理
合格情報処理 合格情報処理は、初級シスアド・基本情報技術者試験の合格をサポートする唯一の月刊誌です。詳細は、記事月刊誌『合格情報処理』にレポートしましたのでご覧ください。定期購読は、雑誌のオンライン書店「Fujisan.co.jp」がおすすめです。
※売れてます!
スマートキャリア
エルスクール
ユーキャン