A Pythagorean triplet is a set of three natural numbers, a<b<c for which,
For example, .
There exists exactly one Pythagorean triplet for which .
Find the product .
Besedilo naloge
A Pythagorean triplet is a set of three natural numbers, a<b<c for which,
For example, .
There exists exactly one Pythagorean triplet for which .
Find the product .
Problem naloge
Naloga zahteva od nas da poiščemo taka števila a,b,c za katera velja pitagorov izrek, da so števila naraščajoča a<b<c in da je vsota števil a+b+c=1000.
Rešitev v programu Python
Definiramo neko število, ki ne rabi nobenega parametra saj bomo uporabljali konkretna števila.
Uporabili bomo metodo range, ki nam bo prebrala števila. Če uporabimo metodo: range(1,1001), nam bo program izpisal vsa števila od 1 do 1000.
Z for zanko bomo šli po vseh številih od 1 do 1000, to bodo števila c. Ker mora biti b<c bomo znotraj te zanke naredili še eno zanko,(to bodo število b) ki bo šla po vseh številih od 1 do c in ker je a<b<c bomo spet znotraj te zanke naredili še eno zanko ki bo šla od 1 do b(to bo število a):
Sedaj smo števila s pomočjo for zanke razporedili po velikosti a<b<c.
Uporabimo sedaj drugi pogoj: Pitagorov izrek.
Znotraj vseh zank uporabimo stavek if, ki nam pove, da če velja potem mora veljat tudi, da je vsota . Če to vse velja potem nam naj vrne produkt števil
Program
Program zaženemo s pomočjo tipke F5. Odpre se nam okno in tja zapišemo:
Produkt števila a,b,c je število 31875000.
Preizkus programa
Testni primer prikazan s pomočjo filma:
Stran Euler najdemo na spletni strani:
Na stran se moramo prijaviti. Ko se prijavimo nam spletna stran ponudi možnost, da lahko svojo rešitev vpišemo. Če se nam prikaže zelena kljukica je naloga rešena pravilno.