русс | укр

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

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

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

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


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

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


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


Кон

Составить алгоритм решения задачи

Найти площадь треугольника с заданными длинами сторон.

алг Герон

цел а, b, c, p, S

нач ввод a, b, c

p: = (a + b + c) / 2

вывод S

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

При составлении блок-схем следует руководствоваться простыми правилами:

1. Блок-схема должна развиваться сверху вниз; при необходимости – слева направо.

2. Каждый участок блок-схемы линейного алгоритма должен иметь один вход и один выход.

3. В линейном алгоритме выход рисуется точно под входом.

Выстроив команды по порядку и получив блок-схему, мы видим, что здесь не требовалось проверять выполнение каких-либо условий: последовательность выполняемых действий всегда одинакова. Такие алгоритмы называют линейными.

Пример 2. Пешеход шел по пересеченной местности. Его скорость движения по равнине v1 км/ч, в гору — v2 км/ч и под гору — v3 км/ч. Время движения соответственно t1, t2 и t3 ч. Какой путь прошел пешеход?

Алг Прогулка Цел v1, v2, v3, t1, t2, t3, S1, S2, S3, S Нач ввод v1, v2, v3, t1, t2, t3 S1:=v1*t1 S2:=v2*t2 S3:=v3*t3 S:=S1+S2+S3 вывод S кон  

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

 

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

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



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

Полная развилка Неполная развилка

Вначале проверяется условие (вычисляется отношение, логическое выражение). Если условие истинно, то выполняется серия 1 — после­довательность команд, на которую указывает стрелка с надписью «да» (положительная ветвь). В противном случае выполняется серия 2 (отрицательная ветвь). В АЯ условие записывается после служебного слова если,положительная ветвь — после слова то, отрицательная — после слова иначе.Буквы квобозначают конец ветвления.

 

Пример 1. Вычислить значение функции

 

алгПример 1 вещ x, y нач ввод x если x12 то y:=–x2 иначе еслиx<0 то y:=x4 иначе y := x–2 кв кв вывод y Кон

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

 

Пример 2. Дано натуральное число n. Если число нечётное и его удвоение не приведет к выходу за 32767, удвоить его, иначе — оставить без изменения.

Чтобы удовлетворить условию удвоения, число n должно быть нечетным и меньше 16384.

алг Пример 2 цел n нач ввод n если n нечетное и меньше 16384 то n:=n*2 вывод n кон

Рассмотренный пример иллюстрирует неполную развилку. Также следует отметить, здесь логическое выражение, являющееся условием, содержит 2 операнда.



<== предыдущая лекция | следующая лекция ==>
Вывод m,n | Цикл с постусловием (цикл ДО)


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


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

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

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


 


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

 
 

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

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