Последовательность треугольных чисел создается сложением натуральных чисел. Таким образом, 7-е число треугольника будет 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28. Первые десять членов будут:
1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ...
Перечислим множители первых семи чисел треугольника:
1: 1 3: 1,3 6: 1,2,3,6 10: 1,2,5,10 15: 1,3,5,15 21: 1,3,7,21 28: 1,2,4,7,14,28 Мы видим, что 28 - первое число в треугольнике. чтобы иметь более пяти делителей.
Каково значение первого числа треугольника, чтобы иметь более пятисот делителей?
Я сделал это в java с помощью этого кода. Я не вижу никаких ошибок, но он возвращает то значение, которое я присвоил count2. В чем причина?
public static void main(String[] args) {
System.out.println(number());
}
public static boolean triangle(int number) {
long sum = 0l;
for (int i = 0; i < number; i++) {
sum += i;
if ((((number + 1) * number) / 2) != sum)
return false;
}
return true;
}
public static int triangular(int number) {
int count = 0;
for (int i = 1; i <= number; i++) {
if (number % i == 0) {
count++;
}
}
return count;
}
public static String number() {
int count2 = 1;
while ((triangle(count2) == true) && (triangular(count2) == 501)) {
count2++;
}
return Integer.toString(count2);
}