HTML Diff
1 added 1 removed
Original 2026-01-01
Modified 2026-03-10
1 <ul><li><a>Немного истории</a></li>
1 <ul><li><a>Немного истории</a></li>
2 <li><a>Еще несколько терминов</a></li>
2 <li><a>Еще несколько терминов</a></li>
3 <li><a>Основные свойства</a></li>
3 <li><a>Основные свойства</a></li>
4 - <li><a>Виды алгоритмов: цикл, разветвление, лиейная последовательность</a></li>
4 + <li><a>Виды алгоритмов: цикл, разветвление, линейная последовательность</a></li>
5 </ul><p>В этой статье будет рассмотрено происхождение понятия "<strong>Алгоритм</strong>", а также то, какими свойствами обладают современные рациональные алгоритмы и какие задачи они решают. Дополнительное внимание будет уделено видам математических алгоритмов, которые могут быть представлены в виде циклов, разветвлений и линейных последовательностей.</p>
5 </ul><p>В этой статье будет рассмотрено происхождение понятия "<strong>Алгоритм</strong>", а также то, какими свойствами обладают современные рациональные алгоритмы и какие задачи они решают. Дополнительное внимание будет уделено видам математических алгоритмов, которые могут быть представлены в виде циклов, разветвлений и линейных последовательностей.</p>
6 <p>Алгоритмом является определенная конечная последовательность инструкций, выполнение которых приводит к достижению конкретной цели (решению поставленной задачи). Существует множество разнообразных вариантов этого определения, которые можно найти в учебной литературе (чаще всего, это математические книги, а также учебники по информатике и программированию). Основная мысль тут следующая: алгоритм - это некий замкнутый перечень действий, а также дискретный процесс, у которого есть входная и выходная точки. И результат исполнения (решение) достигается за счет пошагового выполнения конкретной последовательности (арифметической, логической и т. п.). </p>
6 <p>Алгоритмом является определенная конечная последовательность инструкций, выполнение которых приводит к достижению конкретной цели (решению поставленной задачи). Существует множество разнообразных вариантов этого определения, которые можно найти в учебной литературе (чаще всего, это математические книги, а также учебники по информатике и программированию). Основная мысль тут следующая: алгоритм - это некий замкнутый перечень действий, а также дискретный процесс, у которого есть входная и выходная точки. И результат исполнения (решение) достигается за счет пошагового выполнения конкретной последовательности (арифметической, логической и т. п.). </p>
7 <p>С какими значениями можно связать слово "алгоритм":</p>
7 <p>С какими значениями можно связать слово "алгоритм":</p>
8 <p>- цикл;</p>
8 <p>- цикл;</p>
9 <p>- метод (способ);</p>
9 <p>- метод (способ);</p>
10 <p>- процесс;</p>
10 <p>- процесс;</p>
11 <p>- рецепт;</p>
11 <p>- рецепт;</p>
12 <p>- инструкция.</p>
12 <p>- инструкция.</p>
13 <h2>Немного истории</h2>
13 <h2>Немного истории</h2>
14 <p>Это сегодня данное понятие является фундаментальным как в информатике, так и в математике. Но сам термин появился очень давно - тогда, когда еще не было персональных компьютеров, смартфонов и прочей вычислительной техники.</p>
14 <p>Это сегодня данное понятие является фундаментальным как в информатике, так и в математике. Но сам термин появился очень давно - тогда, когда еще не было персональных компьютеров, смартфонов и прочей вычислительной техники.</p>
15 <p>Впервые термин Algorithm был широко озвучен в средние века - это произошло, когда ученые Европы узнали о методах вычислений, используемых математиком из Азии<strong>Мухаммедом аль-Хорезми</strong>. Как раз от его имени и образовалось слово "Алгоритм".</p>
15 <p>Впервые термин Algorithm был широко озвучен в средние века - это произошло, когда ученые Европы узнали о методах вычислений, используемых математиком из Азии<strong>Мухаммедом аль-Хорезми</strong>. Как раз от его имени и образовалось слово "Алгоритм".</p>
16 <p>В течение следующих веков после того, как перевели его сочинения, возникло множество математических трудов, которые были посвящены искусству счета. Если посмотреть на описание алгоритма европейцами в те далекие годы, то можно увидеть следующее определение:</p>
16 <p>В течение следующих веков после того, как перевели его сочинения, возникло множество математических трудов, которые были посвящены искусству счета. Если посмотреть на описание алгоритма европейцами в те далекие годы, то можно увидеть следующее определение:</p>
17 <h2>Еще несколько терминов</h2>
17 <h2>Еще несколько терминов</h2>
18 <p>Поначалу алгоритмизация подразумевала выполнение вычислительных действий над десятичными числами. Спустя годы, этот термин стал использоваться при обозначении любой последовательности, позволяющей достигать конкретного результата. Но эти последовательности не являются абстрактными - они разрабатываются для определенного<strong>исполнителя</strong>:</p>
18 <p>Поначалу алгоритмизация подразумевала выполнение вычислительных действий над десятичными числами. Спустя годы, этот термин стал использоваться при обозначении любой последовательности, позволяющей достигать конкретного результата. Но эти последовательности не являются абстрактными - они разрабатываются для определенного<strong>исполнителя</strong>:</p>
19 <p>- человека;</p>
19 <p>- человека;</p>
20 <p>- механизма;</p>
20 <p>- механизма;</p>
21 <p>- компьютера;</p>
21 <p>- компьютера;</p>
22 <p>- роботизированного устройства;</p>
22 <p>- роботизированного устройства;</p>
23 <p>- языка программирования и т. п.</p>
23 <p>- языка программирования и т. п.</p>
24 <p>Такой исполнитель характеризуется способностью исполнять поставленные перед ним задачи в виде соответствующих команд. Это значит, что последовательность описывается на понятном для исполнителя языке, формируя<strong>программу</strong>.</p>
24 <p>Такой исполнитель характеризуется способностью исполнять поставленные перед ним задачи в виде соответствующих команд. Это значит, что последовательность описывается на понятном для исполнителя языке, формируя<strong>программу</strong>.</p>
25 <p>Способы представления алгоритмов бывают разные:</p>
25 <p>Способы представления алгоритмов бывают разные:</p>
26 <p>Подробнее о способах читайте<a>здесь</a>, а о блок-схемах -<a>тут</a>.</p>
26 <p>Подробнее о способах читайте<a>здесь</a>, а о блок-схемах -<a>тут</a>.</p>
27 <h2>Основные свойства</h2>
27 <h2>Основные свойства</h2>
28 <p>Основные свойства следующие:</p>
28 <p>Основные свойства следующие:</p>
29 <p>1.<strong>Массовость</strong>. Она же универсальность. Хороший и рациональный алгоритм может эффективно использоваться для разных наборов входных данных. Даже подставляя в абстрактную последовательность новые значения снова и снова, пользователь должен получать верный результат. </p>
29 <p>1.<strong>Массовость</strong>. Она же универсальность. Хороший и рациональный алгоритм может эффективно использоваться для разных наборов входных данных. Даже подставляя в абстрактную последовательность новые значения снова и снова, пользователь должен получать верный результат. </p>
30 <p>2.<strong>Дискретность</strong>. Другое название - разрывность. Здесь речь идет о структуре. Алгори тм считают дискретным, если он делится на шаги, то есть решить задачу - значит последовательно выполнить эти простые шаги или этапы, причем исполнение каждого шага занимает определенный временной отрезок. Такой алгоритм и будет дискретным.</p>
30 <p>2.<strong>Дискретность</strong>. Другое название - разрывность. Здесь речь идет о структуре. Алгори тм считают дискретным, если он делится на шаги, то есть решить задачу - значит последовательно выполнить эти простые шаги или этапы, причем исполнение каждого шага занимает определенный временной отрезок. Такой алгоритм и будет дискретным.</p>
31 <p>3.<strong>Определенность</strong>. У этого свойства есть два синонима: точность и детерминированность. Важный момент - шаги должны быть строго определены, причем каждый, то есть разные толкования не допускаются. Строго определен и порядок выполнения этих этапов. Если все хорошо, при условии одинаковых исходных данных и той же самой цепочки команд (последовательности арифметических действий)<strong>результат будет одинаков для разных исполнителей</strong>. </p>
31 <p>3.<strong>Определенность</strong>. У этого свойства есть два синонима: точность и детерминированность. Важный момент - шаги должны быть строго определены, причем каждый, то есть разные толкования не допускаются. Строго определен и порядок выполнения этих этапов. Если все хорошо, при условии одинаковых исходных данных и той же самой цепочки команд (последовательности арифметических действий)<strong>результат будет одинаков для разных исполнителей</strong>. </p>
32 <p>4.<strong>Понятность, ясность</strong>. Уже выше было сказано, что последовательность описывается на понятном для исполнителя языке, то есть команды входят в систему понятий исполнителя. </p>
32 <p>4.<strong>Понятность, ясность</strong>. Уже выше было сказано, что последовательность описывается на понятном для исполнителя языке, то есть команды входят в систему понятий исполнителя. </p>
33 <p>5.<strong>Формальность</strong>. "Приказы не обсуждают, а выполняют" - говорит директор. Так и разработчик алгоритма - он формирует задачу исполнителю, к примеру, компьютеру, которому не важен смысл, - он просто выполняет соответствующие команды (задания) и получает результат. Зачем и почему - не его вопросы.</p>
33 <p>5.<strong>Формальность</strong>. "Приказы не обсуждают, а выполняют" - говорит директор. Так и разработчик алгоритма - он формирует задачу исполнителю, к примеру, компьютеру, которому не важен смысл, - он просто выполняет соответствующие команды (задания) и получает результат. Зачем и почему - не его вопросы.</p>
34 <p>6.<strong>Завершаемость</strong>и<strong>результативность</strong>. При корректности входных данных рациональный алгоритм должен без проблем завершать свою работу за определенное и установленное разработчиком число шагов, то есть он не должен "зависать" и работать бесконечно. И завершение работы (решение алгоритма) будет сопровождаться получением конкретных результатов. </p>
34 <p>6.<strong>Завершаемость</strong>и<strong>результативность</strong>. При корректности входных данных рациональный алгоритм должен без проблем завершать свою работу за определенное и установленное разработчиком число шагов, то есть он не должен "зависать" и работать бесконечно. И завершение работы (решение алгоритма) будет сопровождаться получением конкретных результатов. </p>
35 <h2>Виды алгоритмов: цикл, разветвление, линейная последовательность</h2>
35 <h2>Виды алгоритмов: цикл, разветвление, линейная последовательность</h2>
36 <p>Сегодня алгоритмов существует огромное множество. Если говорить вкратце, то можно выделить три основные группы:</p>
36 <p>Сегодня алгоритмов существует огромное множество. Если говорить вкратце, то можно выделить три основные группы:</p>
37 <p>- линейные;</p>
37 <p>- линейные;</p>
38 <p>- разветвляющиеся;</p>
38 <p>- разветвляющиеся;</p>
39 <p>- циклические (они же<strong>циклы</strong>).</p>
39 <p>- циклические (они же<strong>циклы</strong>).</p>
40 <p>Следует рассмотреть эти группы подробнее, начиная с линейного алгоритма.</p>
40 <p>Следует рассмотреть эти группы подробнее, начиная с линейного алгоритма.</p>
41 <p>Линейность предполагает<strong>последовательное выполнение действий</strong>, то есть друг за другом. Вот как это может выглядеть на практике в виде блок-схемы:</p>
41 <p>Линейность предполагает<strong>последовательное выполнение действий</strong>, то есть друг за другом. Вот как это может выглядеть на практике в виде блок-схемы:</p>
42 <p>Когда речь идет о<strong>разветвлении</strong>, подразумевается наличие хотя бы одного<strong>условия</strong>. Это условие проверяется по ходу работы. По итогу возможно разделение на несколько ветвей. Пример:</p>
42 <p>Когда речь идет о<strong>разветвлении</strong>, подразумевается наличие хотя бы одного<strong>условия</strong>. Это условие проверяется по ходу работы. По итогу возможно разделение на несколько ветвей. Пример:</p>
43 <p>Отдельного упоминания заслуживает<strong>цикл</strong>, он же циклический алгоритм. При наличии цикла<strong>обеспечивается многократное повторение</strong>одной и той же операции. В цикле могут быть и вычисления, и перебор вариантов.</p>
43 <p>Отдельного упоминания заслуживает<strong>цикл</strong>, он же циклический алгоритм. При наличии цикла<strong>обеспечивается многократное повторение</strong>одной и той же операции. В цикле могут быть и вычисления, и перебор вариантов.</p>
44 <p>У цикла программы есть<strong>тело цикла</strong>(серия команд). И это тело цикла выполняется до тех пор, пока не будет удовлетворено конкретное условие.</p>
44 <p>У цикла программы есть<strong>тело цикла</strong>(серия команд). И это тело цикла выполняется до тех пор, пока не будет удовлетворено конкретное условие.</p>
45 <p>Пример цикла на блок-схеме:</p>
45 <p>Пример цикла на блок-схеме:</p>
46 <a></a><p><em>Источники:</em></p>
46 <a></a><p><em>Источники:</em></p>
47 <ul><li>https://urok.1sept.ru/articles/631785; </li>
47 <ul><li>https://urok.1sept.ru/articles/631785; </li>
48 <li>https://www.sites.google.com/site/algoritmyvidyisvojstva/materialy/sposoby-opisania-vidy-algoritmov;</li>
48 <li>https://www.sites.google.com/site/algoritmyvidyisvojstva/materialy/sposoby-opisania-vidy-algoritmov;</li>
49 <li>https://math-it.petrsu.ru/users/semenova/Informatika/DOC/Sam_Izuch/Algoritm.pdf.</li>
49 <li>https://math-it.petrsu.ru/users/semenova/Informatika/DOC/Sam_Izuch/Algoritm.pdf.</li>
50 </ul>
50 </ul>