Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика_1лабработа_401.doc
Скачиваний:
8
Добавлен:
10.11.2019
Размер:
385.54 Кб
Скачать

9. Вывод данных. Операторы Write и WriteLn

Оператор Write (выражение 1, выражение 2, … , выражение N) выполняет вывод значений выражений, указанных в списке. Тип каждого выражения определяет тип печатаемой единицы данных. Могут выводиться выражения целого, вещественного, символьного типов, логического типа Boolean, а так же строки символов, заключенные в апострофы, и строковые константы.

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

WriteLn (выражение 1, выражение 2, … , выражение n).

Он выполняет такие же действия, как и оператор Write, за исключением того, что после вывода значения последнего выражения производится переход к новой строке экрана. Оператор WriteLn без параметров (WriteLn;) вызывает пропуск строки на экране.

Управление печатью. Чтобы выводимые на печать результаты были оформлены в удобном для пользователя виде, необходимо регулировать число позиций, отводимых в листинге под каждую единицу данных операторов WRITE и WRITELN. Для этого в языке Турбо-Паскаль предназначены две положительные величины: ширина поля и точность, указываемые через двоеточие после соответствующего выражения.

Например: Write(' РЕЗУЛЬТАТЫ ': 16, R: 5 : 2 );

Ширина поля - это общее количество позиций, занимаемых единицей данных (числом, строкой, символом).

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

Если параметр ширина поля опущен, то по умолчанию он принимает стандартное значение:

  • для данных целых и действительных типов - 13;

  • для данных логического типа - 6;

  • для символьных данных и строковых констант ширина поля будет равна числу символов в единице данных.

10. Оператор присваивания

Оператор присваивания, имеет вид A := B, где А - имя переменной, B - выражение или переменная. Он обозначает, что вновь вычисленное значение выражения B присваивается некоторой переменной A. Например,

L := a mod b;

J := k*( j - h*b-f*b);

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

11. Пример составления программы

Составить программу вычисления общей поверхности и объема круглого конуса, имеющего радиус основания R=12,54cм и длину образующей L=24,83 см. При вычислениях использовать равенства:

S = R2 + RL; V= R2H,

где H - высота конуса, определяемая по формуле H = .

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

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

При вычислениях будет использоваться зарезервированная константа Pi ( = 3,1415926).

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

R - радиус основания;

L - длина образующей;

H - высота конуса;

S - полная поверхность конуса

V - объем конуса.

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

(* Программа вычисления поверхности и объема круглого конуса *) Program Conus;

Var

R, L, H, S, V : Real;

Begin

Read (R,L); (* ввод R, L с клавиатуры *)

S := PI*R*R + PI*R*L;

H := SQRT(L*L - R*R);

V := PI*R*R*H/3;

(*вывод значений R, L, H, V, S*)

Writeln (' Параметры конуса: R=', R:6:3, 'L=', L:6:3, 'H=',H:6:3);

Write ('V=',V:6:3, 'S=',S:6:3);

End.