LCM dwóch liczb w tematyce C ++ - (2024)

Ogólnie

W matematyceLCM lub mały wspólny mnożnikZestawu liczb to najmniejsza ilość mnożona przez wszystkie określone liczbyIstnieje wiele sposobów obliczania LCM dwóch liczb w C ++, takich jak używanie IF, IT iGCD lub dużo udostępnianiaWytyczne itp.

Algorytm znajdowania LCM dwóch liczb

LCM dwóch skrzyżowaniaGIBJest to najmniejsza liczba dodatnia, która jest podzielona przez oba idealne.GIB.

W obliczeniach LCM dwóch liczb w C ++ możemy znaleźć unikalny współczynnik uzupełniający obu liczb i połączyć te komponenty.Mnożenie wszystkich liczb w Unii zapewni nam najmniej wspólne wsparcie liczby.Na przykład wymaga czasuA = 42IB = 63To dwie liczby.

Szczególny współczynnik A: {2, 3, 7}. Specyficzne wsparcie obsługi B: {3, 3, 7}. Unia: {2, 3, 3, 7}

LCM (A, B)=2*3*3*7=126.

Inna metoda może użyć poniższego wzoru do obliczenia LCM dwóch liczb.

GXB=LCM(GWB)ChCD(GWB)A x b = lcm (a, b) * gcd (a, b)GXB=LCM(GWB)ChCD(GWB)

LCM(GWB)=(GXB)/ChCD(GWB)LCM (a, b) = (a x b) / gcd (a, b)LCM(GWB)=(GXB)/ChCD(G,B)

Produktynajmniejsza wspólna wielokrotność(Sor.por.) INajwyższy wspólny czynnik(GCD) liczb A i B, dwa, równe mnożeniem liczb A i B.

TutajNajwyższy wspólny czynnik(GCD). Według zalecanej nazwy jest największą liczbą dodatnią, która dzieli każdą liczbę A i B.

Spróbuj podać powyższy przykład.A = 42IB = 63

GCD (A, B)= Efekt mnożenia wszystkich konkretnych wspierających zwolennikówGIB= 3*7 = 21.

LCM(GWB)=(GXB)/ChCD(GWB)=4263/21=126LCM (a, b) = (a x b) / gcd (a, b) = 42 * 63/21 = 126LCM(GWB)=(GXB)/ChCD(GWB)=4263/21=126

Program wyszukiwania LCM dwóch liczb za pomocą polecenia IF

Możemy znaleźć LCM dwóch liczb.GIBPierwsza minimalna liczba, która jest podzielona zarówno przez A, jak i B. Możemy uruchomić zmienną MAX_NUM.Maksimum (a, b)Następnie dodaj max_num jeden po drugim, aż max_num podzielony przez A i B doskonale przy użyciu warunku IF.

wyjście:

Komplikacje czasowe:

O(a*b)Ponieważ pętle O (a*b).

Złożoność obszaru:

Och (1)Potrzebujesz dodatkowej przestrzeni, ponieważ używamy INT do rejestrowania wcześniej obliczonych wyników.

Program odbierania LCM dwóch liczb za pomocą GCD (podczas powtarzania)

W matematyceWiemy, że wynik jest mały (LCM) i dużo udostępniania (GCD) dwóch liczb.GIBRówne mnożeniem liczby A i B.

LCM(GWB)ChCD(GWB)=GBLCM (a, b) * gcd (a, b) = a * bLCM(GWB)ChCD(GWB)=GB

Przekaż tekst powyżej:

LCM(GWB)=GB/ChCD(GWB)`Lcm (a, b) = a * b / gcd (a, b)`LCM(GWB)=GB/ChCD(GWB)

Możemy znaleźć LCM dwóch liczb.GIBZnajdującGCD (A, B)Użyj pętli mnożenia

Powtórz 1: Usuwamy A z B: A = 14 i B = 35-14 = 21

Powtórz 2: Ponownie usuwamy A z B.G: a = 14 i b = 21-14 = 7.

Powtórz 3: Usuwamy B z A AS.A> b: a = 14-7 = 7 i b = 7 mamy a = b = 7, więcGCD (14, 35) = 7

wyjście:

Złożoność czasowa:

O (maksimum (a, b)): Jak wiemy, w każdym powtórzeniu usuwamy A z B lub B z A, więc możemy powiedzieć, że maks. (A, B) da nam GCD A i B.

Złożoność obszaru:

Och (1)Potrzebujesz dodatkowej przestrzeni podczas korzystania zmiędzynarodowyAby zarejestrować poprzednie wyniki obliczeń

Program odbierania LCM dwóch liczb za pomocą GCD (powtarzane połączenie)

Możemy znaleźć LCM dwóch liczb.GIBUżywającformuła:

