このプログラムでは、ユークリッドの互除法を用いて最大公約数を計算し、それを利用して最小公倍数を計算します。
最大公約数と最小公倍数を求めるプログラム
以下のコードでは、数値12と18の最大公約数と最小公倍数を計算し、その結果を表示しています。
HTMLとJavaScriptコード
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>最大公約数と最小公倍数を求める方法</title>
<script>
window.onload = function() {
// 最大公約数を求める関数(ユークリッドの互除法)
function gcd(a, b) {
return b === 0 ? a : gcd(b, a % b);
}
// 最小公倍数を求める関数
function lcm(a, b) {
return (a * b) / gcd(a, b); // 最大公約数を利用して最小公倍数を計算
}
// テスト用の数値
const num1 = 12;
const num2 = 18;
// 最大公約数と最小公倍数を計算
const greatestCommonDivisor = gcd(num1, num2);
const leastCommonMultiple = lcm(num1, num2);
// 結果をHTMLに表示
document.getElementById('gcdValue').textContent = `${num1} と ${num2} の最大公約数: ${greatestCommonDivisor}`;
document.getElementById('lcmValue').textContent = `${num1} と ${num2} の最小公倍数: ${leastCommonMultiple}`;
}
</script>
</head>
<body>
<h1>最大公約数と最小公倍数を求める方法</h1>
<div id="gcdValue"></div>
<div id="lcmValue"></div>
</body>
</html>
プログラムの解説
このプログラムでは、gcd()関数を用いてユークリッドの互除法により最大公約数を計算し、その結果を使用してlcm()関数で最小公倍数を求めています。
以下はgcd()とlcm()メソッドの注意点です。
gcd()は、ユークリッドの互除法を使った再帰的なアルゴリズムで、2つの数の最大公約数を効率よく計算します。2つの数のうち1つがゼロの場合、もう一方の数が最大公約数です。lcm()は、gcd()の結果を使用して2つの数の最小公倍数を計算します。これは、(a * b) / gcd(a, b)で求められます。- 整数以外の数値や負の数に対しては、想定外の結果が出ることがあるため注意が必要です。
Mathオブジェクト メソッドの機能一覧

Mathオブジェクト メソッドの機能一覧 | JavaScript リファレンス
JavaScriptのMathオブジェクトは、数学的な定数や関数を提供するオブジェクトで、静的メソッドのみを持ちます。以下に、Mathオブジェクトのメソッドをアルファベット順にまとめています。Mathオブジェクトの静的メソッド メソッド名 説明と注意点 Math.abs(x) 数値の絶対値を返します。注意点: 引数が数...