擬似言語の変数宣言とデータ型の読み方|整数型・実数型・文字列型・論理型の違いを解説

公開日: 2026-08-07

コードの最初に並んでいる宣言の行、正直よく読んでいない。

擬似言語の問題を開いたとき、いきなり処理の中身から読み始めていませんか?

宣言は前置きのようなもので、答えには関係ない。そう思って飛ばしている人は、実はとても多いです。

私はエンジニアとして10年以上、Webシステムの開発や運用に携わってきました。数量を扱う変数の型を取り違えたせいで、金額の計算が1円ずつ合わなくなった不具合を調べたこともあります。

型は地味です。でも、処理の結果を静かに決めているのは型のほうです。

この記事では、擬似言語の宣言の行に何が書いてあるのかを、順番にほどいていきます。

変数の宣言は、入れ物を用意する合図

まず、宣言が何をしている行なのかをはっきりさせましょう。データを入れておく箱を一つ用意する、という宣言です。

箱には名前を付けます。その名前が変数名で、あとの処理では名前を書くだけで中身を出し入れできます。

そして箱には、入れてよい中身の種類が決まっています。これが型です。

料理でいえば、鍋を出すのか、コップを出すのかを先に決めているようなものです。何を作るかによって、必要な入れ物は変わりますよね。

宣言の行はこう書かれている

実際の書き方を見てみましょう。試験で使われる擬似言語では、行の先頭に小さな丸が付きます。

○整数型: kosu
○実数型: tanka, kingaku
○文字列型: namae
○論理型: hakken

丸の後ろに型の名前、コロンをはさんで変数名という並びです。カンマで区切れば、同じ型の変数をまとめて宣言できます。

上の例なら、整数を入れる箱が一つ、実数を入れる箱が二つ、という読み方になります。

ここで注意したいのが、宣言しただけでは中身が入っていない点です。箱は用意されましたが、まだ空のままだと考えてください。

型は入れられる中身の種類を決めている

では、型が違うと何が変わるのでしょうか。入れられる値と、計算したときの振る舞いが変わります。

同じ 3 という数でも、整数型に入った 3 と実数型に入った 3 は、扱いが少し違います。この違いが、後の計算結果に効いてきます。

型を意識せずに読むと、途中の値がなぜそうなるのか分からなくなる。逆に型を先に確認しておけば、値の動きが予測できるようになります。

宣言を読むのは、ほんの数秒です。その数秒が、後半で迷う時間を大きく減らしてくれます。

科目Bで出る型を一通り見ておく

種類はそれほど多くありません。科目Bで出てくるものだけを、先に頭に入れておきましょう。

代表的な型を、入る値の例と一緒にまとめます。

入る値 よく使われる場面
整数型 小数点のない数 0, 7, -3 個数、添字、回数
実数型 小数点のある数 3.14, 0.5 平均、率、金額の計算
文字型 1文字だけ 'A', 'あ' 1文字ずつの判定
文字列型 文字の並び "abc", "東京" 名前、メッセージ
論理型 true か false true 見つかったかどうかの記録

このうち、科目Bで圧倒的に多いのが整数型です。繰返しの回数や配列の添字は、必ず整数で数えるからです。

次に目にするのが論理型になります。条件を満たしたかどうかを覚えておくために使われます。

実数型は、平均を求める問題などで顔を出します。割り算が出てきたら、型を確認する合図だと思ってください。

配列の添字そのものが不安な場合は、先にそちらを固めておくと読みやすくなります。

【関連記事】擬似言語の配列と添字がわからない人へ|要素数・二次元配列の読み方を解説

文字型と文字列型は別のものとして扱う

表の中で紛らわしいのが、文字型と文字列型の二つです。名前が似ているので、同じものだと思ってしまいがちです。

違いは、入る量だけです。文字型はちょうど1文字、文字列型は何文字でも入ります。

囲む記号も分かれています。文字型は単引用符、文字列型は二重引用符で書かれるのが一般的です。

○文字型: c
○文字列型: s

