擬似言語とは

ぎじげんご

特定のプログラミング言語に依存せずに、アルゴリズムの手順を表すために決めた書き方。基本情報技術者試験の科目Bでは、型の宣言、← による代入、if・while・for などの制御構造、1から始まる配列の要素番号などを定めた擬似言語でプログラムを示す。

「擬似言語」は、1分野の1問の練習問題に出てきます(プログラミングの基礎(擬似言語のトレース)など)。

この用語の分野: プログラミングの基礎(擬似言語のトレース)

基本情報技術者試験の科目Bでの使われ方

2023年4月からの基本情報技術者試験では、プログラムを読む問題(科目B)は擬似言語に統一され、それまで選べたC、Java、Python、アセンブラ言語、表計算ソフトの問題はなくなりました。例えば「整数型: x ← 0」で変数を宣言して初期値を代入し、「for (i を 1 から n まで 1 ずつ増やす) … endfor」で繰り返します。配列は {1, 2, 3} のように書き、要素番号は1から始まります。特定の言語の細かい文法を知らなくても、アルゴリズムの手順を読み取れるかを問う形式です。

読むときの注意点

多くのプログラミング言語と同じく、×・÷・mod は +・− より先に、比較は and より先に、and は or より先に計算します。÷ の結果の小数点以下をどう扱うかや、and・or で右側を評価するかどうかなど、結果に影響する約束は問題文に書かれるので、必ず確かめます。配列の要素番号が1から始まることも、0から始まる言語に慣れた人が誤りやすい点です。

実際のプログラミング言語との対応

擬似言語の「x ← y」はC言語やPythonの「x = y」に、比較の「=」は「==」に、「≠」は「!=」に当たります。「for (i を 1 から n まで 1 ずつ増やす)」は、C言語の「for (i = 1; i <= n; i++)」に相当します。擬似言語で考えた手順を実際の言語に書き換えるときは、配列の要素番号の始まりと、整数の除算の結果の違いに注意します。

よくある質問

擬似言語のプログラムを実行することはできますか?

擬似言語は人が読むための書き方なので、それ自体を実行する標準の処理系はありません。学習用に擬似言語を解釈するツールが作られることもありますが、基本は紙の上で変数の値を追うトレースで動きを確かめます。

流れ図(フローチャート)との違いは何ですか?

流れ図は処理の流れを記号と矢印で表し、擬似言語は文章に近い形で表します。擬似言語は細かい手順まで書きやすく、実際のプログラムに書き換えやすいのが利点です。

解説の中の「擬似言語」

「擬似言語」が出てくる問題(1問)

  1. 次のプログラムで、x と y の値を入れ替えるつもりで2つの代入文を書いた。実行した後の x と y の値の組はどれか。

プログラミングの基礎(擬似言語のトレース)の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

半導体・電子回路・情報の計算ツール

関連する用語

変数 オブジェクト指向 オフバイワンエラー 剰余演算 制御構造 整数除算 短絡評価 トレース表 配列 引数

用語集の一覧へ