From ff63d5b4b9761a5a57cf838f859c61571a57bd63 Mon Sep 17 00:00:00 2001 From: WATAHIKI YUTO Date: Sat, 7 Mar 2026 20:50:38 +0900 Subject: [PATCH] =?UTF-8?q?=E3=80=8C=E9=85=8D=E5=88=97=E3=80=8D=E3=81=AE?= =?UTF-8?q?=E7=AF=80=E3=81=AE=E6=BC=94=E7=BF=92=E5=95=8F=E9=A1=8C=E3=81=AE?= =?UTF-8?q?=E8=AA=AC=E6=98=8E=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../11-array/_samples/array-max/index.html | 2 +- .../11-array/_samples/array-max/script.js | 22 ++---- .../_samples/array-sum-for-of/script.js | 2 +- .../_samples/array-sum-simple-for/index.html | 10 --- .../_samples/array-sum-simple-for/script.js | 8 -- docs/1-trial-session/11-array/index.mdx | 73 ++++--------------- 6 files changed, 23 insertions(+), 94 deletions(-) delete mode 100644 docs/1-trial-session/11-array/_samples/array-sum-simple-for/index.html delete mode 100644 docs/1-trial-session/11-array/_samples/array-sum-simple-for/script.js diff --git a/docs/1-trial-session/11-array/_samples/array-max/index.html b/docs/1-trial-session/11-array/_samples/array-max/index.html index a75da8d93..90707cea0 100644 --- a/docs/1-trial-session/11-array/_samples/array-max/index.html +++ b/docs/1-trial-session/11-array/_samples/array-max/index.html @@ -2,7 +2,7 @@ - findMaxNumber関数 解答例 + 配列の最大値 解答例 diff --git a/docs/1-trial-session/11-array/_samples/array-max/script.js b/docs/1-trial-session/11-array/_samples/array-max/script.js index de811f79e..e27b6e898 100644 --- a/docs/1-trial-session/11-array/_samples/array-max/script.js +++ b/docs/1-trial-session/11-array/_samples/array-max/script.js @@ -1,20 +1,10 @@ -const array1 = [3, 6, 8, 5, 0]; -const array2 = [-8, -7, -3, -1, -5]; +const numbers = [3, 6, 8, 5, 0]; -function findMaxNumber(numbers) { - if (numbers.length === 0) return; // 空配列を除外 - let maxNumber = numbers[0]; - for (const number of numbers) { - if (maxNumber < number) { - maxNumber = number; - } +let maxNumber = numbers[0]; +for (let i = 1; i < numbers.length; i += 1) { + if (maxNumber < numbers[i]) { + maxNumber = numbers[i]; } - return maxNumber; } -document.write( - `

配列[${array1}]の最大値は${findMaxNumber(array1)}です。

`, -); -document.write( - `

配列[${array2}]の最大値は${findMaxNumber(array2)}です。

`, -); +document.write(`配列[${numbers}]の最大値は${maxNumber}です。`); diff --git a/docs/1-trial-session/11-array/_samples/array-sum-for-of/script.js b/docs/1-trial-session/11-array/_samples/array-sum-for-of/script.js index 41980b7f1..60c86c6bd 100644 --- a/docs/1-trial-session/11-array/_samples/array-sum-for-of/script.js +++ b/docs/1-trial-session/11-array/_samples/array-sum-for-of/script.js @@ -5,4 +5,4 @@ for (const number of numbers) { sum += number; } -document.write(`配列の合計値は ${sum} です。`); +document.write(`配列の合計値は${sum}です。`); diff --git a/docs/1-trial-session/11-array/_samples/array-sum-simple-for/index.html b/docs/1-trial-session/11-array/_samples/array-sum-simple-for/index.html deleted file mode 100644 index 76c68f538..000000000 --- a/docs/1-trial-session/11-array/_samples/array-sum-simple-for/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - 配列の和 解答例 - - - - - diff --git a/docs/1-trial-session/11-array/_samples/array-sum-simple-for/script.js b/docs/1-trial-session/11-array/_samples/array-sum-simple-for/script.js deleted file mode 100644 index 6f8ff0dc8..000000000 --- a/docs/1-trial-session/11-array/_samples/array-sum-simple-for/script.js +++ /dev/null @@ -1,8 +0,0 @@ -const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; - -let sum = 0; -for (let i = 0; i < numbers.length; i += 1) { - sum += numbers[i]; -} - -document.write(`配列の合計値は ${sum} です。`); diff --git a/docs/1-trial-session/11-array/index.mdx b/docs/1-trial-session/11-array/index.mdx index 29594e193..ff1bc1343 100644 --- a/docs/1-trial-session/11-array/index.mdx +++ b/docs/1-trial-session/11-array/index.mdx @@ -101,20 +101,13 @@ document.write(studentNames); // 田中,佐藤,鈴木,内藤 ## 演習問題1 -- 配列があります。その配列の要素の和を求めてみましょう。 - -:::tip -`for〜of`文を使って、配列のそれぞれの要素に対して操作を実行します。 -::: - -:::note -次の配列をテスト用に使ってください。 +`for〜of`文を用いて、配列の要素の和を求めるプログラムを作成してみましょう。 ```javascript const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; -``` -::: +// 配列の要素の和を求める +``` @@ -126,74 +119,38 @@ for (const number of numbers) { sum += number; } -document.write(`配列の合計値は ${sum} です。`); +document.write(`配列の合計値は${sum}です。`); ``` -別解 - -`for〜of`文を使わず、次のように書くこともできます。 - -```javascript -const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; - -let sum = 0; -for (let i = 0; i < numbers.length; i += 1) { - sum += numbers[i]; -} - -document.write(`配列の合計値は ${sum} です。`); -``` - - - ## 演習問題2(発展) -引数に配列を一つ取り、その配列の最大値を求める関数`findMaxNumber`を作成しましょう。 - -:::note - -テスト用に、ランダムに生成された次の配列を使ってください。 +`for`文を用いて、配列の最大値を求めるプログラムを作成してみましょう。 ```javascript -const array1 = [3, 6, 8, 5, 0]; -const array2 = [-8, -7, -3, -1, -5]; -``` +const numbers = [3, 6, 8, 5, 0]; -::: +// 配列の最大値を求める +``` ```javascript -const array1 = [3, 6, 8, 5, 0]; -const array2 = [-8, -7, -3, -1, -5]; - -function findMaxNumber(numbers) { - if (numbers.length === 0) return; // 空配列を除外 - let maxNumber = numbers[0]; - for (const number of numbers) { - if (maxNumber < number) { - maxNumber = number; - } +const numbers = [3, 6, 8, 5, 0]; + +let maxNumber = numbers[0]; +for (let i = 1; i < numbers.length; i += 1) { + if (maxNumber < numbers[i]) { + maxNumber = numbers[i]; } - return maxNumber; } -document.write( - `

配列[${array1}]の最大値は${findMaxNumber(array1)}です。

`, -); -document.write( - `

配列[${array2}]の最大値は${findMaxNumber(array2)}です。

`, -); +document.write(`配列[${numbers}]の最大値は${maxNumber}です。`); ``` -:::danger -配列の長さにかかわらず配列の最初の値を使うような処理をする場合は、長さが0である空の配列を除外することを忘れないでください! -::: -