演習課題「ユークリッドの互除法を実装する」
整数aと、整数bが与えられるので、aとbの最大公約数を求めてください。
右側のコードエリアには、入力を受け取り、関数calc_gcdを呼びだすコードが用意されています。コードを書き加え、問題を解くコードを完成させてください。
期待する出力値
2
※有料会員になるとこの動画をご利用いただけます
詳しい説明を読む
#02:ユークリッドの互除法
このチャプターでは、ユークリッドの互除法について学習します。
def calc_gcd(a, b):
if b == 0:
return a
return calc_gcd(b, a%b)
def calc_multi_gcd(a):
n = len(a)
gcd = a[0]
for i in range(1, n):
gcd = calc_gcd(gcd, a[i])
return gcd
a = [12, 30, 42]
gcd = calc_multi_gcd(a)
for x in a:
print(x, end=" ")
print(f"の最大公約数は {gcd}")
プログラミング学習
>
Python3
>
新・アルゴリズムとデータ構造入門 Python編
>
新・アルゴリズムとデータ構造入門 Python編7: 最大公約数・最小公倍数
>
ユークリッドの互除法
ログインすると採点できます
コードの実行