Файл: Алгоритмизация как обязательный этап разработки программы(Построение информационной модели разработки программного обеспечения).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 14.03.2024

Просмотров: 29

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

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

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

Запись на алгоритмическом языке:

повторять

< тело цикла >

до < условие >

Исполнение тела цикла происходит, если условие не выполняется (соответствующее логическое выражение имеет значение «ложь»). Как только наступает выполнение условия, исполнение тела цикла прекращается (выход по истине).

Запись в виде графических схем такова.

Цикл с предусловием Цикл с постусловием

Условие

Тело цикла

Условие

да

нет

Тело цикла

да

нет

Пример

алг Бочка

нач

пока бочка не полная

нц

наполнить ведро

вылить его содержимое в бочку

кц

кон

алг Бочка

нач

повторять

наполнить ведро

вылить его содержимое в бочку

до бочка полная

кон

Тело цикла с условием должно содержать команды, которые влияют на выполнение условия, в противном случае цикл может оказаться бесконечным. В приведенном примере следует обратить внимание на формулировки условия и на то, что исполнение тела цикла приближает момент выполнения условия в цикле повторять – до и момент его невыполнения в цикле пока.

То же самое можно проследить и в следующем примере.

Пусть требуется сложить квадраты натуральных чисел, не превышающие заданного числа (для определенности возьмем число 45).

алг Сумма

нач

S:=0 ; n:=1

пока n*n <= 45

нц

S:= S + n*n

n:= n + 1

кц

Вывести S

кон

алг Сумма

нач

S:=0 ; n:=1

повторять

S:= S + n*n

n:= n + 1

до n*n > 45

Вывести S

кон

Если в данный алгоритм ошибочно не включить команду n:= n + 1, это приведет к бесконечному циклу, т.к. в цикле пока условие будет выполняться всегда, а в цикле повторять – до оно никогда не будет выполнено.

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

алг Сумма 2

нач

S:=0 ; n:=1

пока S <= 45

нц

S:= S + n*n

n:= n + 1

кц

Вывести n - 1

кон

алг Сумма 2

нач

S:=0 ; n:=1

повторять

S:= S + n*n

n:= n + 1

до S > 45

Вывести n - 1

кон

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


Фрагмент алгоритма таков:

повторять

ввод данных

до момента ввода правильных данных

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

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

< параметр > := < начальное значение >

пока < параметр > <= <конечное значение>

нц

< тело цикла >

< параметр > := < параметр > + < шаг >

кц

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

Пассмотрим только реализацию в языке Паскаль.

Цикл с предусловием

While < условие > do

< оператор >

Цикл с постусловием

Repeat

<оператор>

Until < условие >

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

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

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

ЗАКЛЮЧЕНИЕ

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

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


На этом этапе выявляется, насколько построенная информационная модель соответствует реальности. Дело в том, что чем больше свойств объектов и явлений признано существенными и учтено, тем в большей степени модель отражает действительность. Однако учет большого числа характеристик ведет к усложнению модели, затруднениям в математическом выражении связей между характеристиками. Обычно стараются найти баланс между полнотой соответствия информационной модели реальному состоянию дел и ее сложностью в процессе уточнения модели (постепенного увеличения числа учитываемых существенных свойств).

Цель и задачи в данной работе достигнуты:

- определены содержание и характеристики основных понятий алгоритмизации как основного аспекта программирования;

- рассмотрены основные понятия алгоритма, его свойства и способы записи;

- рассмотрены основные конструкции построения алгоритмов.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1. Безручко В. Т. Практикум по курсу «Информатика». Работа Windows’ 2000, Word, Excel. 2-е издание. – М.: Финансы и статистика, 2014. – 544 с.
  2. Информатика. Базовый курс: Учебник для вузов/ Под ред. С.В. Симоновича. – СПб.: Питер, 2014. – 640 с.
  3. Практикум по информатике/ А.А.Землянский, Г.А.Кретова, Ю.Р. Стратонович, Е.А. Яшкова; Под ред. А.А.Землянского. – М.: КолосС, 2014. – 384 с.
  4. Рудикова Л.В. Microsoft Excel для студента. – СПб.: БХВ-Петербург, 2014. – 368 с.
  5. Саймон Дж. Анализ данных в Excel. – М.: Издательский дом «Вильямс», 2014. – 528 с.
  6. Фандрова Л.П., Шамсутдинова Т.М. Обработка табличных данных средствами электронных таблиц для анализа задач АПК: Учеб. пособие. - Уфа: БГАУ, 2014. - 90 с.
  7. Информатика. Базовый курс. Учебник для вузов /Под ред. Симоновича С.В. - СПб.: Питер. - 2014. - 640 с.
  8. Фаронов В.В. Турбо Паскаль 7.0. Начальный курс. - М.: Нолидж. - 2014. - 576 с.
  9. Семашко Г.Л., Салтыков А.И. Программирование на языке Паскаль - М.: Наука, 2014. - 128 с.