Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Форматный вывод



Общий вид P: M;

Здесь - P - имя переменной; M - ширина поля вывода в позициях.

Целые - выводятся в правые крайние позиции поля шириной M.

Пример:

а=17 Write ('A=',A:5); → A= 17

b=3456 Write ('B=',B:5); → B= 3456

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

Пример:

a=134.25 Write ('A=',a:11); → A= 1.3425E+02

b=-134.25 Write ('B=',b:11); → B=-1.3425E+02

В случае если форматный вывод имеет вид P:M:N, где N - число позиций дробной части, то значение переменной Р выводится в виде числа с фиксированной точкой.

Пример:

r=3.1743 Write (' R=',R:5:2); → R= 3.17

Структура программы

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

Программа на языке Паскаль состоит из строк. Максимальная длина строки не должна превышать 127 символов. Размер программы имеет предел. Редактор текстов и компилятор позволяют обрабатывать программы и библиотечные модули объемом до 64 Кбайт. Если программа требует большего количества памяти, следует использовать библиотечные модули (.TPU-файлы) или оверлейные структуры.

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

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

После заголовка следует программный блок, состоящий в общем случае из 7 разделов. Структура программы выглядит следующим образом:

Program <имя> (Input,Output);

Uses <имя1, имя2,...>; { список имен подключаемых модулей }

Label...; { раздел объявления меток }

Const...; { раздел объявления констант }

Тyре...; { раздел объявления типов }

Var...; { раздел объявления переменных }

Procedure <имя>;{ раздел объявления процедур }

<тело процедуры>

Function <имя>;{ раздел объявления функций }

<тело функции>

Begin

<операторы>{ раздел инструкций основнойпрограммы }

End.

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

Раздел Uses - с его помощью подключаются библиотечные модули из стандартного набора Турбо Паскаля или написанные самим пользователем. Если он присутствует, то должен стоять перед прочими разделами. Кроме того, слово Uses может появиться в программе только один раз.

Пример:

Uses Crt, Printer, My_Lib;

Раздел меток (Label). Любой выполняемый оператор может иметь метку. Метки могут обозначаться целыми числами в диапазоне от 0 до 9999 или идентификаторами. Все метки должны быть описаны в разделе Label. Разделов Label может быть несколько, и стоять они могут где угодно до начала основного блока.

Общая форма записи: Label список меток;

Пример:

Label 25, M1, K750, A;

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

Пример:

A1: X:=X*Sin(Y);

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

Раздел типов (Type). Является необязательным разделом. В нем описываются типы переменных, отличающиеся от стандартных, т.е. перечисляемые, интервальные, массивы, записи и т.д. В этом разделе могут быть использованы константы из блока Const. Если это так, то раздел Type может быть расположен где угодно, но не выше соответствующего раздела Const. Если же описания типов ни с чем не связаны, то они могут быть помещены в любом месте между другими разделами, но выше того места, где будут использованы.

Раздел переменных (Var) формально тоже необязателен и может отсутствовать. Реально он объявляется и содержит список глобальных переменных программы и их типов. Разделов Var может быть несколько, но переменные в них не должны повторяться. Если в программе описываются процедуры или функции, то их определение должно предшествовать основному разделу (разделу операторов).

Раздел операторов - это собственно программа, использующая все, что было описано и объявлено. Он обязательно начинается словом Begin и заканчивается End с точкой. После точки, завершающей основной раздел, любой текст игнорируется.

Операторы языка Паскаль не привязаны к определенной позиции строки. В одной строке можно указывать несколько описаний и операторов. Исполняемые операторы отделяются друг от друга ";". Точка с запятой не ставится после Begin и перед End, так как они являются не операторами, а операторными скобками. В операторах цикла точка с запятой не ставится после While, Repeat, Do и перед Until. В условных операторах ";" не ставится после Then и перед Else. Допускается перенос с одной строки на другую частей операторов и описаний, но без разделения ключевых слов.

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

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

Пример программирования линейного алгоритма. Составить программу для вычисления следующего выражения:

Program Lin;

Var A, B, C: Real;

W, X: Real;

Begin

A:= 1.03;

B:= 2.91e-03; { Ввод исходных данных }

X:= 5.27e-2;

W:= Exp(7 * Ln(A));

W:= Abs(W);

W:= Ln(W) / Ln(10);

C:= Exp(3 * Ln(X));

C:= ArcTan(C);

C:= C * Pi * A / Sqrt(Abs(A + X));

C:= C * (B - Cos(A / B));

W:= W + C;

Writeln('Исходные данные к задаче:');

Writeln('a= ',A: 4: 2,' b=',B: 9,' x=',X: 9);

Writeln;

Write('Результат: w=',W: 13)

End. {Ответ: W=9.008913E-02}

Контрольные вопросы





Дата публикования: 2014-12-10; Прочитано: 232 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.01 с)...