ユークリッドの互除法を作ってみました。
アルゴリズムとしては有名なユークリッドの互除法を実装してみました。
HTMLやCSSでソースコードの表示が出来るようなのだが・・・現在調べ中です~(ToT)ゞ スンマセン
(上記はブログのことです。)
Ruby
――――[ここから]――――
# ユークリッドの互除法(最大公約数を求める)
def euclidean_algorithm( num1=1, num2=1 )
# 最大公約数を求める
while num1 != num2
# 大きい方の数から小さい方の数を引き算する
if num1 > num2
print num1.to_s + ' - ' + num2.to_s
num1 = num1 - num2;
puts ' = ' + num1.to_s
else
print num2.to_s + ' - ' + num1.to_s
num2 = num2 - num1;
puts ' = ' + num2.to_s
end
end
return num1
end
# メイン処理
puts '最大公約数:' + euclidean_algorithm( 24, 18 ).to_s
――――[ここまで]――――
C++
――――[ここから]――――
#include <iostream>
// ユークリッドの互除法(最大公約数を求める)
int euclidean_algorithm( int num1=1, int num2=1 );
// メイン処理
int main()
{
// 最大公約数を表示する
std::cout << "最大公約数:" << euclidean_algorithm( 24, 18 ) << std::endl;
return 0;
}
// ユークリッドの互除法(最大公約数を求める)
int euclidean_algorithm( int num1, int num2 )
{
// 最大公約数を求める
while( num1 != num2 )
{
// 大きい方の数から小さい方の数を引き算する
if( num1 > num2 )
{
std::cout << num1 << " - " << num2;
num1 = num1 - num2;
std::cout << " = " << num1 << std::endl;
}
else
{
std::cout << num2 << " - " << num1;
num2 = num2 - num1;
std::cout << " = " << num2 << std::endl;
}
}
return num1;
}
――――[ここまで]――――
この記事がみなさんの少しでも役に立てば僥倖です!!
最終更新:2009年10月26日 09:26