再帰を理解するには、再帰を理解する必要があります
Problem
ユークリッドのアルゴリズムには、減算の演算を剰余を計算する演算に置き換えたバージョンもあります。
このバージョンは、平均してステップ数が大幅に少ないため、現在では推奨されていると考えられています。しかし、コンピューターが大きくて遅かった時代には、除算演算自体が複雑な手順になる可能性がありました。そして、アルゴリズムの最初のバージョンはより効率的になる可能性があります。
減算をモジュロ演算に置き換えて Euclid のアルゴリズムを実装します。
2 つの自然数
A
と
B
が与えられます。
A
と
B
の最大公約数を返す関数
nod(A, B)
を作成します。
プログラムの例
<テーブルクラス="テーブルボーダーテーブル-smテーブルストライプ">
<頭>
# |
入力 |
出力 |
<本体>
1 |
12 42 |
6 |
表>
ソリューションではループを使用できないことに注意してください。
関数を書くだけでよく、 何も入力したり出力したりする必要はありません!
Запрещенные операторы: for;while;do;until;gcd