20005

Основные алгоритмические структуры: следование, ветвление, цикл; изображение на блок-схемах. Разбиение задачи на подзадачи. Вспомогательные алгоритмы

Шпаргалка

Информатика, кибернетика и программирование

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

Русский

2013-08-15

46.5 KB

23 чел.

Билет 7

------------------------------------------------------------------------------------------------------------------------
1. Основные алгоритмические структуры: следование, ветвление, цикл; изображение на блок-схемах. Разбиение задачи на подзадачи. Вспомогательные алгоритмы.
------------------------------------------------------------------------------------------------------------------------

Алгоритмические конструкции

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

Основными алгоритмическими конструкциями являются линейная последовательность шагов, ветвление и цикл.

Линейная последовательность шагов

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

На рисунке изображена блок-схема линейного алгоритма, состоящего из двух шагов.

Язык блок-схем

Алгоритмический язык

нач


действие 1

действие 2
...................

кон

 

Пример программы на языке программирования Pascal
{программа вычисляет площадь прямоугольника}

Program ploshad;
var a,b,s:word;
begin
write('a=');
read (a);
write ('b=');
read (b);
s:=a*b;
writeln ('площадь прямоугольника', s);
end.

Ветвление

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

На рисунке приведена блок-схема ветвления

Язык блок-схем

Алгоритмический язык


если условие

то действия 1
иначе действия 2

все

Если условие истинно, то будет выполнено только действие1, в противном случае будет выполнено только действие2.

В языках программирования высокого уровня ветвление обычно реализуется с помощью оператора (команды) IF. (См. оператор If в Паскале, оператор If в языке Basic.)

Пример программы на языке программирования Pascal

{Программа, которая находит наибольшее из трех чисел}

Program maximal;
var a,b,c,d:word;
begin
write ('a,b,c'');
read (a,b,c);
if a>b then d:=a
else d:=b;
if c>d tnen d:=c then
writeln ('наибольшее',d);
end.

Цикл

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

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

Если при истинности условия цикл завершается, то такое условие называется условием завершения цикла. В этом случае цикл продолжается до тех пор, пока условие цикла не станет истинным.

Различают циклы с проверкой условия перед выполнением очередной итерации и циклы с проверкой условия после выполнения очередной итерации. Первые называются циклами с предусловием, вторые – с постусловием.

Блок-схема цикла с предусловием продолжения

Блок-схема цикла с постусловием завершения

Тело цикла с постусловием всегда выполнится хотя бы один раз.

Цикл типа Пока 

 

Цикл типа Для

 

нц пока условие
тело цикла (последовательность действий)
кц

нц для i от i1 до i2
тело цикла (последовательность действий)

кц

В языках программирования высокого уровня существуют различные операторы циклов (см. циклы в Паскале, циклы в Basic), в том числе реализующие циклы с заранее заданным количеством итераций, так называемые циклы со счетчиком.

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

Разработка алгоритмов методом последовательной детализации. Вспомогательные алгоритмы

Процесс решения сложной задачи довольно часто сводится к решению нескольких более простых подзадач. Соответственно при разработке сложного алгоритма он может разбиваться на отдельные алгоритмы, которые называются вспомогательными. Каждый такой вспомогательный алгоритм описывает решение какой-либо подзадачи.

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

Рассмотрим процесс создания алгоритма Домик для исполнителя Чертежник методом последовательной детализации. Пусть необходимо нарисовать домик с крышей.

Сначала запишем алгоритм, состоящий из крупных блоков. Такими блоками, содержащими «непонятные» для исполнителя Чертежник команды, являются блоки стена, крыша. Теперь детализируем эти блоки и запишем их в виде вспомогательных алгоритмов, содержащих понятные Чертежнику команды.

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

------------------------------------------------------------------------------------------------------------------------
2. Работа с электронной таблицей. Создание таблицы в соответствии с условием задачи, использование функций. Построение диаграмм и графиков по табличным данным.
-----------------------------------------------------------------------------------------------------------------------


 

А также другие работы, которые могут Вас заинтересовать

72358. Исследования в области СО. Качественные и количественные методы исследования 13.22 KB
  Качественные методы исследования в PR используются для изучения индивидуального аспекта восприятия PRсообщений имиджа PRкампании в целом. Результатом качественных методов исследования в PR являются неструктурированные текстовые материалы содержащие прямую речь которая в свою очередь...
72359. Регуляция мышечного тонуса, позы и движений: Учебно-методическое пособие 5.93 MB
  Любая поза тела за исключением лежания представляет собой результат непрерывной борьбы систем регуляции активности скелетных мышц с действием силы тяжести. Это осуществляется благодаря тоническому напряжению мышц тела которые крепятся к многочисленным подвижным звеньям скелета...
72362. Элементарная математика: Общие методы решения уравнений и неравенств (Часть 1): Учебно-методическое пособие 2.96 MB
  В пособии представлены первые две части раздела «Общие методы решения уравнений и неравенств» курса «Элементарная математика». В нём содержится тематический план, базовые теоретические положения с выделением основных типов и методов решения задач, список задач для индивидуальной работы...
72363. Программирование на языке высокого уровня СИ/СИ++ 622 KB
  Пособие разработано для студентов очной и заочной формой обучения по соответствующей специальности. Может использоваться для самостоятельной работы, при выполнении практических и лабораторных работ, при подготовке курсовых и дипломных работ: преподавателем соответствующей дисциплины в учебном процессе.
72364. Анатомия и морфология высших растений 2 MB
  Морфология и анатомия растений – науки, изучающие соответственно внешнее и внутреннее строение тела растений. Их важнейшими задачами являются описание и наименование органов и тканей растительного организма, ведь без достаточного понятийного аппарата невозможно развитие ни самих этих наук, ни других разделов ботаники.
72365. Обладнання нафтогазової галузі і умови його експлуатації: Лабораторний практикум 5.71 MB
  Нафтогазове обладнання на даному етапі це високотехнологічні конструкції, які працюють в умовах значних і складних навантажень, що призводить до зношування окремих його деталей та інструменту. Загальне ознайомлення з вказаним обладнанням розширить знання студентів...
72366. Логика: Учебно-практическое пособие 1.08 MB
  Цель курса логики в системе образования наряду с вышеотмеченной мировоззренческой состоит в том чтобы полученные знания позволили: 1 лучше ориентироваться в функциях выполняемых различными элементами разговорного и научного языка в различных коммуникативно-познавательных ситуациях...