37629

Циклы в Pascal

Лабораторная работа

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

Теоретическое введение Операторы цикла Операторы цикла используются для вычислений повторяющихся многократно. Блок ради выполнения которого и организуется цикл называется телом цикла. Проверка условия продолжения цикла и модификация параметра цикла. Один проход цикла называется итерацией.

Русский

2013-09-24

25.7 KB

7 чел.

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

ФИЛИАЛ ГОСУДАРСТВЕННОГО ОБРАЗОВАТЕЛЬНОГО УЧРЕЖДЕНИЯ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«МОСКОВСКИЙ ЭНЕРГЕТИЧЕСКИЙ ИНСТИТУТ

(ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)» в г. Смоленске

Кафедра информатики

Отчёт

по лабораторной работе №2

Тема: «Циклы в Pascal»

по курсу: «Информатика и программирование»

Студент:                    Скобелева М.С.
Группа: ПИЭ-11
Преподаватель: Нестеров А.П.
Вариант: 7

Смоленск, 2011

1 Теоретическое введение

  1.  Операторы цикла

Операторы цикла используются для вычислений, повторяющихся многократно. В Паскале имеется три вида циклов: цикл с предусловием while, цикл с постусловием repeat и цикл с параметром for. Каждый из них состоит из определенной последовательности операторов.  Блок, ради выполнения которого и организуется цикл, называется телом цикла. Остальные операторы служат для управления процессом повторения вычислений: это начальные установки. Проверка условия продолжения цикла и модификация параметра цикла. Один проход цикла называется итерацией.

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

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

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

Цикл завершается, если условие его продолжения не выполняется. Возможно принудительное завершение как текущей итерации, так и цикла в целом. Для этого служат операторы break, continue и goto. Передавать управление извне внутрь цикла не рекомендуется, потому что при этом могут не выполниться начальные установки.

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

Формат оператора прост: while выражение do оператор

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

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

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

Repeat

тело цикла

Until выражение

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

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

  1.  Цикл с параметром for

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

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

  1.  Процедуры передачи управления

В Паскале есть несколько стандартных процедур, изменяющих последовательности выполнения операторов:

Break – завершает выполнение цикла, внутри которого записана;

Continue – выполняет переход к следующей итерации цикла;

Exit – выполняет выход из программы или подпрограммы;

Halt – немедленно завершает выполнение программы.

  1.  Оператор перехода goto

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

Использование оператора безусловного перехода оправданно, как правило, в двух случаях:

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

- переход из нескольких мест программы в одно.

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

2. Техническое задание

Для пункта  таблицы составить алгоритм вычисления табличных значений функций y=f(x,z), содержащий двукратный цикл: во внешнем цикле менять х от 1 до 2.2 с шагом 0.3; во внутреннем цикле изменять от 0.6 до 2 с шагом 0.2.

Ответ при x=1, z=0.6 f(x, z) = 0, 0426.

3. Анализ технического задания

Для того, чтобы написать данную программу, необходимо написать программу с двумя циклами – внешним и внутренним. Для выполнения удобнее сначала воспользоваться циклом repeat (цикл с постусловием), а потом циклом while (цикл  с предусловием).

4.  Модульная структура программы

  1.   Имя модуля p1.
  2.  Имя вызываемого модуля – нет.
  3.  Выполняемые функции -  нахождение значения F по формуле

  1.  Входные данные  - F, x, z типа real.
  2.  Выходные данные – F типа real.
  3.  Особенности и ограничениянет.

5.Текст программы

program p1;

uses crt;

var F,x,z: real;

begin

clrscr;

writeln(‘1<x<2.2, 0.3; 0.6<z<2, 0.2’);

readln;

F:=0;

x:=0;

z:=0;

writeln(‘Введите значение x’);

readln(x);

repeat

begin

F:=0;

x:=1;

while x<=2.2 do

begin

