Что такое модель объекта или процесса и зачем её создавать? Какие бывают модели? Что такое информационная модель? Основные этапы моделирования Алгоритмическая модель Моделирование в языках программирования Моделирование в среде MS Excel
Алгоритмическая модель или алгоритм – это разновидность информационной модели, где содержится описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов. Алгоритмизация – процесс разработки алгоритма (плана действий) для решения задачи. |
|||||||
Свойства алгоритмов
|
|||||||
Виды алгоритмов |
|||||||
Линейный (последовательный) алгоритм – описание действий, которые выполняются однократно, в заданном порядке (последовательно, одно за другим). |
Например: Алгоритм отпирания дверей; Алгоритм вычисления значения числовых выражений, содержащих только действия сложения и вычитания (1299 – 243 + 5 – 789). |
||||||
Циклический алгоритм – описание действий, которые должны повторяться указанное число раз или пока не выполнено заданное условие. Перечень повторяющихся действий называется телом цикла. |
Например: Алгоритм покраски забора: 1) покрасить одну доску; 2) перейти к следующей; 3) выполнить действие 1; 4) завершить работу только после покраски последней доски. |
||||||
Разветвляющийся алгоритм – алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий. Полная форма: «если выполняется условие, то …, иначе …» . Действия предусмотрены и при выполнении условия, и при его невыполнении. Неполная форма: «если выполняется условие, то …». Действия предусмотрены только при выполнении условия. При невыполнении условия никакие действия не выполняются. |
Например: 1) Если пошёл дождь, то откройте зонт, иначе – зонт положите в сумку (полная форма разветвляющегося алгоритма); Если пошёл дождь, то откройте зонт (неполная форма разветвляющегося алгоритма). 2) Если билет в кино стоит не больше 100 рублей, то купить билет и занять место в зале, иначе – вернуться домой. 3) Из инструкции коммунальным службам: «Если среднесуточная температура воздуха ниже 8 градусов, то включить отопление. |
||||||
Вспомогательный алгоритм – алгоритм, который можно использовать в других алгоритмах, указав только его имя. Вспомогательному алгоритму должно быть присвоено имя.
|
Например: Вычислите значение выражения 5a + b:4. 1. Установить значение для переменной а; 2. Выполнить умножение числа 5 на a записать их произведение; 3. Установить значение для переменной b; 4. Выполнить деление чисел b:4 и записать частное; 5. Выполнить сложение полученных на шаге 2 произведения и на шаге 4 частного. Арифметические действия умножения, деления и сложения – выполняются по определённым алгоритмам, известным из курса математики начальной школы и носят соответствующие имена. |
||||||
Формы представления алгоритмов На естественном языке (словесная, описательная, содержит перечисление необходимых действий) – допустима, если достаточно приближённо описать суть алгоритма; На специальном языке (например, на языке программирования – в виде программы, последовательности команд); На языке формул (например, оформление решения задач по таким предметам, как физика, алгебра, химия); В графической форме – в виде блок-схемы; и т.д. |
|||||||
Стадии создания алгоритмов Первая стадия – алгоритм должен быть представлен в форме, понятной человеку, который его разрабатывает. На этой стадии разрабатывается приближённый алгоритм, ориентированный на создающего его человека (если алгоритм создаёте вы, то на вас). Для этого необходимо: •Определить цель, для достижения которой будет создан алгоритм; •Наметить приблизительный план действий для достижения поставленной цели. Вторая стадия – детализация алгоритма с учётом специфики среды и других объектов (т.е. с учётом того, кто или что будет выполнять данный алгоритм, каким способом, какими средствами и т.д.). Для этого необходимо: •Выбрать среду и объекты, посредством которых алгоритм будет реализован; •Детализировать алгоритм с учётом особенностей выбранной среды. |
(c) 2015, Максимовская М.А., maximovskaia_mar@mail.ru