> For the complete documentation index, see [llms.txt](https://topittop2.gitbook.io/topittop2/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://topittop2.gitbook.io/topittop2/c++/svoistva-i-tipy.md).

# Свойства и типы

05.11.2024

**Алгоритм** – это точная последовательность действий, которая помогает исполнителю достичь необходимого результата. Для этого алгоритм должен обладать определенными свойствами:

### Свойства алгоритма

1. **Результативность** – алгоритм нацелен на достижение конкретного результата.
2. **Корректность** – результат выполнения должен быть правильным и соответствовать ожиданиям.
3. **Точность** – каждое действие должно быть ясно описано без двусмысленностей.
4. **Понятность** – инструкции должны быть легко понятны исполнителю.
5. **Дискретность** – алгоритм делится на отдельные шаги, выполняемые последовательно.
6. **Массовость** – алгоритм применим к различным, но сходным задачам.

***

### Основные типы алгоритмов

Алгоритмы можно классифицировать по способу выполнения команд:

* **Линейный алгоритм** – все действия выполняются последовательно. Пример: пошаговый рецепт приготовления блюда.
* **Разветвленный алгоритм** – предполагает выбор между несколькими вариантами в зависимости от условий. Пример: если дождь закончится, идем гулять; иначе – смотрим телевизор.
* **Циклический алгоритм** – предусматривает многократное выполнение одного и того же действия при соблюдении условия. Пример: садовник сажает цветы до тех пор, пока не заполнит клумбу.

#### Применение алгоритмов

Алгоритмы позволяют автоматизировать решение задач и помогают компьютеру выполнять команды в заданной последовательности. В ходе изучения алгоритмов на практике важно правильно подбирать порядок команд и их структуру.
