最大公約数プログラムと返済年数のプログラム(Python)
以前コチラの記事で紹介した無料で学べるpythonテキストの中から、愛知大学の有澤先生が書かれたのを拝読させていただいている。
その中のP40「最大公約数」のプログラムと「返済にかかる年数」のプログラムを書いてみた。多分あってるけど間違ってたらコメント頂けると幸いです。
===最大公約数を求める===
とにかく割ってあまったらそれを新しく書き換え、0になるまでそれを続ける。0になったらその割った数が最大公約数。
def gcd(x,y):
while x%y!=0:
z=x%y
x=y
y=z
print y
===利子の問題===
考え方としては、与えられた数字が正ならカウンタ増やし、返済が残るなら上書き。
問題は支払額、返済額、利率共に決まっていたがそれらをすべて変数にしてみた。たぶんポイントは、利率をかけて返済後の金額をどう表すか、ということと、最後の返済額が固定額より小さい場合(例えば毎回200万返してるけど最後100万残ってるとか)の取扱。
「x円を利率y%で借りて一度にz円返すと?」という問題で書いてみた。
def loan (x,y,z):
count = 0
while x > 0:
count+=1
x=(1+y/100)*x - z
print count '回数
print (x+z)/(1+y/100) '最後の支払