Операторы цикла в языке Pascal 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Операторы цикла в языке Pascal



Эти операторы – с заранее неизвестным числом повторений тела цикла.

Цикл «пока» (while): Заданная последовательность действий выполняется до тех пор, пока условие истинно.

Цикл while имеет следующий формат (синтаксис) записи: while (выражение) do оператор;

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

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

repeat

оператор;

until выражение;

Сначала выполняется тело цикла, а затем производится проверка выражения, определяющего условие завершения. Если результатом проверки будет значение FALSE (ложь), то выполнение цикла продолжится. Когда в результате проверки условия будет вычислено значение TRUE (истина), то выполнение цикла прекратится. Таким образом, цикл repeat... until гарантированно выполнится хотя бы один раз.

Операторы ввода и вывода информации в языке Pascal

Оператор вывода на экран имеет вид:

WriteLn (список_вывода);

write(список_вывода);

Различие между ними в том, что первый оператор после вывода выполняет переход на новую строку. Список вывода может содержать как константы (символьные, числовые), так и выражения.

Форма представления значений в поле вывода соответствует типу переменных и выражений: величины целого типа выводятся как целые десятичные числа, действительного типа - как действительные десятичные числа с десятичным порядком, символьного типа и строки - в виде символов. По умолчанию действительные числа выводятся в экпоненциальной (научной) форме – например, 123.45 отобразится как 1.234500E+02 (т.е. 1,234·102).

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

writeln('значения равны: ', a, b:10:4, a+b*100:10:4);

Оператор ввода переменных с клавиатуры:

Read (имя переменной);

ReadLn (имя переменной);

Оператор ReadLn считает значение в переменную х и переведет курсор на следующую строку. Если в строке введено несколько значений (например: 12 3.5 16), то оператор read прочитает число 12 и оставит курсор в строке. Следующий оператор ввода прочитает значение 3.5. Оператор readln прочитает первое значение (12), остальные значения будут утеряны. Ввод readln завершится после нажатия Enter.

Процедуры в языке Pascal

Подпрограмма – это часть программы, оформленная как самостоятельная (автономная) программная единица и выполняющая определенную задачу.

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

Структура описания процедуры и функции такая же, как и обычной программы: заголовок, раздел описаний и раздел операторов. Заголовок процедур и функций имеет вид: procedure <имя>(<параметры>);

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

Параметры, описываемые в заголовке процедуры или функции, называются формальными.

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

(далее рассказать о передаче параметров по значению и по ссылке)

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

Функции в языке Pascal

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

Заголовок функций имеет вид: function <имя>(<параметры>):тип_результата;

Заголовок функции (только заголовок) рекомендуется помещать в раздел описаний программы.

Заголовок функции определяет идентификатор функции, формальные параметры (если есть), и тип результата функции. Допустимы порядковые, вещественные, строковые, логические и указательные типы результата.

Функция вызывается при оценке выражения, использующего данную функцию.

Функция содержит:

  • Раздел описаний, в котором объявляются локальные объекты
  • Операторную часть, в которой находятся операторы, которые будут выполнены при вызове функции.

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

Пример заголовка функции: function Func(a:integer; var b:real; var sum:real):boolean; В теле такой функции должен присутствовать хотя бы один оператор присваивания значения переменной Func, например:

Func:=false; if sum>b*b then Func:=true;

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

function power(x,b: double):double;

begin

power:=exp(b*ln(x));

end;

Пример вызова функции: z:=Power(x, 0.333) – соответствует извлечению кубического корня из x.



Поделиться:


Последнее изменение этой страницы: 2017-01-24; просмотров: 323; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 13.58.39.23 (0.007 с.)