共通に使用される擬似言語の記述形式
擬似言語を使用した問題では,各問題文中に注記がない限り,次の記述形式が適用されているものとする。
〔宣言,注釈及び処理〕
| 記述形式 | 処理 |
|---|---|
| ○手続名又は関数名 | 手続又は関数を宣言する。 |
| 型名: 変数名 | 変数を宣言する。 |
| /* 注釈 */ | 文に注釈を記述する。 |
| // 注釈 | |
| 変数名 ← 式 | 変数に式の値を代入する。 |
| 手続名又は関数名(引数, …) | 手続又は関数を呼び出し,引数を受け渡す。 |
| if (条件式1) 処理1 elseif (条件式2) 処理2 elseif (条件式n) 処理n else 処理n + 1 endif | 選択処理を示す。 条件式を上から評価し,最初に真になった条件式に対応する処理を実行する。 以降の条件式は評価せず,対応する処理も実行しない。 どの条件式も真にならないときは,処理n + 1 を実行する。 各処理は,0 以上の文の集まりである。 elseif と処理の組みは,複数記述することがあり,省略することもある。 else と処理n + 1 の組みは一つだけ記述し,省略することもある。 |
| while (条件式) 処理 endwhile | 前判定繰返し処理を示す。 条件式が真の間,処理を繰返し実行する。 処理は,0 以上の文の集まりである。 |
| do 処理 while (条件式) | 後判定繰返し処理を示す。 処理を実行し,条件式が真の間,処理を繰返し実行する。 処理は,0 以上の文の集まりである。 |
| for (制御記述) 処理 endfor | 繰返し処理を示す。 制御記述の内容に基づいて,処理を繰返し実行する。 処理は,0 以上の文の集まりである。 |
演算子と優先順位・論理型の定数
〔演算子と優先順位〕
| 演算の種類 | 演算子 | 優先度 |
|
|---|---|---|---|
| 式 | () . | 高 | |
| 単項演算子 | not + − | ↑ | |
| 二項演算子 | 乗除 | × ÷ % | |
| 加減 | + − | ||
| 関係 | ≠ ≦ ≧ < = > | ||
| 論理積 | and | ↓ | |
| 論理和 | or | 低 | |
注記
- 演算子 . は,メンバ変数又はメソッドのアクセスを表す。
- 演算子 mod は,剰余算を表す。
〔論理型の定数〕
true ,false
〔配列〕
配列の要素は,“[”と“]”の間にアクセス対象要素の要素番号を指定することでアクセスする。なお,二次元配列の要素番号は,行番号,列番号の順に“,”で区切って指定する。
“{”は配列の内容の始まりを,“}”は配列の内容の終わりを表す。ただし,二次元配列において,内側の“{”と“}”に囲まれた部分は,1 行分の内容を表す。
〔未定義,未定義の値〕
変数に値が格納されていない状態を,“未定義”という。変数に“未定義の値”を代入すると,その変数は未定義になる。