Эффективное обнаружение простых чисел

PythonPythonBeginner
Практиковаться сейчас

This tutorial is from open-source community. Access the source code

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В математике простое число - это натуральное число, большее 1, которое не является произведением двух более мелких натуральных чисел. Например, 5 - простое число, потому что единственные способы представить его в виде произведения, 1 × 5 или 5 × 1, включают само число 5. Однако, 4 не является простым числом, потому что это произведение (2 × 2), в котором оба числа меньше 4. В этом испытании вам нужно написать функцию на Python для проверки, является ли заданное число простым.

Число является простым

Напишите функцию на Python под названием is_prime(n), которая принимает целое число n в качестве входных данных и возвращает True, если число является простым, и False в противном случае. Чтобы решить данную задачу, вам нужно следовать следующим правилам:

  • Возвращайте False, если число равно 0, 1, является отрицательным числом или кратно 2.
  • Используйте all() и range() для проверки чисел от 3 до квадратного корня заданного числа.
  • Возвращайте True, если ни одно из них не делит заданное число, False в противном случае.
from math import sqrt

def is_prime(n):
  if n <= 1 or (n % 2 == 0 and n > 2):
    return False
  return all(n % i for i in range(3, int(sqrt(n)) + 1, 2))
is_prime(11) ## True

Резюме

В этом испытании вы узнали, как проверить, является ли заданное число простым, используя Python. Вы использовали функции all() и range() для проверки чисел от 3 до квадратного корня заданного числа. Вы также узнали, как возвращать True, если ни одно из них не делит заданное число, и False в противном случае.