正の数 n はconsecutive-factored
、因数 i と j がある場合に限り、 になりi > 1, j > 1 and j = i +1
ます。returns 1
引数が連続因数分解されている場合、それ以外の場合は関数が必要ですreturns 0
。たとえば、この場合は関数が必要です。24=2*3*4
3 = 2+1
return 1
私はこれを試しました:
public class ConsecutiveFactor {
public static void main(String[] args) {
// TODO code application logic here
Scanner myscan = new Scanner(System.in);
System.out.print("Please enter a number: ");
int num = myscan.nextInt();
int res = isConsecutiveFactored(num);
System.out.println("Result: " + res);
}
static int isConsecutiveFactored(int number) {
ArrayList al = new ArrayList();
for (int i = 2; i <= number; i++) {
int j = 0;
int temp;
temp = number %i;
if (temp != 0) {
continue;
}
else {
al.add(i);
number = number / i;
j++;
}
}
System.out.println("Factors are: " + al);
int LengthOfList = al.size();
if (LengthOfList >= 2) {
int a =al(0);
int b = al(1);
if ((a + 1) == b) {
return 1;
} else {
return 0;
}
} else {
return 0;
}
}
}
誰でもこの問題を解決できますか?