コンテンツにスキップ

JavaScript/Math/cos

出典: フリー教科書『ウィキブックス(Wikibooks)』

Math.cos(x) は、引数 x の余弦(コサイン)を返します。ここで、x はラジアン単位で指定されます[1]

  • 引数 xNaN の場合、NaN を返します。
  • 引数 x+0 または -0 の場合、1 を返します。
  • 引数 xInfinity または -Infinity の場合、NaN を返します。

[編集]

余弦を計算するプログラム

[編集]

以下のプログラムは、ユーザーが入力した角度(度単位)の余弦を計算します。

constf=p=>{for(;;){a=prompt(`${p}は何度ですか?`);if(!isNaN(a))returna;alert(`${p}に、入力ミスがあります。 "${a}"`);}}for(;;){constdegrees=f("角度");constradians=degrees*Math.PI/180;constcosine=Math.cos(radians);if(!isNaN(cosine)){alert(`${degrees}度の余弦は ${cosine.toFixed(3)} です。`);break;}alert("入力が大きすぎます。");}

このプログラムでは、Math.cos を使用して角度の余弦を計算しています。ユーザーが入力した角度が NaNInfinity の場合、適切に処理されます。

余弦波を描画するプログラム

[編集]

以下のプログラムは、余弦波を描画します。

constcanvas=document.createElement('canvas');document.body.appendChild(canvas);constctx=canvas.getContext('2d');canvas.width=800;canvas.height=400;constamplitude=100;constfrequency=2;constphase=0;constyOffset=canvas.height/2;ctx.beginPath();ctx.moveTo(0,yOffset);for(letx=0;x<canvas.width;x++){constradians=(x/canvas.width)*2*Math.PI*frequency+phase;consty=yOffset-amplitude*Math.cos(radians);ctx.lineTo(x,y);}ctx.strokeStyle='blue';ctx.lineWidth=2;ctx.stroke();

このプログラムでは、Math.cos を使用して余弦波を描画しています。amplitude は振幅、frequency は周波数、phase は位相を表します。

注意点

[編集]
  • ラジアン単位: Math.cos はラジアン単位で角度を受け取るため、度単位の角度をラジアンに変換する必要があります。
  • 精度: 浮動小数点演算の特性上、Math.cos の結果には微小な誤差が含まれることがあります。

脚註

[編集]
  1. ^これは、数学的には単位円上の角度 x に対応する点のx座標を返します。

外部リンク

[編集]


close