# Step-by-step: primality testing (part 7b24)

Разложим решение на шаги и объясним, что происходит на каждом из них.

## Задача

Определить, является ли число `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://rimworld.gallery/m/random/t/16305) · [числа](https://peterabrahams.eu/ai+%E6%A5%8A%E5%86%AA?f=instapaper) · [мысленный](https://news-ctl-posts.hashnode.dev/walking-through-word-frequency-counting-part-3460) · [памяти](https://yakihonne.com/article/naddr1qvzqqqr4gupzpyjyxp7uaxqa7nrw9tsd434tpx74nvqka0rnjg6zvfmp77jng5l5qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0yknjvfsvfjnzcee95unxep4956rwd3j94sngetr95mrsvnpvs6k2df3v5cnw7jfuqs) · [данные](https://drop.xtrafrancyz.net/selif/fotdcgd1m1.pdf) · [работа](https://radicle.network/nodes/index.radicle.garden/rad%3Az2KN17UEsCWGM2K1uvnW1mwuumKmE/issues/cc9793359cb0b97c069f7239a040f418dd7c1ccc) · [научиться](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [False](https://kappa.lol/QqUpdu) · [Основной](https://umcs.org.ua/flm+nmy+sks?f=linkcentre) · [составной](https://drop.xtrafrancyz.net/selif/d4rzsn80b1.pdf) · [приходит](https://artofhosting.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/event-5e5052.pdf) · [гарантированно](https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/10/rubyli222-onlyfans-8d9828.pdf) · [находит](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/martin-nov-k-nede-n-obed-eec4e4.pdf) · [число](https://mariaw92.wixsite.com/my-site-1/post/shomocum-edging-cum-control-videos-featuring-muscle-men) · [разбор](https://writefreely.ethibox.fr/ozb03649/turk-gay-ifsa) · [Разбор](https://paste2.org/5UhF3n1Z) · [условию](https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/10/insomniac-porn-ee0b03.pdf) · [случаи](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [самый](https://rentry.co/melgfit-935913) · [решение](https://discuss.tchncs.de/post/65439369) · [чужой](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [переменных](https://gal58736.carrd.co/) · [Задача](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/reverse-string-oshibki-mvaxtbjo.md) · [изменениями](https://cultmtl.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/mallu-nude-mom-80688c.pdf)

