大学共通テスト「情報」に出題されているプログラミング問題は擬似言語を使います。普段授業でJavaScriptやPythonなどの言語を使いますが、共通テストの時、公平のため、疑似言語が使われます。疑似言語の書き方は普通のプログラミング言語と違いがありますので、書き方を確認する必要があります。今回は、独立行政法人大学入試センターが発表している疑似言語を覚えやすいようにまとめます。高校生の皆さんは、ぜひご参考ください。
1.コメント
#コメント
2.変数と代入
・変数名は英語の小文字で始まる英数字です。アンダーバー 「 _ 」 も使えます。
・定数名はすべて大文字を使う英数字です。
・変数の宣言は不要です。
・代入は「=」を使います。
例1:変数kazuの中に整数10を代入します
kazu = 10
例2:変数mojiの中に文字「こんにちは」を代入します
moji = “こんにちは”
例3:定数KAZUに整数 -10 を代入します
KAZU = -10
例4:外部からの入力があります
data =【外部からの入力】
3.配列と代入
・配列名は英語の大文字で始まります。
・配列の要素を [ と ] で囲みます。
・配列の要素を「 , 」で区切ります。
・配列の指定要素を [ と ] と添字番号で取得できます。
・添字番号は0番から始まりますが、問題によって1以上の値のみ使います。(要注意)
例5:データがある配列を用意します
Datas = [ 1, 2, 3, 4, 5 ]
Datas = [ “中山”, “吉田”, “田中”, “伊藤”, “藤原” ]
配列Datas のすべての要素に0を代入する
例6:配列の指定要素を取得
最初の値を取得する場合、添字番号は0となります。
onedata = Datas[0]
例7:配列の指定要素に値を代入します
添字が1の要素の値を100にします
Datas[1] = 100
例8:2次元配列の指定要素を取得します
Datas = [[“中山”, 80], [“吉田”, 91], [“田中”, 75], [“伊藤”, 83], [“藤原”, 77]]
上記配列から伊藤さんのデータを取得したい場合
ito_data = Datas[3] 取得した結果は [“伊藤”, 83] となります
上記配列から伊藤さんの成績だけを取得したい場合
ito_score = Datas[3, 1] 取得した結果は 83 となります
4.結果の表示
・表示する()を使います
・変数と変数、文字と変数をつなぐ場合、「+」を使います
・表示するの後の()に複数の値を「,」で区切って表示できます
例9:文字を表示します
表示する( “処理が終わりました。” )
例10:変数を表示します
表示する( kazu )
例11:変数と文字を表示します
表示する( kazu, “個あります。” )
表示する( “全部で”, kazu, “個あります。” )
message = “全部で” + kazu + “個あります。”
表示する( message )
5.演算
・四則演算の記号: + ー * /
・割り算の商: ÷
・割り算の余り: %
・べき乗: **
例12:計算結果を変数に代入します
kekka = 2+3✕5
kekka = (2+3)✕5
kekka = 15 / 2 結果は小数7.5です
kekka = 15 ÷ 2 結果は7です
kekka = 15 % 2 結果は1です
例13:累計
kekka = kekka + 1
kekka = kekka ー kazu
6.条件分岐
・条件式は、比較演算子と論理演算子を使います。
・条件分岐は3つの書き方があります。
① if
もし 条件式 ならば:
処理
② if…else
もし 条件式 ならば:
処理1
そうでなければ:
処理2
③ if…else if…else
もし 条件式1 ならば:
処理1
そうでなくもし 条件式2 ならば
処理2
そうでなければ
処理3
・比較演算子: == != > >= < <=
・論理演算子: and or not
例14:条件分岐①
もし kazu % 2 == 0 ならば:
kazu と「は偶数です。」を表示する
例15:条件分岐②
もし kazu % 2 == 0 ならば:
kazu と「は偶数です。」を表示する
そうでなければ:
kazu と「は奇数です。」を表示する
例16:条件分岐③
もし kazu > 0 ならば:
kazu と「は正数です。」を表示する
そうでなくもし kazu < 0 ならば:
kazu と「は負数です。」を表示する
そうでなければ:
kazu と「は0です。」を表示する
例17:論理演算子「かつ」を使って、1〜100の指定数の2倍を出力します
もし kazu > 0 and kazu <= 100 ならば:
kazu = kazu * 2
そうでなければ:
「正しい数ではありません。」を表示する
例18:論理演算子「または」を使って、負数または100以上の数の2分の1を出力します
もし kazu < 0 or kazu >= 100 ならば:
kazu = kazu / 2
そうでなければ
「正しい数ではありません。」を表示する
7.繰り返し
・繰り返しの条件式は、条件分岐の条件式と同じ書き方です。
・繰り返しは2つの書き方があります。
① while
条件式 の間繰り返す:
処理
② for
変数 を 初期値 から 終了値 まで 差分 ずつ増やし/減らしながら繰り返す:
処理
例19:数1が100になるまで繰り返して2倍にして出力します(①)
kazu = 1
kazu <= 100 の間繰り返す:
kazu = kazu * 2
表示する( kazu )
例20:1から100までの合計を出力します(②)
sum = 0
kazu を 1 から 100 まで 1 ずつ増やしながら繰り返す:
sum = sum + kazu
表示する( sum )
例21:配列のデータを1つずつ取り出して、合計と平均値を出力します(②)
Datas = [ 2, 4, 6, 8, 10 ]
sum = 0
kazu を 0 から 4 まで 1 ずつ増やしながら繰り返す:
sum = sum + Datas[ kazu ]
heikin = sum / 5
表示する( “合計は”, sum, “です。” )
表示する( “平均値は”, heikin. “です。” )
8.関数
・用意されている関数を使う場合、()の中に必要な引数を入力します。
・返す値がない場合、関数の名前を指定して使います。
・値を返す関数の場合、関数の名前を指定し、返した値を変数に代入します。
・新しい関数を定義することができます。
関数 関数名 ( 引数 ) を
処理
処理
を定義する
例22:指定された値のニ乗の値を表示する関数「二乗表示」を用意する
二乗表示( kazu )
例23:指定された値のニ乗の値を返す関数「二乗」を用意する
kekka = 二乗( kazu )
例24:値m以上値n以下の整数をランダムに1つ返す関数「乱数(m, n)」を用意する
ransu = 乱数( 1, 10 )
例25:新しい関数を定義します
指定された値の階乗の値を返す関数「階乗を返す」を用意します
関数 階乗を返す( m )を定義する:
kekka = 1
i を m から 1 まで1ずつ減らしながら繰り返す:
kekka = kekka * i
kekkaを返す
学び方
普段プログラミングを学ぶ時、プログラミング言語(JavaScriptやPythonなど)を使って学ぶことを強く勧めます。疑似言語はあくまで大学共通テストの時使われます。JavaScriptやPythonの文法を理解できれば、疑似言語も簡単に理解できます。共通テストでは、穴埋めの選択問題になりますので、プログラムをすべて自分で書くことがありません。だから、問題の解き方さえわかれば、プログラムを完成させることができます。試験前に、過去問を解いて擬似言語に慣れるようにしましょう。