수학에서 LCM(최소공배수)은 두 숫자로 나눌 수 있는 가장 작은 정수입니다.
LCM은 인수분해 등과 같은 다양한 방법으로 계산할 수 있지만 이 알고리즘에서는 더 큰 수에 1, 2, 3…을 곱했습니다. n 두 번째 숫자로 나누어 떨어지는 숫자를 찾을 때까지
입력 및 출력
Input: Two numbers: 6 and 9 Output: The LCM is: 18
알고리즘
LCMofTwo(a, b)
입력: 두 개의 숫자와 b는> b로 간주됩니다.
출력: 및 b의 LCM.
Begin lcm := a i := 2 while lcm mod b ≠ 0, do lcm := a * i i := i + 1 done return lcm End
예시
#include<iostream> using namespace std; int findLCM(int a, int b) { //assume a is greater than b int lcm = a, i = 2; while(lcm % b != 0) { //try to find number which is multiple of b lcm = a*i; i++; } return lcm; //the lcm of a and b } int lcmOfTwo(int a, int b) { int lcm; if(a>b) //to send as first argument is greater than second lcm = findLCM(a,b); else lcm = findLCM(b,a); return lcm; } int main() { int a, b; cout << "Enter Two numbers to find LCM: "; cin >> a >> b; cout << "The LCM is: " << lcmOfTwo(a,b); }
출력
Enter Two numbers to find LCM: 6 9 The LCM is: 18