擬似言語トレース練習 10問
基本情報技術者試験 科目B の擬似言語を、トレース表を自分で埋めて答え合わせする練習ページです。1問ずつ、α の行を通るたびの変数の値を書き、最後に結果を書いてください。
このページは IPA(独立行政法人 情報処理推進機構)とは無関係の非公式の練習教材です。問題はすべてオリジナルで、過去問題の転載ではありません。記法は IPA が公開している擬似言語の記法に沿っていますが、細かい約束はページ下の「このページの約束」に従います。正解と表は、ページ内で実際にプログラムを実行して作っています。入力した答えはどこにも送信されません。
このページの約束(記法のまとめ)
| 書き方 | 意味 |
|---|---|
○整数型: f(整数型: n) | 関数 f の宣言(戻り値と引数の型つき)。型のない ○f(…) は戻り値のない手続き |
整数型: s ← 0 | 変数の宣言と初期化。← は代入 |
{3, 1, 2}、a[i]、a の要素数 | 配列。添字は 1 から始まる |
for (i を 1 から n まで 1 ずつ増やす) | i ≤ n の間、本体を実行してから i を増やす |
while (条件) … endwhile | 前判定の繰返し |
do … while (条件) | 後判定の繰返し(本体は必ず1回は実行される) |
÷、mod | 整数どうしの ÷ は商の整数部分、mod は余り |
= ≠ ≤ ≥、and or not | 比較と論理演算 |
/* α */ | その行を実行した直後に変数の値を記録する(endif などに付いているときは、そのブロックを抜けた直後) |
| 配列の引数 | 呼出し元と同じ配列を指す(手続きの中で書き換えると呼出し元も変わる) |
答えの書き方:配列は 3, 1, 2 のようにカンマ区切り({} や空白はあってもなくても可)。全角数字でも判定します。