求两个数的最小公倍数
方法一:for循环
#define _CRT_SECURE_NO_DEPRECATE
#include<stdio.h>
int main() {
int a = 0;
int b = 0;
scanf("%d %d", &a, &b);
//方法一:
for (int i = 1; ; i++) {
if ((a * i) % b == 0) {
printf("%d", a * i);
break;
}
return 0;
}
方法二:while循环
int main() {
int a = 0;
int b = 0;
scanf("%d %d", &a, &b);
int m = (a > b ? a : b);//求两数中的较大者
//方法二:
while (1) {
if ((m % a) == 0 && (m % b) == 0) {
printf("%d", m);
break;
}
m++;
}
return 0;
}
输出结果:
②Java实现
import java.util.Scanner;
public class LCM {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Enter the first number:");
int num1 = scanner.nextInt();
System.out.println("Enter the second number:");
int num2 = scanner.nextInt();
int lcm = findLCM(num1, num2);
System.out.println("The least common multiple of " + num1 + " and " + num2 + " is: " + lcm);
scanner.close();
}
public static int findLCM(int num1, int num2) {
return (num1 * num2) / findGCD(num1, num2);
}
public static int findGCD(int a, int b) {
if (b == 0) {
return a;
} else {
return findGCD(b, a % b);
}
}
}
运行结果: