関数 / ch06 — 配列を引数に取る / 配列を返す / 演習 02

📝 ドリル 02 — 配列の各要素を 2 倍にして返す

問題

配列 $arr を引数に取り、各要素を 2 倍にした 新しい配列return で返す関数 doubled を定義してください。

  • 引数 $arr の型は array
  • 戻り値の型は array

定義した後、doubled([1, 2, 3, 4, 5]) の戻り値を 1 要素 1 行で出力してください。

期待される出力:

2
4
6
8
10

採点

php scripts/grade.php v2/topics/07-function/ch06-array-arg/drill/02-map-double/

ヒント

  • 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"; }

テストケース

期待される出力

2
4
6
8
10

📄 starter.php(雛形)

このコードから書き始めてください。

<?php

// TODO: doubled(array $arr): array を定義し、[1, 2, 3, 4, 5] を 2 倍にして 1 行ずつ出力する
// ヒント:
//   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

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";
}