Задачи для самостоятельного решения.

Тема: Алгоритмы и блок-схемы.

Теоретическая информация.

Алгоритм — это понятное и точное предписание исполнителю, выполнить конечную последовательность шагов, приводящей от исходных данных к искомому результату.

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

 

Блок-схема – графический способ описания алгоритма с использованием геометрических фигур.

На блок-схеме шаги алгоритма обозначаются специальными геометрическими фигурами, внутри которых записываются действия. Направление выполнения алгоритма (то, какое действие выполняется следующим) обозначается стрелками.

Для обозначения шагов алгоритма принято использовать следующие геометрические фигуры:

Начало или конец алгоритма
Действие
Проверка условия
Ввод или вывод
Проверка условия цикла

 

Линейный алгоритм – алгоритм, содержащий конечное число шагов, выполняющихся последовательно друг за другом от начала до конца.

Пример блок-схемы линейного алгоритма. Задача: открыть окно в помещении.

Начало

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

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

Открыть окно

Конец

Разветвляющийся алгоритм (ветвление) – алгоритм, порядок выполнения шагов которого изменяется в зависимости от выполнения некоторых условий.

Пример блок-схемы алгоритма с ветвлением. Задача: приступить к рисованию мультипликационного персонажа.

Начало

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

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

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

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

Конец

 

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

Тело цикла – шаги алгоритма, которые повторяются несколько раз.

Цикл с предусловием –цикл, в котором сначала проверяется условие, и, если оно истинно, выполняется тело цикла. Затем условие проверяется снова.

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

Тело цикла

 
 


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


Тело цикла

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

 
 

 


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

Параметр

Тело цикла

 
 


Параметр цикла – величина, от которой зависит число повторений в цикле.

Задачи для самостоятельного решения.

Задача 1. Составьте линейный алгоритм и нарисуйте блок-схему. Требуется приготовить яичницу на обед. Исполнитель находится на кухне. Ингредиенты: куриные яйца в холодильнике 10 шт.; масло и соль в шкафчике; сковорода в посудном шкафу; плита выключена и готова к работе.

Задача 2. Рассчитайте площадь и периметр прямоугольника по двум известным сторонам.

Задача 3. Составьте алгоритм с ветвлением и нарисуйте блок-схему. Требуется выяснить, имеет ли квадратное уравнение a*x2 + b*x + c = 0 решения при заданных значениях a, b и c.