# Two approaches to primality testing

У большинства учебных задач есть минимум два честных решения — сравним их.

## Задача

Определить, является ли число `n` простым. Достаточно проверять делители до квадратного корня из `n`.

## Решение

```python
def is_prime(n: int) -> bool:
    if n < 2:
        return False
    for d in range(2, int(n ** 0.5) + 1):
        if n % d == 0:
            return False
    return True


print(is_prime(29))
```

## Как это работает

Если у числа есть делитель, больший корня, то у него есть и парный меньший. Поэтому перебор до `√n` гарантированно находит любой составной делитель.

## Пример работы

```text
True
```

## Сложность

O(√n) по времени, O(1) по памяти.


## Альтернативный подход

Ту же задачу часто решают иначе: например, через рекурсию вместо цикла или через стандартную библиотеку вместо ручной реализации. Альтернатива обычно короче, но первое «ручное» решение лучше показывает механику работы алгоритма. Полезно написать оба и сравнить на одинаковых тестах.

Оба подхода рабочие; важно понимать цену каждого, а не копировать первый попавшийся.

**Читайте также:**

[минимум](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/t-rk-snap-if-a-29d650.pdf) · [алгоритма](https://discuss.tchncs.de/post/65440802) · [перебор](https://drop.xtrafrancyz.net/selif/hhp116vkdb.pdf) · [решение](https://writefreely.ethibox.fr/oz70cda8/gehentai) · [числа](https://cultmtl.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/event-c84494.pdf) · [например](https://fermer.dp.ua/telebox+sks+%60rby?f=linkcentre) · [квадратного](https://news-ctl-posts.hashnode.dev/understanding-binary-search) · [библиотеку](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/10/nicetube-one-f7f71a.pdf) · [вместо](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/digit-sum-oshibki-mv8ukcmc.md) · [лучше](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [решают](https://yakihonne.com/article/naddr1qvzqqqr4gupzp2qhwj28rwfkwnx9jvjr252waezzlyequv8l2mcdtukffazjv3e7qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkzcn9x56r2ery95enqcen956rxcf395ukgv34956nvcmpxsckxcecxuenwmtjrpk) · [меньший](https://rentry.co/ai-628901) · [каждого](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [Альтернатива](https://discuss.tchncs.de/post/65439896) · [Альтернативный](https://paste.rs/GmUH9) · [python](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [копировать](https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/10/what-is-perfect-competition-characterist-47e8f6.pdf) · [задачу](https://ecency.com/@lukaskral2261/post-5364aa) · [первый](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/taha-zer-onlyfans-748595.pdf) · [реализации](https://hey.xyz/posts/aexba4sqekave6kfab) · [находит](https://paper.wf/sofiaklein02log/twitter-liseli-gizli) · [любой](https://ecency.com/@martinnemec5998/post-9605e6) · [Поэтому](https://topsad.com.ua/join/sks+khTybth+mSry?f=instapaper) · [задач](https://kappa.lol/hYaTN5)

