採点されません。匿名です。 間違えることは学習の一部です。読むだけでもかまいません。

配列の基本関数

テクノロジ系 / array-basic (添字配列・配列関数・explode/implode)

配列の基本関数

Lesson 4 / Chapter 4

配列にはよく使う関数がある

<?php
$nums = [10, 20, 30, 40, 50];

echo count($nums) . "\n";       // 5
echo array_sum($nums) . "\n";   // 150
echo max($nums) . "\n";         // 50
echo min($nums) . "\n";         // 10
  • ループを書かなくても、関数 1 つで「個数」「合計」「最大」「最小」が取れる
  • 集計処理を 短く 書ける

count($arr) — 要素数

<?php
$fruits = ["りんご", "みかん", "ぶどう"];
echo count($fruits) . "\n";   // 3
  • 配列に入っている 要素の数 を返す
  • 「ループの回数」や「最後の添字を計算」するときに使う

array_sum($arr) — 合計

<?php
$scores = [80, 90, 100];
echo array_sum($scores) . "\n";   // 270
  • 配列の全要素を 足した結果 を返す
  • 中身は数値であることが前提 (文字列だと 0 として扱われる)

max($arr) / min($arr) — 最大・最小

<?php
$temps = [22, 30, 18, 27];

echo max($temps) . "\n";   // 30
echo min($temps) . "\n";   // 18
  • max($arr) は最大値
  • min($arr) は最小値
  • 2 つを組み合わせれば「最大と最小の差 (レンジ)」も計算できる
echo (max($temps) - min($temps)) . "\n";   // 12

平均 = 合計 ÷ 個数

<?php
$scores = [80, 90, 100];
$avg = array_sum($scores) / count($scores);
echo $avg . "\n";   // 90
  • array_sum()count() を組み合わせれば平均が出る
  • 0 で割らないよう、件数が 0 でないことを先に確認することもある

このチャプターでできるようになること

count($arr) で要素数を取れる

array_sum($arr) で合計を取れる

max($arr) min($arr) で最大・最小を取れる

✅ これらを組み合わせて平均や差を計算できる

→ ドリルへ

考えてみよう

既定では正解・不正解の判定はしません。自分のペースで「答えを見る」を。採点してほしい場合だけ「採点してほしい」を押してください。

ドリル 01 — 要素数を数える

問題

配列 [3, 1, 4, 1, 5, 9, 2, 6] の要素数を count() で取得し、echo で 1 行出力してください。

期待される出力:

8

採点

php scripts/grade.php topics/array-basic/ch04-array-functions/drill/01-count/

ヒント

  • $nums = [3, 1, 4, 1, 5, 9, 2, 6];
  • echo count($nums) . "\n";

ドリル 02 — 合計を計算

問題

配列 [12, 8, 25, 5, 50] の合計を array_sum() で計算し、echo で 1 行出力してください。

期待される出力:

100

採点

php scripts/grade.php topics/array-basic/ch04-array-functions/drill/02-sum/

ヒント

  • $nums = [12, 8, 25, 5, 50];
  • echo array_sum($nums) . "\n";

ドリル 03 — 最大と最小の差

問題

配列 [22, 30, 18, 27, 25] について、最大値と最小値の (最大 - 最小) を echo で 1 行出力してください。

期待される出力:

12

採点

php scripts/grade.php topics/array-basic/ch04-array-functions/drill/03-max-min/

ヒント

  • $nums = [22, 30, 18, 27, 25];
  • echo (max($nums) - min($nums)) . "\n";