পিথাগোরিয়ান ট্রিপলেট (a, b, c) যেখানে a² + b² = c², একটি নির্দিষ্ট লিমিটের ভিতরে খুঁজে বের করতে ইউক্লিডের ফর্মুলা ব্যবহার করা হয়।
উদাহরণ
def pythagorean_triplets(limit):
c, m = 0, 2
while c < limit:
for n in range(1, m):
a = m * m - n * n
b = 2 * m * n
c = m * m + n * n
if c > limit:
break
print(a, b, c)
m += 1
upper_limit = 15
print("আপার লিমিট:", upper_limit)
print("পিথাগোরিয়ান ট্রিপলেটগুলো:")
pythagorean_triplets(upper_limit)
আউটপুট
আপার লিমিট: 15 পিথাগোরিয়ান ট্রিপলেটগুলো: 3 4 5 8 6 10 5 12 13
ব্যাখ্যা
ইউক্লিডের ফর্মুলা: a = m²-n², b = 2mn, c = m²+n² (m > n)।
m=2 থেকে শুরু করে ইনক্রিমেন্ট করা হয়।
প্রতিটি m-এর জন্য n=1 থেকে m-1 পর্যন্ত লুপ চলে।
c লিমিট ছাড়লে ব্রেক করে।
প্রিমিটিভ ও নন-প্রিমিটিভ উভয় ট্রিপলেট পাওয়া যায়।