ch06 — 配列を引数に取る / 配列を返す
スライドで見るこの章を AI と学ぶ
演習問題の詳細
この章の演習問題の内容を読めます。実際に手元で解くには教材リポジトリを clone してください。
ドリル 01 — total(array $arr): int で合計を返す
問題
配列 $arr を引数に取り、要素の合計を return で返す関数 total を、型宣言付きで定義してください。
- 引数
$arrの型はarray - 戻り値の型は
int
定義した後、次の 3 件の戻り値を 1 行ずつ出力してください。
total([1, 2, 3, 4, 5])total([10, 20, 30])total([7])
期待される出力:
15
60
7
ヒント
function total(array $arr): int { ... }- 中で
$sum = 0;を用意しforeach ($arr as $v) { $sum += $v; } - 最後に
return $sum;
🧪 ブラウザで試す
スライドのコードを写経して ▶ 実行、自分で書いて 📝 採点 で答え合わせ。初回のみ PHP ランタイム読込で数秒かかります。
PHP ランタイム未読込
ドリル 02 — 配列の各要素を 2 倍にして返す
問題
配列 $arr を引数に取り、各要素を 2 倍にした 新しい配列 を return で返す関数 doubled を定義してください。
- 引数
$arrの型はarray - 戻り値の型は
array
定義した後、doubled([1, 2, 3, 4, 5]) の戻り値を 1 要素 1 行で出力してください。
期待される出力:
2
4
6
8
10
ヒント
function doubled(array $arr): array { ... }- 中で
$result = [];を用意しforeach ($arr as $v) { $result[] = $v * 2; } - 最後に
return $result; - 呼び出し側で
foreach (doubled([1, 2, 3, 4, 5]) as $v) { echo $v . "\n"; }
🧪 ブラウザで試す
スライドのコードを写経して ▶ 実行、自分で書いて 📝 採点 で答え合わせ。初回のみ PHP ランタイム読込で数秒かかります。
PHP ランタイム未読込
ドリル 03 — 配列から正の数だけ抽出する
問題
配列 $arr を引数に取り、0 より大きい要素だけを集めた 新しい配列 を return で返す関数 positives を定義してください。
- 引数
$arrの型はarray - 戻り値の型は
array 0は正の数に 含めない (> 0で判定)
定義した後、positives([-3, -1, 0, 2, -5, 4, 7]) の戻り値を 1 要素 1 行で出力してください。
期待される出力:
2
4
7
ヒント
function positives(array $arr): array { ... }- 中で
$result = [];を用意しforeach ($arr as $v) { if ($v > 0) { $result[] = $v; } } - 最後に
return $result; - 呼び出し側で
foreach (positives([...]) as $v) { echo $v . "\n"; }
🧪 ブラウザで試す
スライドのコードを写経して ▶ 実行、自分で書いて 📝 採点 で答え合わせ。初回のみ PHP ランタイム読込で数秒かかります。
PHP ランタイム未読込
演習問題(3問)
サイト内で問題文・雛形・解答例を確認できます。実際に手元で解くには教材リポジトリを clone してください。
完了にすると進捗に反映されます