Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Алгоритмы ветвящейся структуры





Часто в зависимости от каких-либо значений промежуточных результатов необходимо организовать вычисление либо по одним, либо по другим формулам, т. е. в зависимости от результата выполнения некоторого логического условия вычислительный процесс должен идти по одной или другой ветви. Алгоритм такого вычислительного процесса называется алгоритмом ветвящейся структуры. В общем случае количество ветвей в таком алгоритме не обязательно равно двум.

 

Рис. 19.

Пример 3. Составить схему алгоритма вычисления значения функций А (рис. 20):

 

если x >3; если x ≤3.

 

Требуется вычислить значение A либо по одной, либо по другой формуле, в зависимости от значения x >3 или x ≤3.

В блоке 1 осуществлен ввод переменных x и y. Блок 2 осуществляет ветвление вычислительного процесса. Внутри блока записывается условие. Из такого блока два выхода: один на ответ «да», другой - на ответ «нет». При ответе «да» на условие «x >3» следует А присвоить значение х 2+ у2, а при ответе «нет» А присвоить значение х - у 2. После вычисления требуется осуществить вывод значения А, что и делаем в блоке 4. Таким образом, в зависимости от введенной переменной x (у может иметь любое значение) ход вычислительного процесса будет идти или по блокам 1, 2, 5, 4 (если x >3), или по блокам 1, 2, 3, 4 (если x≤3).

 

 

Рис. 20.

Пример 4. Составить схему алгоритма вычисления функции у (рис. 21):

если x >0,5; если 0,3< x ≤0,5; если 0,2< x ≤0,3; если 0,1< x ≤0,2; если x ≤0,1.

Ставится задача вычисления значения у по одной из пяти формул в зависимости от значения переменной х.


 

Рис. 21.

На выходе из блока 2 по ответу «да» имеем значение x >0,5 и в блоке 3 вычисляем y.

На выходе из блока 2 по ответу «нет» имеем значения x ≤0,5 и в блоке 4 отбираем значения x >0,3. Записывать в блоке 4 условие 0,3< x ≤0,5 не стоит, так как на входе в блок 4 уже имеем значения x ≤5 (либо двойное условие записывают через логические связки – «и», «или»). При выходе из блока 4 на ответ «да» получаем значения 0,3<x≤0,5 и вычисляем у в блоке 5, а на ответ «нет» значение x ≤З.

Дальнейший ход рассуждений аналогичен приведённому. Необходимо обратить внимание на то, что при ветвлении на n веток при построении алгоритма имеем n -1 логических блоков. Ветвящийся алгоритм можно создавать в соответствии с поставленной задачей и структурой программы, где количество блоков «решение» будет соответствовать количеству структурных логических операторов в программе.

Пример 5. Составить схему алгоритма вычисления величины y по заданному значению аргумента x (рис. 23).Функция y = f (x) задана графически (рис. 22):

 

 

Рис. 22.

Как видно на графике, для значений аргумента x<2 функция задана прямой, пересекающей ось x под углом 45° в точке x = 0, а для нее уравнение имеет вид у = х. На отрезке 2≤x<3 график функции параллелен оси x, т. е. для этих значений аргументов у = 2. Для значения x≥3 график функции снова представляет собой прямую под углом 45°, и аналитическая зависимость: y = x – 1.

 

 

Рис. 23.


если xy; если x = y;
Пример 6. Составить схему алгоритма вычисления функции z (рис. 24):

если a <20; если a =20; если a >20.
если a > b; если a = b; если a < b;
где

В зависимости от введенных значений а и b значение х будет вычислено по одной из трех формул к точке входа в блок 7. К точке входа в блок 12 будут вычислены х и у. В блоках 13 или 14 будет вычислена величина z, в зависимости от соотношения вычисленных в предыдущих блоках величин х и у.

Рис. 24.


Пример 7. Составить схему алгоритма нахождения максимального числа среди трех элементов (рис. 25):

M =max(a,b,c).

 

Приведены два варианта составления алгоритма поставленной задачи (рис.25, 26).

В первом варианте (рис. 25, а) в блоке 2 сравнивают две переменные а и b, и в зависимости от того, какая величина больше, искомой переменной М присваивают значение наибольшего из а и b. Таким образом, к блоку 5 переменная М будет иметь значение наибольшего из двух чисел a и b. В блоке 5 полученное значение М сравниваем с третьей переменной с, и в зависимости от того, больше ли М переменной с или нет, оставляем старое значение М или присваиваем ей значение переменной с. В блоке 7 выводим полученное значение М, которое равно наибольшему из трёх переменных. Второй вариант (рис. 25, б) более длинный и громоздкий.


 

 

Рис. 25.


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

если a > 0; если a <0; если a =0.  
Пример 8. Составить схему алгоритма вычисления величины c (рис. 26):

Рис. 26.








Date: 2015-06-06; view: 1520; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию