# Step-by-step: primality testing (part 8511)

Пройдём задачу шаг за шагом — такой формат удобен для первого знакомства с алгоритмами.

## Задача

Определить, является ли число `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) по памяти.


## Разбор по шагам

1. **Шаг 1. Входные данные.** Проверяем, что приходит в функцию, и какие значения считаются корректными.
2. **Шаг 2. Основной цикл.** Именно здесь происходит вся работа; следим за изменениями переменных на каждой итерации.
3. **Шаг 3. Результат.** Убеждаемся, что возвращаемое значение соответствует условию задачи, включая крайние случаи.

Когда каждый шаг понятен, доработка решения перестаёт быть лотереей.

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

[Убеждаемся](https://hey.xyz/posts/240xf9wyq83fzn2sgmh) · [доработка](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/10/shin-chan-mom-porn-39bdef.pdf) · [следим](https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/10/simple-wallpaper-for-laptop-b44a0d.pdf) · [перебор](https://emotionalanime.com/k%C3%B6yl%C3%BC-%C3%A7%C4%B1plak?f=linkcentre) · [итерации](https://artofhosting.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/nanomo-c9b900.pdf) · [функцию](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [формат](https://blog.spikyhair.club/oza7ab90/typh-mimi) · [range(2](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [парный](https://marieroux423.overblog.fr/2026/10/post-5.html) · [задачи](https://isc.sans.edu/diary.html/33208#comment) · [памяти](https://wuchu-pub.com/uploads/20261019/5291c8bc4553e0819d5f169690d69447.pdf) · [Разбор](https://jaflysilve.freeflarum.com/d/3455-3455-tango-ifsa-twiter) · [int(n](https://www.sfahba.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/tango-premium-if-a-8de737.pdf) · [переменных](https://flixpinoytv.com/adriana+olivarez+sin+ropa?f=instapaper) · [приходит](https://paste2.org/B2j9bIYb) · [является](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/loibus-9dcae8.pdf) · [Входные](https://paper.wf/almakeller64log/sanadong-man) · [шагам](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [времени](https://gall.dcinside.com/mgallery/board/view/?id=nmixxreality&no=3541) · [случаи](https://sway.cloud.microsoft/ukj28JTFnYxKq1N2) · [изменениями](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/10/angelinadark1-ba54d6.pdf) · [шагом](https://news-ctl-posts.hashnode.dev/writing-tests-for-word-frequency-counting-part-55d2)