F:=F+abs(x-3*z)/exp(1/3*ln(sqr(z)/9+exp(2*x))*

*arctan(z*sin(0.2*x)/cos(0.2*x))/sqrt(sqr(z)+sqr(x)));

X:=x+0.3;

writeln(‘ ‘, ‘F:=’, F:6:4);

end;

writeln;

z:=z+0.2;

end;

until z>2;

writeln(‘F:=’, F:6:4);

readln;

end.

  1.  Тестирование программы

F:=4.3213

F:=5.9550

F:=7.2761

F:=8.3121

F:=2.8704

F:=5.3349

F:=7.4245

F:=9.1732

F:=10.6140

F:=3.3943

F:=6.3455

F:=8.8864

F:=11.0554

F:=12.8906

F:=3.9182

F:=7.3563

F:=10.3476

F:=12.9344

F:=15.1601

F:=15.1601

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

Заключение: В результате выполнения лабораторной работы освоены циклы в Паскале, выявлены различия между циклами For, while и repeat, научилась решать задачи на табулирование с использованием внешнего и внутреннего цикла.


 

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

6222. Генетика онтогенеза 109.5 KB
  Генетика онтогенеза 1. Общая характеристика онтогенеза (самостоятельно) 2. Генетическая детерминация онтогенеза. Генотип и среда. Поливариантность онтогенеза. Программы онтогенеза 3. Механизмы реализации программ онтогенеза 1. Общая характеристика о...
6223. Гонорея. Хламидиоз. Трихомониаз 130.5 KB
  Содержание Гонорея. Хламидиоз. Трихомониаз. Определение Этиология Тактика среднего медицинского работника при данных заболеваниях Принципы лечения Особенности ухода за пациентами Диспансеризация Профилактика...
6224. Конкуренция и монополия 66.5 KB
  Конкуренция и монополия. Цели изучения темы: уяснение сущности и функций конкуренции, умение дифференцировать различные типы рыночных структур, измерение уровня концентрации рынка, понимание природы монополий. Основные термины и понятия: конкуренция...
6225. Перевод числа из инфиксной формы в постфиксную 199 KB
  Одной из главных причин, лежащих в основе появления языков программирования высокого уровня, являются вычислительные задачи, требующие больших объёмов рутинных вычислений. Поэтому к языкам программирования предъявлялись требования максима...
6226. Решение задач на языке программирования Pascal 323 KB
  Введение Паскаль (англ. Pascal) - это язык программирования общего назначения. Один из наиболее известных языков программирования, широко применялся в промышленном программировании, обучении программированию в высшей школе, является базой для р...
6227. Реализация компонента, осуществляющего перевод чисел в различные системы счисления 189.5 KB
  В курсовой работе разработан собственный компонент, осуществляющий перевод чисел в различные системы счисления. Реализация модулей, описанных при создании данного компонента, произведена в среде программирования Borland C++ Builder Содержание...
6228. Порівняння загальних характеристик роботи різних методів сортування 203 KB
  Вступ В даний час обчислювальна техніка проникла практично в усі сфери людської діяльності. За допомогою ЕОМ можна вирішувати найрізноманітніші завдання. Але для того, щоб вирішити поставлену задачу, необхідно вказати послідовність дій, виконання як...
6229. Теорія графів. Розвязок задачі на основі графів на мові C++ 583.5 KB
  Теорія графів - це галузь дискретної математики, особливістю якої є геометричний підхід до вивчення об'єктів. Вона перебуває зараз у самому розквіті. Розділ теорії графів Зв'язність графів, що розглядається у цій роботі, є дуже актуальною на сьогоднішній день. Наприклад її прямим застосуванням є теорія сітей – та її додаток - теорія електронних сітей...
6230. Антибиотики (Пенициллины, цефалоспорины, макролиды) 115.5 KB
  Антибиотики (Пенициллины, цефалоспорины, макролиды) Антибиотики (от греч. anti - против, bios - жизнь) - вещества микробного, животного или растительного происхождения, избирательно угнетающие жизнедеятельность микроорганизмов. В 1929...