Задачи для самостоятельного решения.
Тема: Алгоритмы и блок-схемы.
Теоретическая информация.
Алгоритм — это понятное и точное предписание исполнителю, выполнить конечную последовательность шагов, приводящей от исходных данных к искомому результату.
- Конечность(результативность)алгоритма означает, что за конечное число шагов должен быть получен результат;
- Дискретность алгоритма означает, что алгоритм должен быть разбит на последовательность выполняемых шагов;
- Понятность алгоритма означает, что алгоритм должен содержать только те команды, которые входят в набор команд, который может выполнить конкретный исполнитель;
- Точность алгоритма означает, что каждая команда должна пониматься однозначно;
- Массовость алгоритма означает, что однажды составленный алгоритм должен для решения подобных задач с разными исходными данными.
- Детерминированность (определенность). Алгоритм обладает свойством детерминированности, если для одних и тех же наборов исходных данных он будет выдавать один и тот же результат, т.е. результат однозначно определяется исходными данными.
Блок-схема – графический способ описания алгоритма с использованием геометрических фигур.
На блок-схеме шаги алгоритма обозначаются специальными геометрическими фигурами, внутри которых записываются действия. Направление выполнения алгоритма (то, какое действие выполняется следующим) обозначается стрелками.
Для обозначения шагов алгоритма принято использовать следующие геометрические фигуры:
| Начало или конец алгоритма |
| Действие |
| Проверка условия |
| Ввод или вывод |
| Проверка условия цикла |
Линейный алгоритм – алгоритм, содержащий конечное число шагов, выполняющихся последовательно друг за другом от начала до конца.
Пример блок-схемы линейного алгоритма. Задача: открыть окно в помещении.
Начало

Подойти к окну

Повернуть ручку

Открыть окно

Конец
Разветвляющийся алгоритм (ветвление) – алгоритм, порядок выполнения шагов которого изменяется в зависимости от выполнения некоторых условий.
Пример блок-схемы алгоритма с ветвлением. Задача: приступить к рисованию мультипликационного персонажа.

Начало

Взять лист бумаги

Да Рисунок будет цветной? Нет

Взять набор цветных карандашей Взять набор простых карандашей

Приступить к рисованию

Конец
Циклический алгоритм –алгоритм, в котором определённая последовательность шагов повторяется несколько раз в зависимости от некоторого условия.
Тело цикла – шаги алгоритма, которые повторяются несколько раз.
Цикл с предусловием –цикл, в котором сначала проверяется условие, и, если оно истинно, выполняется тело цикла. Затем условие проверяется снова.

Да Условие цикла Нет

Тело цикла
|
Цикл с постусловием –цикл, в котором сначала выполняется тело цикла, затем проверяется условие. По результатам проверки цикл продолжает работу или завершается.


Тело цикла

Да Условие цикла Нет
|
Цикл с параметром – цикл, который выполняется до тех пор, пока параметр не достигнет определённого значения.

Параметр

Тело цикла
|
Параметр цикла – величина, от которой зависит число повторений в цикле.
Задачи для самостоятельного решения.
Задача 1. Составьте линейный алгоритм и нарисуйте блок-схему. Требуется приготовить яичницу на обед. Исполнитель находится на кухне. Ингредиенты: куриные яйца в холодильнике 10 шт.; масло и соль в шкафчике; сковорода в посудном шкафу; плита выключена и готова к работе.
Задача 2. Рассчитайте площадь и периметр прямоугольника по двум известным сторонам.
Задача 3. Составьте алгоритм с ветвлением и нарисуйте блок-схему. Требуется выяснить, имеет ли квадратное уравнение a*x2 + b*x + c = 0 решения при заданных значениях a, b и c.