このプログラムでは、Scanner クラスを使用して 2 つの数値を入力として受け取り、それら 2 つの数値の最小公倍数を計算します。lcm メソッドが何も返さないことを除いて、すべてが機能しているようです。「break」ステートメントで何かを台無しにした可能性がありますが、while ループにネストされた if ステートメントから抜け出す他の方法を知りませんでした。もう 1 つの質問: while(True) ループの使用は良い方法ですか、それとも悪い方法ですか? 私はそれについて多くの複雑な意見を見たからです。while(True) ループに代わるより良い方法があれば、喜んでお聞きします。ありがとうございました!
// LCM Calculator
// Author: Ethan Houston
// Language: Java
// Date: 2013-12-27
import java.io.*;
import java.util.Scanner;
public class lcm {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("This is a LCM calculator\n");
System.out.println("Enter your first number: ");
int firstNumber = scanner.nextInt();
System.out.println("Enter your second number: ");
int secondNumber = scanner.nextInt();
lcm(firstNumber, secondNumber);
}
public static int lcm(int one, int two) {
int counter = Math.min(one, two);
int initialCounter = counter;
boolean running = true;
while (running) {
if (counter % one == 0 && counter % two == 0) {
break;
} else {
counter += initialCounter;
}
}
return counter;
}
}