基本情報技術者試験対策(40)「擬似言語(01)」

スポンサーリンク
IT系

文法

文法とは、擬似言語の問題を解くための道具である。文法の理解があいまいだと、試験で思いもよらぬ失点につながりかねない。少々細かな内容を含むが、擬似言語の攻略には欠かせないものであるため、文法の正確な理解に努めよう。

擬似言語

基本情報技術者試験の科目Bで出題されるプログラム言語である。 この試験でしか登場しないプログラム言語だが、 多くの言語に共通して存在する要素が盛り込まれている。

2022年までの基本情報技術者試験では、擬似言語の仕様は、ITパスポート試験や応用情報技術者試験とは大きく異なっていたが、023年4月からはほぼ同じ仕様で出題されるようになった。

変数

値を一時的に格納するための箱のようなものである。 プログラムは、変数に値を格納したり、変数から値を取り出したりして、 現時点の値を記憶処理する。 現時点の値を格納しておけば、その値により処理の進み具合を確認できる。 また、例えば、入力された値を記憶しておけば、その値をプログラム内で利用できる。

なお、変数は2個以上の値を同時には格納できない。つまり、変数に新たに値を格納すると、 以前格納されていた値は無視され、その新たな値が格納される。

変数の型

変数の型により、変数にどのような種類の値が格納されるかを指定する。 変数の型と格納される値の種類は、次のとおりである。

変数の型格納される値の種類
文字型1字の文字。A
文字列型複数の文字。ABC
整数型整数。123
実数型整数と小数。3.14
論理型true (真) または false (偽) のみ。true, false

変数の宣言

次の例では「整数型:a」により,格納する値は整数型である変数aを宣言する。 なお、「1:」 などは行番号である。

1: 整数型: a → a

次の例では 「a← 1」により, 変数aに値1を格納する。

2:a←1 → a=1

次の例では 「文字型: b, c」 により、格納する値は文字型である変数bと変数を宣言する。

3: 文字型: b,c → b c

次の例では 「b “A”」 「c←”Z”」により、変数bに値Aを、変数に値Zを格納する。

4:b←”A” → b= A
5:c←”Z” → c= Z

次の例では 「実数型: d ← 42.195」 により、格納する値は 実数型である変数dを宣言すると同時に、 変数dに値42.195を格納する。

6: 実数型: d← 42.195 → d=42.195

次の例では 「f←e + 2」により, 変数eの値1を取り出して2を加算し、変数fに値3を格納する。

7: 整数型: e, f
8:e←1
9:f ←e + 2
・プログラムは原則1行ずつ下方向へ実行していく。

変数名

変数名に使われる英単語の意味を覚えておくと、プログラム の処理内容を解釈する際に役立つ。 代表的な変数名と意味は、次のとおりである。

変数名意味
array配列。
count、nt個数。
current、curr現在の値。
index、idx長さ。 length long (長い) の名詞形。
Length、Len長さ。 length long (長い) の名詞形。
matrix行列。
number、num数、数値。
pos位置。 position の略。
prev前の。 previous の略。
ptr次の位置を指し示す添字。 pointer (ポインタ) の略。
ret戻り値。 return の略。
temp、tmp、work値を一時保存する変数。 temporary (一時的な)の略。
value、val値。

未定義

変数に値が格納されていない状態である。「a ← 未定義の値」 により、変数aは未定義になる。
また、インスタンスへの参照が未定義の場合、どのインスタンスも参照しないことを意味する。

条件式

処理を進めるかどうかを見極めるための式である。 条件式の計算結果は, 真または偽となる。

真 (true)

条件式に値を当てはめると、式として正しい場合。 例えば、条件式 「a が 5 と等しい」 で、 変数aに値5を当てはめると 「5が5と等しい」 となり、式として正しいため真。

偽 (false)

条件式に値を当てはめると、 式として正しくない場合。 例えば、条件式 「a が 5 より大きい」 で、変数aに値5を当てはめると「5が5より大きい」となり、式として正しくないため偽。 5と5は等しいのであって、5が5より大きくはないので。

算術演算子

四則演算と、問題文で登場する計算の種類・計算結果の名称は、次のとおりである。

擬似言語の表記計算の種類計算結果の名称
加算
減算
×乗算
÷除算
mod剰余算剰余

関係演算子

2つの値について, 大小関係の比較や一致・不一致の判定を行うための表記や記号である。 例えば、「a が 5 より大きい」や「a > 5」が該当する。

 if・elseif・while・doなどの中で,処理を分岐するために使う。

試験問題の表記は「a が5より大きい」などのこともあるが、ここでのトレース表では、すばやく記入するために、それを 「a > 5」と記述する。

試験問題の表記トレース表試験問題の表記の例トレース表の例真になる変数aの値の例 (値が整数の場合)
より大きいaが5より大きいa > 56,7,8…(5は含まず)
以上aが5以上a ≧ 55,6,7…(5を含む)
より小さいaが5より小さいa <54,3,2…(5は含まず)
以下aが5以下a≦55,4,3…(5を含む)
等しいaが5と等しいa=55
等しくないaが5と等しくないa ≠ 53, 4, 6, 7…

論理演算子

条件式を複数組み合わせる場合に使う演算子である。and (か つ)とor(または) が出題される。

and

論理積,「かつ」。 「条件式1 and 条件式2」では、条件式1と条件式2のどちらとも真の場合、 結果は真 (true) となる。

それ以外は偽(false) となる。

条件式「(i が 25 以上) and (i が 28 より小さい)」に, iが25を当てはめた場合の条件式の真偽は、次のとおりである。

iが25の場合:

条件式1論理演算子条件式2結果
(iが25以上)and(i が 28 より小さい)
(25が25以上)and(25 が 28 より小さい)
and

or

論理和, 「または」。 「条件式1 or 条件式2」 では、条件式と条件式2のどちらか一方でも真の場合、結果は真(true)となる。 それ以外は偽 (false) となる。

iが25の場合:

条件式1論理演算子条件式2結果
(iが25より小さい)or(i が 28 以上)
(25が25より小さい)or(25 が 28 以上)
or

参考)情報処理教科書 出るとこだけ!基本情報技術者[科目B]第4版 橋本 祐史 (著) 翔泳社

コメント

タイトルとURLをコピーしました