Лекции.Орг


Поиск:




Категории:

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

 

 

 

 


Программирование сложных однооузловых ветвлений




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

При этом проверяемые условия оформлялись любыми комбинациями логической проверки (<, >, £, ³, =, ¹).

В некоторых реальных задачах требуется проверка специфических условий, когда выбор конкретной ветви определяется проверкой на равенство целочисленной константе. При этом количество создаваемых ветвей, а, следовательно, и проверяемых условий (констант) может изменяться в значительном диапазоне, начиная с 2 и заканчивая десятками.

Графическая интерпретация сложного узла определяет одну исходную и некоторое количество выходных ветвей:

 
 

Рассмотрим программирование сложного одноузлового ветвления на задаче (4.4) о размере стипендии.

Постановка задачи

Рассчитать размер стипендии, выплачиваемой студентам, если известно, что не явившиеся на экзамен, получившие «неудовлетворительно» и «удовлетворительно» стипендию не получают, сдавшие на «хорошо» получают базовую стипендию, сдавшие на «отлично» – повышенную.

Формирование математической модели

Исходные данные

Баз = _ _ р. – размер базовой стипендии;

k = _,_ _ – коэффициент повышения стипендии;

Балл = _ – полученный балл;

Расчётные зависимости

Первый вариант:

размер стипендии, [р.]

Второй вариант:

размер стипендии, [р.]

размер стипендии, [р.]
Третий вариант:

Выбор метода решения

Анализ полученных математических моделей позволяет констатировать:

Первая из формулировок соответствует последовательной проверке на пять целочисленных констант (= 0, = 2, = 3, = 4, = 5). Она предписывает многократную одноузловую проверку.

Вторая объединяет все возможные варианты ниже «хорошо» в одно составное условие.

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

Следовательно, в качестве метода решения:

первая математическая модель требует разветвляющегося вычислительного процесса с одноузловым множественным ветвлением на пять;

вторая предписывает ветвящийся вычислительный процесс с одноузловым множественным ветвлением на три;

третья определяет стандартное двухузловое, с указанными в модели зависимостями, последовательное ветвление на два.





Поделиться с друзьями:


Дата добавления: 2015-11-23; Мы поможем в написании ваших работ!; просмотров: 383 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Так просто быть добрым - нужно только представить себя на месте другого человека прежде, чем начать его судить. © Марлен Дитрих
==> читать все изречения...

3367 - | 3142 -


© 2015-2026 lektsii.org - Контакты - Последнее добавление

Ген: 0.01 с.