
Алгоритмизация и программирование Методические рекомендации
Задания по алгоритмизации и программированию следует выполнять с использованием текстового редактора MS Word. Для рисования блок-схемы алгоритмов следует использовать стандартные элементы блок-схем (панель инструментов Рисование Автофигуры Блок-схема).
При выполнении заданий следует разобрать приведенные примеры их решение. Рекомендуется выполнить решение не только своего варианта, но и ряда других заданий по исполнению алгоритмов, их построению и программированию.
1.2 Примеры и их решения
Пример 1. Решение задачи по блок – схеме алгоритма (описание работы фрагмента программного кода).
Задан одномерный массив с числом элементов N. Определите структурные элементы алгоритма. Опишите действия, выполняемые алгоритмом (программным кодом, рис.) и сформулируйте условие задачи или постройте математическую функцию, на решение которой направлен алгоритм.
S=0, I=1 Do while I<=100 S = S+I I=I+1 Loop
|

Рис. Блок-схема алгоритма.
Решение примера 1.
Для построения блок-схемы алгоритма использовались следующие операции: Начало алгоритма, Математические действия, Условный переход, Вывод данных, Конец алгоритма. Алгоритм содержит элементы линейного, разветвляющегося и циклического типов алгоритмов. Соответственно в алгоритме есть операция ветвления, в которой та или иная серия операций выполняется после проверки условия и операция повторения, в которой тело цикла выполняется несколько раз.
Алгоритм выполняется следующим образом: после начала работы алгоритма переменной S присваивается значение 0 (S:=0); начальному элементу массива присваивается значение 1 (I:=1); проверяется логическое условие–выполнения цикла (Do while) если – I≤100– номер элемента массива меньше или равен 100, то к переменной S прибавляется номер текущего элемента массива (S=S+I); к текущему номеру элемента массива прибавляется 1 (I=I+1); цикл повторяется, пока выполняется логическое условие (I≤100) иначе цикл завершается (Loop) и выводится значение величины S; конец работы алгоритма.
Проследим изменение значений переменных во время выполнения нескольких циклов работы алгоритма. Первый цикл: S:=0, I:=1, I≤100, S=S+I=0+1=1, I=I+1=1+1=2. Второй цикл: S:=1, I:=2, I≤100, S=S+I=1+2=3, I=I+1=2+1=3. Третий цикл: S:=3, I:=3, I≤100, S=S+I=3+3=6, I=I+1=3+1=4. Четвертый цикл: S:=6, I:=4, I≤100, S=S+I=6+4=10, I=I+1=4+1=5. Очевидно, что алгоритм выполняет следующее действие S=0+1+2+3+4=10, то есть сложение натуральных чисел от 0 до 100. Результатом выполнения алгоритма будет величина S=5050.
Результаты удобно представлять в виде таблицы.
I |
|
1 |
2 |
3 |
4 |
5 |
… |
100 |
S |
0 |
1 |
3 |
6 |
10 |
… |
… |
5050 |
Пример 2. Построение блок–схемы алгоритма.
Составить блок-схему алгоритма вычисления значений функции:
,
при значениях x от 1 до 10 с шагом 0,5. Вывести значения y, z, p.
Решение примера 2.
Для решения задачи и составления блок-схемы алгоритма следует использовать следующие стандартные операторы: Начало алгоритма, Математические действия, Конец алгоритма, Ввод данных, Вывод данных.
В алгоритме необходимо использовать операцию повторения (цикла), так как величина х изменяется от 1 до 10 с шагом 0,5. Эта операция состоит из 3 операций. Первая – присвоение переменной х начального значения х=1. Вторая – проверка условия соответствия величины переменной х заданному максимальному значению (х<10;x>10). Третья – присвоение переменной х нового значения, которое в данном примере определяется заданным шагом изменения величины х, то есть х=х+0,5. Также в алгоритме необходимо использовать ещё две операции условного перехода (разветвления). Так, согласно выражению требуется проверка минимум двух условий для выбора пути вычисления переменной z. Это сравнение величины переменой у с заданными значениями (у>0,5; у≤0,5), (у≥–0,5; у≤–0,5).
Существуют различные варианты построения блок-схемы алгоритма для решения поставленной задачи. Один из вариантов представлен на рисунке 30.
Рис. Блок-схема алгоритма.