c ← 'A'      /* 1文字だけ */
s ← "ABC"    /* 何文字でも入る */

この区別が効いてくるのは、文字列を1文字ずつ取り出す処理です。取り出した1文字は文字型なので、文字列型の変数と直接は比べられません。

回文の判定など、1文字ずつ見ていく問題の読み方はこちらにまとめています。

【関連記事】擬似言語の文字列処理がわからない人へ|1文字ずつ取り出す読み方と回文判定を解説

型を意識すると読み方が変わる場面

型の知識が点数に直結するのは、計算の結果が型によって変わるときです。ここを知らないと、正しく追ったつもりでも答えがずれます。

代表的な二つの場面を見ていきましょう。

整数どうしの割り算は小数にならない

一つ目は割り算です。整数型の変数どうしを割ると、小数の部分は切り捨てられます。

7 を 2 で割った結果は、3.5 ではなく 3 になる。この扱いは多くのプログラミング言語と共通していて、擬似言語でも同じように出題されます。

短い例で確かめてみましょう。

○整数型: a, b, c
○実数型: d

a ← 7
b ← 2
c ← a ÷ b        /* 整数型なので小数は切り捨てられる */
d ← 7.0 ÷ 2.0    /* 実数どうしなら小数のまま */

c と d では、同じ 7 割る 2 なのに結果が違います。値の動きを表にしてみます。

変数 計算 結果
c 整数型 7 ÷ 2 3
d 実数型 7.0 ÷ 2.0 3.5

平均を求める問題で、答えが選択肢と微妙に合わない。そういうときは、この切り捨てが起きていないかを疑ってみてください。

割り算と余りの扱いをもう少し詳しく知りたい人は、専用の記事にまとめてあります。

【関連記事】擬似言語の余り(剰余)と割り算がわからない人へ|偶数判定と桁の取り出しを解説

論理型は条件そのものを入れられる

二つ目は論理型です。この型には数でも文字でもなく、成り立つか成り立たないかだけが入ります。

初めて見ると不思議に感じるかもしれません。でも使い方はとても素直です。

配列の中から目的の値を探す処理で、見つかったかどうかを覚えておく例を見てみましょう。

○整数型の配列: data ← {4, 9, 2, 7}
○論理型: hakken
○整数型: i, x

hakken ← false        /* まだ見つかっていない */
x ← 2
for (i を 1 から dataの要素数 まで 1 ずつ増やす)
  if (data[i] が x と等しい)
    hakken ← true     /* 見つかった印を立てる */
  endif
endfor
if (hakken)
  "あります" を表示する
endif

最後の if に注目してください。比べる記号がどこにも書かれていません。

hakken の中身がすでに真か偽なので、そのまま条件として使えるからです。ここを見落とすと、条件が抜けているように見えてしまいます。

論理型の変数は、条件を後ろに持ち越すための道具だと考えると腑に落ちます。

複数の条件を組み合わせる読み方は、こちらで詳しく扱っています。

【関連記事】擬似言語の論理演算(and・or・not)の読み方|複合条件で迷わないコツを解説

配列の宣言は型の後ろに続きを付ける

変数が一つの箱なら、配列は箱が並んだ棚です。宣言の書き方も、その形をそのまま表しています。

型の名前の後ろに配列という語が続き、中に入る値の型がそのまま前に置かれます。

○整数型の配列: tensu ← {80, 95, 60}
○文字列型の配列: namae ← {"佐藤", "鈴木"}

矢印の後ろの波かっこが初期値です。宣言と同時に中身を入れておく書き方になります。

ここで大事なのは、棚に入るものの種類も型で決まっている点です。整数型の配列には整数しか入りません。

だから tensu[1] は整数型の変数と同じように扱えますし、割り算をすれば同じように切り捨てが起きます。

配列を宣言している行を見つけたら、要素数と中身の型の二つだけメモしておくと後が楽になります。この二つが分かれば、繰返しの範囲も自然に決まってきます。

科目Bでつまずきやすい場所

仕組みが分かっていても、本番で足をすくわれる箇所は決まっています。私が学習の相談を受けてきた範囲では、次の三つが目立ちました。

