今回は、数学的なお話。ユークリッドの互除法をJavascriptでしてみようと思います。
まず...
ユークリッドの互除法とは?という方へ。
ユークリッドの互除法は、簡単に最大公約数を求めるための計算法です。説明より例を示した方がいいかと思いますので、例題を一つ。
(例題) 1071と1029の最大公約数を求めよ。
- 1071 を 1029 で割った余りは 42
- 1029 を 42 で割った余りは 21
- 42 を 21 で割った余りは 0
- よって、答えは 42
では、これをプログラムに書き起こしてみましょう。関数名は最大公約数の略であるG. C. D.としました。
function gcd(m, n) { // 剰余 var r; if(m < n) { // m >= nにする r = m; //一時退避 m = n; n = r; } while ((r = m % n) != 0) { m = n; n = r; } return n; }
0 件のコメント:
コメントを投稿
質問や意見などどしどしお寄せください!!