русс | укр

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

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

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

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


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

Разветвляющийся алгоритм


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


 


Пример 2.Составить блок-схему алгоритма вычисления угла перекладки руля судна в произвольный момент времени. Характер изменения угла перекладки руля изображен на рис. 2.

Рисунок 2 – Характер изменения угла перекладки руля

 

Программа:

 

Program Primer2;

Uses Crt;

Var a1,t,t1,t2,t3:real;

Begin

Write(‘Введите параметр t1:’);

Readln(t1);

Write(‘Введите параметр t2:’);

Readln(t2);

Write(‘Введите параметр t3:’);

Readln(t3);

Write(‘Введите время t:’);

Readln(t);

Write(‘Введите значение угла alfa1, уз:’);

Readln(a1);

If t<t1 then a:=a1*t/t1 else

If t<t2 then a:=a1 else

If t<t3 then a:=a1*(t3-t)/(t3-t2) else a:=0;

Writeln(‘Угол перекладки руля alfa=’, a:1:3);

Readkey;

End.

 

 
 

Блок-схема алгоритма вычисления угла перекладки руля судна в произвольный момент времени представлена на рис. 3.

Рисунок 3 – Блок-схема разветвляющегося алгоритма

 

Дополнительно рассмотрим несколько вариантов написания команды условия в зависимости от вида блок-схемы (рис.4 – рис.6). В данных примерах показаны записи команд от самой краткой до самой полной.


Рисунок 4 – Условие с действиями на одной (а) и двух ветках (б)

 

Команда (вариант а):

If x<0 then y:=2+x;

Команда (вариант б):

If x<0 then y:=2+x else y:=sqr(x);

 


Рисунок 5 – Взаимное расположение условий:

последовательное (а) и вложенное (б)

 

Команда (вариант а):

If x<0 then y:=2+x;

If x<=2 then y:=sqr(x);

Команда (вариант б):

If x<0 then y:=2+x else

If x<=2 then y:=sqr(x) else y:=x-1;

 

 
 

Рисунок 6 – Условие с двумя действиями на каждой ветке

 

Команда:

If x<0 then

begin

y:=2+x;

z:=5-x;

end

Else

begin



y:=sqr(x);

z:=x*x*x;

end;

Последняя запись представляет собой полный вариант написания команды условия (см. п.2.5). Парная команда begin-end в команде условия If применяется, когда на какой-либо ветке имеется два и более действия. При этом под действиями подразумеваются не только формулы, но и, например, ввод данных, вывод на экран, циклы, другие условия и т.д.

 



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


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


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

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

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


 


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

 
 

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

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