НачатьНачать бесплатно

Коллатц

Математика полна занятных фактов: простые правила порой приводят к неожиданным результатам. Например, гипотеза Коллатца утверждает, что два простых правила позволяют свести любое целое число к 1.
Формулируются они так:

  • Для чётных чисел: разделить на 2
  • Для нечётных чисел: умножить на 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");
  }
}
Редактировать и запускать код