JavaScript/Math/pow
ナビゲーションに移動
検索に移動
Math.pow(x, y) は、x の y 乗を返します。これは、x を y 回掛けた値を返します[1]。
- 引数
xがNaNの場合、NaNを返します。 - 引数
yがNaNの場合、NaNを返します。 - 引数
xが+0かつyが正の場合、+0を返します。 - 引数
xが-0かつyが正の場合、-0を返します。 - 引数
xが+0かつyが負の場合、Infinityを返します。 - 引数
xが-0かつyが負の場合、-Infinityを返します。 - 引数
xが1の場合、1を返します。 - 引数
yが+0の場合、1を返します。 - 引数
yが-0の場合、1を返します。 - 引数
xがInfinityかつyが正の場合、Infinityを返します。 - 引数
xがInfinityかつyが負の場合、+0を返します。 - 引数
xが-Infinityかつyが正の場合、-Infinityを返します。 - 引数
xが-Infinityかつyが負の場合、-0を返します。 - 引数
xが1かつyがInfinityの場合、NaNを返します。 - 引数
xが1かつyが-Infinityの場合、NaNを返します。
例
べき乗を計算するプログラム
以下のプログラムは、ユーザーが入力した値のべき乗を計算します。
const f = p => { for (;;) { a = prompt(`${p}は何ですか?`); if (!isNaN(a)) return a; alert(`${p}に、入力ミスがあります。 "${a}"`); } } for (;;) { const x = f("値1"); const y = f("値2"); const pow = Math.pow(x, y); if (!isNaN(pow)) { alert(`${x} の ${y} 乗は ${pow.toFixed(3)} です。`); break; } alert("入力が大きすぎます。"); }
このプログラムでは、Math.pow を使用して値のべき乗を計算しています。ユーザーが入力した値が NaN や Infinity の場合、適切に処理されます。
べき乗関数のグラフを描画するプログラム
以下のプログラムは、べき乗関数のグラフを描画します。
const canvas = document.createElement('canvas'); document.body.appendChild(canvas); const ctx = canvas.getContext('2d'); canvas.width = 800; canvas.height = 400; const xScale = canvas.width / 10; const yScale = canvas.height / 100; ctx.beginPath(); ctx.moveTo(0, canvas.height); for (let x = 0; x <= 10; x += 0.1) { const y = Math.pow(x, 2); const canvasX = x * xScale; const canvasY = canvas.height - y * yScale; ctx.lineTo(canvasX, canvasY); } ctx.strokeStyle = 'blue'; ctx.lineWidth = 2; ctx.stroke();
このプログラムでは、Math.pow を使用してべき乗関数のグラフを描画しています。xScale と yScale は、グラフのスケーリングを調整するための変数です。
注意点
- 引数の範囲:
Math.powの引数xとyは、任意の数値を指定できますが、xが負でyが整数でない場合、NaNが返されます。 - 戻り値の範囲:
Math.powの戻り値は、-InfinityからInfinityの範囲です。 - 精度: 浮動小数点演算の特性上、
Math.powの結果には微小な誤差が含まれることがあります。
脚註
- ↑ これは、数学的には として定義されます。