JavaScriptで3つ以上の数値の中から最大値を求める方法
はじめに
本記事では、3つ以上の数値を受け取り、その中から最も大きい数値を返すJavaScript関数の作成方法について解説します。
例えば、以下のような数値が入力された場合を考えてみましょう。
4, 6, 7, 2, 3
この場合、期待される出力結果は次のとおりです。
7
実装例:スプレッド構文を使った方法
スプレッド構文(...)を使用すると、引数の個数を気にせず、任意の数の要素に対応できる柔軟な関数を作成できます。それでは、実際のコードを見てみましょう。
// スプレッド構文で任意の個数の要素に対応
const findGreatest = (...nums) => {
let max = -Infinity;
for(let i = 0; i < nums.length; i++){
if(nums[i] > max){
max = nums[i];
};
};
return max;
};
console.log(findGreatest(5, 6, 3, 5, 7, 5));出力結果
コンソールには以下のように表示されます。
7
コードの解説
このコードのポイントは以下の3点です。
- スプレッド構文(...nums):呼び出し時に渡されたすべての引数を1つの配列として受け取ります。これにより、引数が3つでも10個でも同じ関数で処理できます。
- 初期値「-Infinity」:比較の基準値として負の無限大を設定することで、どのような数値が渡されても正しく大小比較が行えます。
- forループによる比較:各要素を順番に現在の最大値と照らし合わせ、より大きい値が見つかるたびに変数maxを更新していきます。
別の書き方:Math.max()を使う方法
さらに簡潔に書きたい場合は、JavaScriptに標準で用意されているMath.max()メソッドをスプレッド構文と組み合わせる方法もおすすめです。
const findGreatest = (...nums) => Math.max(...nums); console.log(findGreatest(4, 6, 7, 2, 3)); // 7
このように1行で済むため、単純な最大値取得であればこちらの方が読みやすく保守性も高いでしょう。用途に応じて使い分けてみてください。
-
Pythonで配列内の最大要素を見つける方法【初心者向け解説】
本記事では、配列の中から最大の要素を見つけるための解法とアプローチについて詳しく解説します。 問題の概要 配列が入力として与えられたとき、その中から最も大きい要素を見つけ出すことが課題となります。 アプローチ この問題は「線形探索」と呼ばれるシンプルな手法で解決できます。手順は以下の通りです。 まず、変数 max を配列の最初の要素で初期化します。 次に、2番目の要素から配列の末尾まで順番に走査していきます。 走査中の各要素について、現在の max の値と比較します。 要素が max より大きければ、max の値をその要素で更新します。 そうでなければ、そのまま次の要素へ進みます。 この処
-
Pythonで3つの数値の中から最大値を求める方法
Pythonで3つの数値の中から最大のものを見つけるには、主に2つの方法があります。1つ目は組み込み関数の max() を使う方法、2つ目は if文による条件分岐で自分で比較する方法です。それぞれのやり方を具体例とともに見ていきましょう。 方法1:max() 関数を使う 最もシンプルな方法は、3つの数値をリストに格納して、組み込み関数の max() を呼び出すことです。 例 my_list = [10, 12, 3] print(max(my_list)) 出力結果 12 さらに、リストを作らずに max() に直接引数として渡すことも可能です。こちらの方がより簡潔に書けます。 print(m