LCM(GWB)=GB/ChCD(GWB)LCM (a, b) = a * b / gcd (a, b)LCM(GWB)=GB/ChCD(GWB)

Możemy użyć algorytmu, aby znaleźć GCDGIBUsuwając kwotę mniejszą niż zwiększona kwota między A i B i wysyłanie A i B do tej samej funkcji

Wyjście

Komplikacje czasowe:

O (maksimum (a, b)): Jak wiemy, w każdym powtarzanym połączeniu usuniemy A z B lub B z A, abyśmy mogli powiedzieć, że maks. (A, B) da nam GCD A i B.

Złożoność obszaru:

O (maksimum (a, b))Potrzebujesz dodatkowej przestrzeni ze względu na wszystkie powtarzane połączenia, ilość powtórzenia, dopóki nie otrzymamy GCD obu liczb.GIB.

Program LCM elementów tablicy za pomocą funkcji i powtarzany.

Wiemy to,LCM (a, b) = a * b / gcd (a, b)Może być używane dla dwóch liczbAle w przypadku elementów, które są więcej niż dwa z nasNie można złożyćPodobnyformułatak jak

LCM(GWBWC)=GBC/ChCD(GWBWC).LCM (a, b, c) = a * b * c / gcd (a, b, c)LCM(GWBWC)=GBC/ChCD(GWBWC).

Powiedzmy, że mamy tablicę.sukienka[]Składający się zIElementy do obliczenia LCM

Możemy użyć następujących algorytmów:

Na przykład znajdźmy tablicę arr[]= {42, 63, 72, 49}.Powtórz 1:Używamy dwóch pierwszych elementów:A = 42IB = 63.Lcm (42,63) = 42*63 / gcd (42, 63) = 126. Dlatego pierwsze dwa elementy: ans = 126

Powtórz 2:Przynieśliśmy następny element z tablicy i przeszukaliśmy LCM z wcześniej obliczonym Ans: A = Ans = 126 i B = 72.LCM (126,72) = 126 * 72 / GCD (126, 72) = 504Więc aktualizacja ANS: Ans = 504

Powtórz 3:podobnieUżywamy następnego elementu i wyszukiwamy LCM z poprzednimi obliczeniami.odpowiedź: a = ans = 504 i b = 49.lcm (504,49) = 504*49 / gcd (504, 49) = 3528. Dlatego Ans: Ans = 3528, więc otrzymamy tablicę LCM jako3528.

Operacja:

wyjście:

Komplikacje czasowe:

O (n * (maksimum (a, b)))GdzieITo rozmiar określonej tablicy iGIBJest liczbą, która jest uważana za wielokrotnie rozważaną, taka jak tyłek i następny element w tablicy dla n.Obliczamy LCM w operacji maks. (A, b), więc okazuje się, że złożoność czasuO (n * (maksimum (a, b))).

Złożoność obszaru:

O (maksimum (a, b))Potrzebujesz dodatkowej przestrzeni, ponieważ wszystkie powtarzane połączenia są równe liczbie powtórzeń, dopóki nie otrzymamy GCD dwóch i B.

Wniosek

  • LCM lub najmniej powszechny współczynnik dwóch liczb jest najmniejszą liczbą mnożenia obu liczb.

  • Aby znaleźć LCM dwóch liczbMamy dwie metody:

    • Znalezienie ważnych czynników obuGIBOraz pomnożenie integracji wszystkich czynników A i B
    • Znalezienie wielu udostępniania (GCD) i używając formuły

    LCM(GWB)=GB/ChCD(GWB)LCM (a, b) = a * b / gcd (a, b)LCM(GWB)=GB/ChCD(GWB)

  • Aby znaleźć GCDGIBUsuwamy kwotę mniejszą niż liczba zwiększona, aż do tej samej kwoty obu.

  • Aby znaleźć LCM tablicy elementów, którą inicjujemy.odpowiedźZ pierwszym elementem tablicy poszukaj ANS LCM.ToKwota znaleziona w tablicy

LCM dwóch liczb w tematyce C ++ - (2024)

References

Top Articles
Latest Posts
Article information

Author: Mrs. Angelic Larkin

Last Updated:

Views: 6370

Rating: 4.7 / 5 (67 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Mrs. Angelic Larkin

Birthday: 1992-06-28

Address: Apt. 413 8275 Mueller Overpass, South Magnolia, IA 99527-6023

Phone: +6824704719725

Job: District Real-Estate Facilitator

Hobby: Letterboxing, Vacation, Poi, Homebrewing, Mountain biking, Slacklining, Cabaret

Introduction: My name is Mrs. Angelic Larkin, I am a cute, charming, funny, determined, inexpensive, joyous, cheerful person who loves writing and wants to share my knowledge and understanding with you.