問3 手続呼出しに関する次の説明を読んで,設問 1,2 に答えよ。
〔手続呼出しの説明〕
ある言語で書かれた原始プログラム 1(図 1 )と,原始プログラム 2(図 2 )がある。
�仝胸魯廛蹈哀薀狠罎諒竸� S は, 整数型の大域変数である。整数型はキーワード Int で表す。
キーワード External は外部参照を示す。 External Int S は整数型の大域変数 S への外部参照を,External Proc B は 手続 B への外部参照を示す。
変数 X1 は,整数型の局所変数である。
X1=100 は,変数 X1 に 100 を代入する。
Call B(X1) は,変数 X1 を実引数として, 手続 B を呼び出す。引数は参照渡し(call by reference)である。
Proc B(Int X2) 〜 End B は, 整数型の仮引数 X2 をもつ手続 B の範囲を示す。
解答群
ア 手続 A における手続 B の参照 イ 手続 A における変数 X1 の参照
ウ 手続 B における手続 C の参照 エ 手続 B における変数 S の参照
オ 手続 B における変数 X1 の参照 カ 手続 B における変数 X2 の参照
キ 手続 C における変数 S の参照
問4 次のプログラムの説明,擬似言語の記述形式の説明及びプログラムを読んで,設問に答えよ。
〔プログラムの説明〕
成績表ファイルを読んで,個人ごとの合計点を計算し,成績の良い順に印字する。 ただし,合計点が同じ場合は,国語の点の良い順に印字する。
(1) 成績表ファイルの様式は,次のとおりで,レコード数は 99 以下である。
(2) 成績表の印字様式は,次のとおりである。
〔擬似言語の記述形式の説明〕
〔プログラム〕
a,b,e に関する解答群
ア (j−1) イ (j+1) ウ 1
エ 2 オ 99 カ 100
キ 101 ク (入力件数−1) ケ 入力件数
コ (入力件数+1)
c,d に関する解答群
ア = イ ≠ ウ > エ <
問5 関係データベースに関する次の記述を読んで,設問 1,2 に答えよ。
顧客表,注文表,受注明細表及び商品表からなる関係データベースがある。
例 SELECT 受注明細表.受注番号, 顧客名, SUM(注文数量*単価) FROM 受注明細表, 顧客表, 商品表, 注文表 WHERE 顧客表.顧客コード = 注文表.顧客コード AND 受注明細表.商品番号 = 商品表.商品番号 AND 受注明細表.受注番号 = 注文表.受注番号
ア 一つの SELECT 文で結合できる表は三つまでである。
イ 複数の表を結合した場合に SUM 関数を使って集計はできない。
ウ “GROUP BY 受注明細表.受注番号”を加える必要がある。
エ “GROUP BY 受注明細表.受注番号, 顧客名”を加える必要がある。
オ “ORDER BY 受注明細表.受注番号”を加える必要がある。
(1) 商品番号を抽出する次の SQL 文を実行した結果は,表 1 のとおりになった。
SELECT 商品番号 FROM 注文表, 受注明細表 WHERE 顧客コード = 'A156' AND 注文表.受注番号 = 受注明細表.受注番号
SQL 文
SELECT 品種 FROM 注文表, 受注明細表, 商品表 WHERE 顧客コード = 'A156' AND 注文表.受注番号 = 受注明細表.受注番号 AND 商品表.商品番号 = 受注明細表.商品番号 SQL 文 (SELECT 受注明細表.商品番号 FROM 受注明細表, 注文表 WHERE 顧客コード = 'A156' AND 受注明細表.受注番号 = 注文表.受注番号)
(2) SQL 文 のαの位置に DISTINCT を 挿入したとき,出力件数は になった。
ア 4 イ 5 ウ 6 エ 7 オ 8カ 9 キ 10
問6 コンピュータネットワークのアクセス制御に関する次の記述を読んで,設問に答えよ。
X 社では,社内及び関連会社との通信にネットワークを使用している。 X 社の LAN 構成を図に示す。 通信プロトコルは TCP/IP を用いており,図中の数字は,IP アドレスを表している。 この IP アドレスは,架空のものとする。
関連会社との接続に際して,セキュリティ上の配慮から,関門ルータを設置してある。 関門ルータは,ルータを通過するすべてのパケットの内容を検査し, 設定された条件に合わないものを破棄する機能をもつ。 関門ルータに設定する条件は,設定テーブルにあらかじめ登録しておく。
図 X 社の LAN 構成
関門ルータ内の設定テーブルの例を表 1 に示す。 条件設定は,IP 層での識別番号である IP アドレスと,TCP 層での識別番号であるポート番号を 組み合わせて行う。 すなわち,設定テーブルの一つの行に IP アドレスとポート番号を指定すると, その IPアドレス及びポート番号に該当するパケットだけが関門ルータを通過することができる。 設定テーブルの IP アドレス欄に 0.0.0.0 又はポート番号欄に 0 を指定すると, その欄に関しては制限しないことを意味する。 また,“:”を挟んで範囲を指定したときには,その範囲内の IP アドレス又はポート番号の パケットを通過させることを意味する。 関門ルータを通過しようとするパケットの検査は,設定テーブルの最初の条件から順に 行われ,どの条件にも適合しないパケットは破棄される。
表1 関門ルータ内の設定テーブルの例(telnet 対応)
IP 層
TCP 層
表 1 の設定例では,社内から社外への仮想端末機能(telnet)サービスのパケット及び その返信である社外から社内への telnet サービスのパケットだけが通過できるように 設定している。 その結果,ネットワーク運用管理課の PC-NA 〜 PC-NE(IPアドレスは100.1.1.1〜100.1.1.5) から X 社外のサーバが提供している telnet サービス(ポート番号は23 で固定)が利用できる。 社外からのパケットは,ポート番号が 1026 以上のパケットだけを通すように設定している。
この要請を満たすために,関門ルータの設定テーブルには,どのような条件を 指定すればよいか。次の設定テーブルの に 入れるべき値を解答群の中から選べ。 ここで,データ転送にあたって,X 社のサーバはポート番号 1024 と 1025 の二つを 同時に利用するものとする。解答は,重複して選んでもよい。
表2 関門ルータ内の設定テーブル(データ転送対応)