вторник, 10 марта 2015 г.

Решение задач

1. Найти наибольший общий делитель (НОД) двух натуральных чисел А и В. Входные данные: А и В. Выходные данные: А – НОД. Для решения поставленной задачи воспользуемся алгоритмом Евклида: будем уменьшать каждый раз большее из чисел на величину меньшего до тех пор, пока оба значения не станут равными, так, как показано в таблице
В блок–схеме решения задачи, представленной на рисунке ниже, для решения поставленной задачи используется цикл с предусловием, то есть тело цикла повторяется до тех пор, пока А не равно В.



Поиск наибольшего общего
 делителя 2-х чисел
2. Вводится последовательность чисел, 0 – конец последовательности. Определить, содержит ли последовательность хотя бы два равных соседних числа. Входные данные: X0 – текущий член последовательности, X1 – следующий член последовательности. Выходные данные: сообщение о наличии в последовательности двух равных соседних элементов. Вспомогательные переменные: Fl – логическая переменная, сохраняет значение «истина», если в последовательности есть равные рядом стоящие члены и «ложь» - иначе. Блок–схема решения задачи приведена на рис. 5.6. Применение здесь цикла с постусловием обосновано тем, что необходимо вначале сравнить два элемента последовательности, а затем принять решение об окончании цикла. В приведенных примерах условие задачи таково, что неизвестно, сколько раз повторится тело цикла. Такие циклы называют циклами с неизвестным числом повторений (вообще говоря, неизвестно, закончится ли цикл вообще). Цикл, количество повторений которого известно заранее или его можно определить по исходным данным, называют циклом с известным числом повторений. Рассмотрим несколько примеров с использованием таких циклов.
3.  Составить таблицу значений функции y = e sin(x)cos(x) на отрезке [0;π] с шагом 0.1. Входные данные: начальное значение аргумента – 0, конечное значение аргумента – π, шаг изменения аргумента – 0.1. Выходные данные: множество значений аргумента X и соответствующее им множество значений функции Y
Поиск равных соседних элементов последовательности

Создание таблицы значений функции y = e sin(x)cos(x)(2 способа)
В условии задачи количество повторений цикла явно не задано, поэтому решить ее можно, используя цикл с предусловием (слева). С другой стороны известно, как изменяется параметр цикла X и каковы его начальное и конечное значения, следовательно, предварительно определив количество повторений тела цикла n, так как показано на рис. справа, можно воспользоваться безусловным циклическим оператором. Итак, если параметр цикла х принимает значения вдиапазоне от xn до xk, изменяясь с шагом dх, то количество повторений тела цикла можно определить по формуле:
 округлив результат деления до целого числа.

Теория





Циклом называют повторение одних и тех же действий (шагов). Последовательность действий, которые повторяются в цикле, называют телом цикла. Существует несколько типов алгоритмов циклической структуры. 
Алгоритм циклической структуры
с предусловием 

Алгоритм циклической структуры
с постусловием


При написании условных циклических алгоритмов следует помнить следующее. Во-первых, чтобы цикл имел шанс когда-нибудь закончиться, содержимое его тела должно обязательно влиять на условие цикла. Во-вторых, условие должно состоять из корректных выражений и значений, определенных еще до первого выполнения тела цикла.
Выполнение безусловного циклического алгоритма начинается с присвоения переменной i стартового значения in. Затем следует проверка, не превосходит ли переменная i конечное значение iк. Если превосходит, то цикл считается завершенным, и управление передается следующему за телом цикла оператору. В противном случае выполняется тело цикла, и переменная i меняет свое значение в соответствии с указанным шагом di. Далее, снова производится проверка значения переменной i и алгоритм повторяется. 



Алгоритм циклической структуры
без условия
Условный циклический алгоритм
с известным числом повторений.




Отметим, что переменную i называют параметром цикла, так как это переменная, которая изменяется внутри цикла по определенному закону и влияет на его окончание