先に知っておけば避けられるものばかりです。表で確認しておきましょう。

つまずく場所 何が起きるか 対処
整数の割り算で小数を期待する 平均や率の答えがずれる 割り算を見たら両辺の型を確認
論理型の変数を数として読む 条件の意味を取り違える true か false しか入らないと思い出す
宣言を読まずに処理へ進む 変数の役割を推測で決めてしまう 最初に型と個数だけ目を通す

三つ目は特に多い落とし穴です。宣言を飛ばすと、変数が何を数えているのかを処理から逆算することになります。

その推測が外れたまま読み進めると、後半で必ず矛盾が出ます。戻って読み直す時間のほうが、よほど長くつきます。

宣言だけ見て役割を決めつけない

とはいえ、型だけで役割を断定するのも危険です。同じ整数型でも、回数を数えているのか、値そのものを持っているのかは分かれます。

見分ける手がかりは、初期値と使われ方です。0 から始まって増えていくなら数える役、配列の中身が入るなら値そのものを持つ役、と読み分けます。

宣言で型を確認し、最初の代入で役割を確かめる。この二段構えにしておくと、読み違いはほとんど起きません。

変数の値を紙の上で追う手順は、次の記事にまとめてあります。

【関連記事】擬似言語のトレース表の書き方|科目Bで変数の値を追う手順を解説

空欄が宣言の行に置かれることもある

空欄補充では、処理の途中だけが問われるとは限りません。宣言の行そのものが空欄になる出題もあります。

その場合に見るべきは、その変数が後ろでどう使われているかです。割り算の結果を受け取っているなら実数型、条件として直接使われているなら論理型、といった具合に絞り込めます。

配列の要素数や添字に使われていれば、まず整数型で間違いありません。処理から型を逆算する、という向きの読み方になります。

空欄補充の考え方を体系的に確認したい人は、こちらもあわせてどうぞ。

【関連記事】基本情報技術者試験の科目Bの空欄補充問題の解き方を解説|擬似言語で見る判断ポイント

実際に動かして違いを見るのが早い

型の話は、読むだけだと頭に残りにくい分野です。整数の割り算で小数が消える様子は、自分の目で見たときにはじめて納得できます。

まずは、7 割る 2 を整数型と実数型それぞれで計算する数行を書いて、結果を見比べてみてください。数分で終わりますし、一度見れば忘れません。

Giji Academy の擬似言語シミュレーターなら、変数の中身が変わっていく様子を追いながら処理を確かめられます。宣言した変数がどう埋まっていくのかも、そのまま画面で見られます。

なお、擬似言語の記号や書き方をまとめて見直したいときは、早見表を用意しています。

【関連記事】擬似言語の記号・記述形式一覧|試験前のチェック早見表

まとめ

最後に、この記事で確認したことを振り返ります。

宣言は、データを入れる箱を用意する行でした。丸の後ろに型、コロンの後ろに変数名という並びで書かれます。

型は、入れられる値の種類と計算の振る舞いを決めています。整数型、実数型、文字型、文字列型、論理型の五つを押さえておけば、科目Bの出題範囲では困りません。

とくに大きいのが、整数どうしの割り算で小数が切り捨てられるという性質でした。平均や率が絡む問題では、ここが答えを分けます。

論理型は、条件が成り立ったかどうかを後ろへ持ち越すための型です。if の条件にそのまま置ける点を覚えておいてください。

そして、つまずきの多くは宣言を読み飛ばすところから始まります。処理に入る前の数秒を、型の確認に使ってみましょう。

宣言が読めるようになると、コードの見通しは驚くほど良くなります。今日の一問から、最初の数行に目を通す習慣を作ってみてください。

擬似言語の基礎から応用まで学べる
Giji Academy

Giji Academyでは、擬似言語の基礎からアーキテクチャなどの応用的な内容まで幅広く学べます。
また、ブラウザ上で直接擬似言語コードを試すことができ、実践的なスキルを身につけることが可能です。

擬似言語の学習を始める