Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Алгоритмы решения задач

Лекция 5.2. Блок-схемы алгоритма

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

Линейная структура (следование) самая важная из структур. Она означает, что действия могут быть выполнены друг за другом (рис. 5.2.1.).

 

Выполнить B
Выполнить А
Вход Выход

           
     

 

 


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

Пример 5.2.1.

Опишем алгоритм сложения двух чисел на псевдокоде и в виде блок-схемы (рис. 5.2.2.).

1. Псевдокод:

2. Ввод двух чисел a, b

3. Вычисляем сумму S = a + b

4. Вывод S

5. Конец.

 

 

 


Рис. 5.2.2. Блок - схема к примеру 5.2.1.

 

Ветвление (развилка) – это структура, обеспечивающая выбор между двумя альтернативами. Выполняется проверка условия, а затем выбирается один из путей (рис. 5.2.3).

 

Вход

 
 


Ложь (НЕТ) Истина (ДА)

 
 

 


Выход

Рис. 5.2.3. Полное ветвление

 

Если условие имеет значение «Истина», то выполняется «Действие А». Если условие имеет значение «Ложь», выполняется «Действие В». Эта структура называется, также «Если – ТО – ИНАЧЕ» или «развилка». Каждый путь (ТО или ИНАЧЕ) ведет к общей точке слияния, так что выполнение алгоритма продолжается независимо от того, какой путь был выбран. Может оказаться, что для одного из результатов проверки ничего выполнять не надо. В этом случае можно применить только один обрабатывающий блок (рис. 5.2.4).

 
 


Вход

 

ДА НЕТ

 

 
 
Действие А


Рис. 5.2.4. Структура «непол-

ное ветвление»

Выход

 

 

Такая структура называется «неполным ветвлением» или «неполной развилкой».

Пример 5.2.2.

Вывести значение наибольшего числа из двух чисел (рис. 5.2.5).

Псевдокод:

1. Ввод двух чисел a, b

2. ЕСЛИ a>b, ТО «выводим a»,

ИНАЧЕ «выводим b»

3.

Max= b
Max= a
Конец.

 

НЕТ ДА

 

Рис. 5.2.5. Блок – схема к примеру 5.2.2.

 

Цикл (или повторение) предусматривает повторное выполнение некоторого набора команд алгоритма. Циклы позволяют записать длинные последовательности операций обработки данных с помощью небольшого числа повторяющихся команд. Различают два типа циклов: «цикл с предусловием» и «цикл с постусловием».

Цикл с предусловием («Пока») (рис. 5.2.6).

 


Тело цикла
Истина Выход

           
   
   
 

 


Ложь

 

Рис. 5.2.6. Структура цикла «Пока».

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

Пример 5.2.3.

Вычислить сумму 100 чисел (рис. 5.2.7).

Псевдокод:

1. НАЧ

2. I =1; S = 0

3. ПОКА i<=100 делать

НЦ

4. Ввести ai

5. S = S + ai

6. i = i + 1

КЦ

7. Вывод S

8.

i=1; S=0
Конец.

НЕТ

 

 

ДА

 

 


 

 

 
 

 


Рис. 5.2.7. Блок – схема к примеру 5.2.3 с циклом «Пока»

Цикл с постусловием («До»).

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

 

 

Вход Истина

 

Ложь Выход

 

 

Рис. 5.2.8. Структура «цикла с постусловием».

 

<== предыдущая лекция | следующая лекция ==>
Способы описания алгоритмов. Существуют несколько способов описания алгоритма: словесное, псевдокод, блок-схема, программа | Пример 5.2.4
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 749; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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