Kako implementirati GCD v Python?



Ta članek vam bo predstavil različne načine iskanja GCD v Pythonu, ki mu bo sledil podroben programski prikaz

V šoli in na fakulteti smo se vsi naučili osnov matematike. Med vsemi zapletenimi koncepti trigonometrije in aritmetike se najpogosteje pri programiranju uporablja koncept GCD ali Greatest Common Divisor. Podobno kot vsi programski jeziki podpira tudi ustvarjanje kode, ki bo lahko našla GCD dveh številk, ki jih je dal uporabnik, v tem članku pa se bomo naučili, kako to storiti. Poglejmo, kako uporabiti GCD v Pythonu,

Začnimo torej,





Kaj je GCD?

GCD je okrajšava za Greatest Common Divisor, ki je matematična enačba za iskanje največjega števila, ki lahko deli obe številki, ki jih je dal uporabnik. Včasih je ta enačba navedena tudi kot največji skupni faktor. Na primer, največji skupni faktor za števili 20 in 15 je 5, saj lahko obe številki delimo s 5. Ta koncept lahko enostavno razširimo tudi na nabor več kot 2 števil, pri čemer bo GCD število ki deli vse številke, ki jih je dal uporabnik.

Koncept GCD ima široko število aplikacij v teoriji števil, zlasti na področju tehnologije šifriranja, ki je RSA, in modularne aritmetike. Včasih se uporablja tudi za poenostavitev ulomkov, ki so prisotni v enačbi.



Zdaj, ko poznate osnovni koncept GCD, poglejmo, kako lahko v Pythonu kodiramo program, ki bo izvedel istega.

GCD v Pythonu

Za izračun GCD v Pythonu moramo uporabiti matematično funkcijo, ki je vgrajena v knjižnici Python. Oglejmo si nekaj primerov, da bomo to bolje razumeli.

Poglejmo, kako najti GCD v Pythonu z uporabo rekurzije



GCD z uporabo rekurzij

# Pythonova koda za prikaz naivne # metode za izračun gcd (rekurzija) def hcfnaive (a, b): if (b == 0): return a else: return hcfnaive (b, a% b) a = 60 b = 48 # natisne 12 print ('gcd 60 in 48 je:', end = '') print (hcfnaive (60,48))

Ko se zgornji program zažene, bo rezultat videti približno tako.

ms sql vadnice za začetnike

Velikost gcd 60 in 48 je: 12

GCD lahko tudi povežemo z zankami,

GCD z uporabo zank

# Pythonova koda za prikaz naivne # metode za izračun gcd (Loops) def computeGCD (x, y): if x> y: small = y else: small = x for i in range (1, small + 1): if (( x% i == 0) in (y% i == 0)): gcd = i vrne gcd a = 60 b = 48 # natisne 12 print ('gcd 60 in 48 je:', end = '') tiskanje (izračunGCD (60,48))

Ko se zgornji program zažene, bo rezultat videti tako.

Velikost gcd 60 in 48 je: 12

Poglejmo naslednjo metodo,

GCD z uporabo evklidskega algoritma

# Pythonova koda za prikaz naivne # metode za izračun gcd (evklidski algo) def computeGCD (x, y): while (y): x, y = y, x% y return xa = 60 b = 48 # natisne 12 print (' GCD 60 in 48 je: ', end =' ') print (izračunGCD (60,48))

Rezultat za zgoraj omenjeni program bo:

Velikost gcd 60 in 48 je: 12

klic s sklicem c ++

Nadaljujemo, spodaj je četrta metoda za iskanje GCD v Pythonu,

GCD z uporabo matematične funkcije GCD

Preden lahko uporabimo funkcijo math.gcd () za izračun GCD števil v Pythonu, si oglejmo njene različne parametre.

Sintaksa: math.gcd (x, y)

Parametri

X: je celo negativno celo število, katerega gcd je treba izračunati.

Y: je drugo celo negativno celo število, katerega gcd je treba izračunati.

Vrnjena vrednost: Ta parameter bo vrnil absolutno pozitivno vrnjeno vrednost, potem ko je izračunal GCD obeh številk, ki jih je vnesel uporabnik.

Izjeme: Če sta v določeni situaciji obe številki, ki jih vnese uporabnik, nič, bo funkcija vrnila nič, če pa je vnos znak, pa funkcija vrne napako.

Oglejmo si vzorčno kodo,

# Pythonova koda za prikaz gcd () # metoda za izračun gcd import math # natisne 12 print ('gcd 60 in 48 je:', end = '') print (math.gcd (60,48))

Rezultat zgornjega programa bo:

java addactionlistener (to)

Velikost gcd 60 in 48 je: 12

Pogoste izjeme

Tu so najpogostejše izjeme za uporabo te funkcije.

  1. Če je ena od številk, ki jo vnese uporabnik, nič, potem funkcija vrne nič.
  2. Če je kateri od vhodov znak, bo funkcija vrnila napako tipa.

Da bi to bolje razumeli, si oglejte spodnji primer.

# Pythonova koda za prikaz gcd () # metoda za izračun gcd import math # natisne 12 print ('gcd 60 in 48 je:', end = '') print (math.gcd (60,48))

Rezultat za zgornji program bo:

Velikost gcd 0 in 0 je: 0

Velikost gcd za a in 13 je:

Ob zagonu bo zgornji program vrnil tudi napako med izvajanjem, ki bo videti nekako tako.

Sledenje (zadnji zadnji klic):

Datoteka “/home/94493cdfb3c8509146254862d12bcc97.py”, vrstica 12, v

tiskanje (math.gcd (‘a’, 13))

TypeError: predmeta „str“ ni mogoče razlagati kot celo število

Tako smo prišli do konca tega članka o GCD v Pythonu.

Če želite pridobiti poglobljeno znanje o Pythonu skupaj z različnimi aplikacijami, lahko za spletno usposabljanje v živo s podporo 24 ur na dan in 7 dni v tednu. Imate vprašanje za nas? Omenite jih v oddelku za komentarje tega članka in odgovorili vam bomo.