---
title: "配列とは？添字でデータを順番に扱う基本構造【基本情報技術者試験】"
description: "配列を同じ種類のデータを順番に並べて扱う構造として整理し、添字、要素、繰返し処理、科目Bの擬似言語問題での読み方をやさしく解説します。"
last_modified_at: "2026-06-23"
canonical_url: "https://stemtazoo.github.io/fe/array/"
section: "fe"
---

## まず結論

配列とは、**同じ種類のデータを順番に並べて、番号で取り出せるようにしたもの**です。

基本情報技術者試験では、配列はアルゴリズムや擬似言語を読むための土台になります。

特に大切なのは、**要素**と**添字**を区別することです。

## 直感的な説明

配列は、**番号付きの箱が横に並んでいるもの**と考えると分かりやすいです。

例えば、点数を3人分保存するとします。

```text
score[0] = 80
score[1] = 65
score[2] = 90
```

このとき、`score` が配列の名前です。  
`score[0]` や `score[1]` が、それぞれの箱を表します。

箱の中に入っている `80` や `65` がデータです。

つまり、配列では「何番目の箱を見るか」を指定して、必要なデータを取り出します。

## 定義・仕組み

配列は、複数のデータを一つの名前でまとめて扱うデータ構造です。

配列でよく使う言葉は次のとおりです。

| 用語 | 意味 |
|---|---|
| 配列 | 複数のデータを順番に並べたもの |
| 要素 | 配列の中に入っている一つ一つのデータ |
| 添字 | どの要素かを指定する番号 |
| 配列名 | 配列全体につけた名前 |

例えば、次のような配列があるとします。

```text
a[0] = 10
a[1] = 20
a[2] = 30
```

この場合、`a[1]` の値は `20` です。

ここで注意したいのは、添字が `0` から始まる場合と、`1` から始まる場合があることです。

FEの擬似言語では、問題文の説明に従うことが大切です。  
自分が普段使っているプログラミング言語の感覚だけで決めないようにします。

配列は、基本情報技術者試験の「アルゴリズムとプログラミング」や「データ構造」と関係が深いテーマです。公式の出題範囲は、[IPA：基本情報技術者試験](https://www.ipa.go.jp/shiken/kubun/fe.html) から確認できるシラバスで確認できます。

## 科目Aでどう出る？

科目Aでは、配列はデータ構造やアルゴリズムの基本として出題されます。

見るべきポイントは次の3つです。

- 配列は複数のデータをまとめて扱える
- 添字で要素を指定する
- 繰返し処理と組み合わせて使われやすい

例えば、次のような説明は配列の説明として自然です。

```text
同じ種類のデータを連続的に並べ、添字によって各要素を参照する。
```

一方で、配列は「必ず並べ替え済みのデータ」ではありません。  
並び順を持つことと、値が大小順に整列されていることは別です。

ここは、二分探索などと混同しやすいポイントです。

二分探索では、対象の配列が整列済みであることが前提になります。  
しかし、配列そのものは、整列されていなくても配列です。

## 科目Bでどう使う？

科目Bでは、配列はかなり重要です。

特に、擬似言語の問題では、配列の値を一つずつ見ていく処理がよく出ます。

例えば、次のような形です。

```text
for i = 0 から 2 まで
    合計 = 合計 + a[i]
```

この処理では、`i` の値が変わるたびに、見る要素が変わります。

```text
i = 0 のとき a[0]
i = 1 のとき a[1]
i = 2 のとき a[2]
```

このように、科目Bでは **変数の値が変わると、参照する配列要素も変わる** ことを追う必要があります。

読むときは、次の順で確認すると整理しやすいです。

1. 配列名を確認する
2. 添字に使われている変数を確認する
3. 繰返しごとに、その変数がどう変わるかを見る
4. 実際に参照される要素を書き出す

特に、`i + 1` や `i - 1` が出てきたら注意です。

```text
a[i]
a[i + 1]
a[i - 1]
```

これらは、すべて違う要素を指します。

科目Bでは、頭の中だけで処理を追うより、表にして書き出すとミスが減ります。

## よくある誤解・混同

配列でよくある誤解は、**添字と値を混同すること**です。

例えば、次の配列を考えます。

```text
a[0] = 5
a[1] = 8
a[2] = 3
```

このとき、`a[1]` の値は `8` です。  
添字の `1` は、値そのものではありません。

| 見ているもの | 意味 |
|---|---|
| `1` | 添字 |
| `a[1]` | 配列の1番の要素 |
| `8` | その要素に入っている値 |

また、配列とリストを混同することもあります。

FEの基本では、まず次のように考えると十分です。

- 配列：番号で要素にアクセスするイメージ
- リスト：データ同士がつながっているイメージ

厳密な実装の違いまで深掘りしすぎるより、試験では「添字で要素を指定する」ことを優先して押さえます。

## まとめ（試験直前用）

- 配列は、複数のデータを順番に並べて扱う構造
- 要素は中身、添字は場所を指定する番号
- 科目Bでは、添字に使われる変数の変化を追う
- `a[i]` と `a[i + 1]` は別の要素を指す
- 配列は、整列済みとは限らない
