JavaScript/Math/pow
表示
< JavaScript | Math
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
を返します。
例
[編集]べき乗を計算するプログラム
[編集]以下のプログラムは、ユーザーが入力した値のべき乗を計算します。
constf=p=>{for(;;){a=prompt(`${p}は何ですか?`);if(!isNaN(a))returna;alert(`${p}に、入力ミスがあります。 "${a}"`);}}for(;;){constx=f("値1");consty=f("値2");constpow=Math.pow(x,y);if(!isNaN(pow)){alert(`${x} の ${y} 乗は ${pow.toFixed(3)} です。`);break;}alert("入力が大きすぎます。");}
このプログラムでは、Math.pow
を使用して値のべき乗を計算しています。ユーザーが入力した値が NaN
や Infinity
の場合、適切に処理されます。
べき乗関数のグラフを描画するプログラム
[編集]以下のプログラムは、べき乗関数のグラフを描画します。
constcanvas=document.createElement('canvas');document.body.appendChild(canvas);constctx=canvas.getContext('2d');canvas.width=800;canvas.height=400;constxScale=canvas.width/10;constyScale=canvas.height/100;ctx.beginPath();ctx.moveTo(0,canvas.height);for(letx=0;x<=10;x+=0.1){consty=Math.pow(x,2);constcanvasX=x*xScale;constcanvasY=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
の結果には微小な誤差が含まれることがあります。
脚註
[編集]- ^これは、数学的には として定義されます。