1 - Teorija Brojeva lcm i gcd
Kvaliteta:
Avg: 4,0Težina:
Avg: 3,0 Funkcije i su najcesci zapis za najveceg zajednickog djeljitelja (Greatest Common Divisor) i najmanjeg zajednickog visekratnika (Lowest Common Multiple).
Primjetimo prvo da je i (Jer predznak broja ne mijenja njegove proste djeljitelje)
Funkciju mozemo racunati mnogo brze nego faktorizacijom, pomocu Euklidovog algoritma.
Euklidov algoritam koristi svojstvo da je (Tvrdnja 1).
Iz ove tvrdnje jasno vrijedi i da je , za bilo koji cijeli broj
Sam algoritam izgleda ovako:
ako
ako
ako
Tako na primjer imamo
O funkciji se nema sto pametno reci osim jednakosti break (Tvrdnja 2)
Dokaz tvrnje 1
Neka je najveci prirodni broj takav da i (dakle, ).
Ocito je da tako da je barem .
Pretpostavimo da postoji takav da i i .
Tada , , a je naveci broj koji djeli i i . Kontradikcija, dakle takav ne postoji.
Dokaz tvrdnje 2
Zapisimo s time da .
Znamo da to jest i to jest .
Kako je najmanji zajednicki visekratnik, a znamo da je barem , dobivamo sto se i dobiva uvrstavanjem u formulu
Primjetimo prvo da je i (Jer predznak broja ne mijenja njegove proste djeljitelje)
Funkciju mozemo racunati mnogo brze nego faktorizacijom, pomocu Euklidovog algoritma.
Euklidov algoritam koristi svojstvo da je (Tvrdnja 1).
Iz ove tvrdnje jasno vrijedi i da je , za bilo koji cijeli broj
Sam algoritam izgleda ovako:
ako
ako
ako
Tako na primjer imamo
O funkciji se nema sto pametno reci osim jednakosti break (Tvrdnja 2)
Dokaz tvrnje 1
Neka je najveci prirodni broj takav da i (dakle, ).
Ocito je da tako da je barem .
Pretpostavimo da postoji takav da i i .
Tada , , a je naveci broj koji djeli i i . Kontradikcija, dakle takav ne postoji.
Dokaz tvrdnje 2
Zapisimo s time da .
Znamo da to jest i to jest .
Kako je najmanji zajednicki visekratnik, a znamo da je barem , dobivamo sto se i dobiva uvrstavanjem u formulu
Izvor: Nepoznato
Komentari:
lovro, 31. prosinca 2014. 01:23
Poštovanje,
Prvo bih upozorio na tipfeler u drugom redu, jer prije obrazloženja "predznak broja ne mijenja njegove proste djeljitelje" ne smije pisati gcd(a,b) = gcd(|a|,|a|). Drugo, dokaz druge tvrdnje je nejasan. Nisu stavljeni zarezi između gcd(a,b) = d & a= dk, i isprva sam mislio da piše gcd(a,b) = d*a = ... Također, nema obrazloženja zašto je gcd(k,l) = 1. Zgodno bi bilo makar neko malo uputstvo, tipa "u slučaju kada ne bi bilo gcd(k,l) = 1, ne bi moglo vrijediti d = gcd (a,b)." Osim tih par sitnica, lijep rad.
Lovro
Prvo bih upozorio na tipfeler u drugom redu, jer prije obrazloženja "predznak broja ne mijenja njegove proste djeljitelje" ne smije pisati gcd(a,b) = gcd(|a|,|a|). Drugo, dokaz druge tvrdnje je nejasan. Nisu stavljeni zarezi između gcd(a,b) = d & a= dk, i isprva sam mislio da piše gcd(a,b) = d*a = ... Također, nema obrazloženja zašto je gcd(k,l) = 1. Zgodno bi bilo makar neko malo uputstvo, tipa "u slučaju kada ne bi bilo gcd(k,l) = 1, ne bi moglo vrijediti d = gcd (a,b)." Osim tih par sitnica, lijep rad.
Lovro