Колац
Цікавий факт з математики: прості правила можуть мати великі наслідки. Наприклад, гіпотеза Колаца запитує, чи можуть два прості правила звести будь-яке ціле число до 1.
Її зазвичай формулюють так:
- Якщо число парне — поділіть його навпіл
- Якщо число непарне — помножте його на 3, а потім додайте 1
Давайте перевіримо це!
Примітка: якщо у вас трапляються перевищення часу виконання коду, уважно перевірте логіку конструкції if-else (або скористайтеся підказкою).
Ця вправа є частиною курсу
Середній рівень Java
Інструкції до вправи
- Вкажіть правильну умову завершення.
- Викличте метод, щоб перевірити, чи є
nпарним. - Правильно обробіть випадок непарного — це має спрацьовувати лише якщо початкове значення
nнепарне.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
class Collatz {
static boolean isEven(int n) {
return n % 2 == 0;
}
public static void main(String[] args) {
int n = 1634;
int i = 0;
System.out.print(n);
// Enter the appropriate termination condition
while (____) {
// Call a method to check if n is even
if (____(n)) {
System.out.println(" is even");
n /= 2;
} // Handle the odd case correctly. All non-even integers are odd
____ {
System.out.println(" is odd");
n = n * 3 + 1;
}
System.out.print(n);
i += 1;
}
System.out.println(" reached in " + i + " steps");
}
}