русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Разветвляющиеся вычислительные процессы


Дата добавления: 2014-12-02; просмотров: 3599; Нарушение авторских прав


 

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

 

Пример 1. Составить схему вычисления Z = max(X,Y).

В рассматриваемом примере возможно два варианта ответа: X или Y. Выбор варианта будет проведён по результату проверки: x > y ? Для однозначности решения считаем, что при Х = Y max = X. В общем случае местоположения знака равенства определяется постановкой самой задачи.

Алгоритм вычисления будет иметь вид:

 

 

Фрагмент схемы вычисления представлен на рис.1. Фрагмент, так как в схеме не указаны символы действий Начало, Останов, Ввод исходных данных X, Y.

 

Рис.1. Фрагмент схемы вычисления Z = max(X,Y)

 

Пример 2. Составить схему вычисления Z = min(X,Y).

Как и в предыдущем примере будет два варианта ответа и алгоритм можно записать следующим образом:

 

 

Фрагмент схемы вычисления представлен на рис. 2.

 

Рис.2. Фрагмент схемы вычисления Z= min(X,Y)

 

Оба алгоритма имеют две ветви вычисления Z. Правая ветвь работает, если условие выполнено, т.е. Да. Левая ветвь работает, если условие нарушено, т.е. Нет. Одновременно обе ветви никогда не будут работать.

Пример 3. Составить схему вычисления Z = max(А,В,С). В данном примере возможны три варианта ответа: или А , или В , или С . Выбор может быть выполнен только по результатам проверки не менее двух условий, если при решении задачи используется промежуточная переменная. Следовательно, схема вычисления должна содержать следующие символы действий:

Начало и Останов;

Ввод данных А, В,С;

Два символа Решение, проверяющие условия;

Три символа Процесс, которые присваивают Z определённое значение;



Документ.

Введем промежуточную переменную R и следующие обозначения.

R = max (A, B), тогда

Z = max(R, C)

Алгоритм выбора max из двух переменных рассмотрен в примере 1. Если в примере 1 рассматривались исходные данные и ответ, то в этом примере введена дополнительная рабочая переменная R. Число вводимых рабочих переменных в любой программе не ограничено.

Алгоритм вычисления будет иметь вид:

 

 

Схема вычисления представлена на рис. 3

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

Хотя и эту схему можно уменьшить на один оператор присваивания, если в качестве промежуточной переменной R использовать выходную переменную Z и не вводить переменную R, и вычислять следующим образом.

Z = max(A,B), Z = max(Z,C)

Изменить схему предлагается самостоятельно.

 



<== предыдущая лекция | следующая лекция ==>
Подготовка задач для программирования | Циклические вычислительные процессы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.807 сек.