Определение простых чисел в C#: методы и примеры

В C# существует несколько методов определения того, является ли число простым. Вот несколько подходов:

  1. Метод пробного разделения:

    • Выполните итерацию от 2 до квадратного корня числа и проверьте, делится ли число на какое-либо из этих значений.
    • Если найден какой-либо делитель, число не является простым; в противном случае оно простое.
  2. Решето Эратосфена:

    • Создайте логический массив размера n+1 и инициализируйте все записи как true.
    • Перебрать массив, начиная со 2:
      • Если текущее число помечено как истинное, оно простое.
      • Отметить все числа, кратные текущему числу, как ложные.
    • Все неотмеченные числа в массиве являются простыми.
  3. Оптимизированный метод пробного разделения:

    • Проверьте, делится ли число отдельно на 2 или 3.
    • Выполните итерацию от 5 до квадратного корня числа, увеличивая на 6 на каждом шаге.
      • Проверьте, делится ли число на текущее значение или на значение плюс 2.
    • Если найден какой-либо делитель, число не является простым; в противном случае оно простое.