- 追加された行はこの色です。
- 削除された行はこの色です。
[[問題文>練習問題#eb2c4338]]
***ループ練習 [#gbb8998a]
解答例1
print('\n'.join('Hello World!' for _ in range(5)))
解答例2
for i in range(5):
print("Hello World")
***有理化するプログラム [#d21729b7]
#coding:utf-8
import math, fractions
t = []
for i in range(int(math.sqrt(10000)), 1, -1):
t.append(i**2)
dic = {}
for r in range(2, 10000 + 1):
u = [str(r)]
if r in t:
dic.update(dict.fromkeys(u, [int(math.sqrt(r)), 1]))
else:
x = 1
for w in t:
if r % w == 0:
r /= w
x *= (int(math.sqrt(w)))
if x > 1:
dic.update(dict.fromkeys(u, [int(x), r]))
else:
dic.update(dict.fromkeys(u, [1, r]))
for a in range(1, 101):
for b in range(2, 101):
c = a * b
z = dic[str(c)]
if z[0] == 1:
print "√" + str(a) + "/" + "√" + str(b) + " -> " + "√" + str(z[1]) + "/" + str(b)
elif z[1] == 1:
print "√" + str(a) + "/" + "√" + str(b) + " -> " + str(fractions.Fraction(z[0], b))
else:
if fractions.Fraction(z[0], b) == 1:
print "√" + str(a) + "/" + "√" + str(b) + " -> " + "√" + str(z[1])
else:
print "√" + str(a) + "/" + "√" + str(b) + " -> " + "(" + str((fractions.Fraction(z[0], b))) + ")" + "*" + "√" + str(z[1])