Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции.doc
Скачиваний:
17
Добавлен:
14.11.2018
Размер:
242.69 Кб
Скачать

Лекция №11

Тема: Операторы языка Pascal. Линейные программы.

Цель: Сформировать и развить умения и навыки составления и записи на языке Раskal линейных программ.

Количество часов – 4часа

Для ввода используются операторы:

Read (b1, b2, ,b n);

Readln (b,b,..,b);

Readln;

Где B1,b2,…, bn-имена переменных, значения которых вводятся.

Оператор read(b1,b2,…,bn); осуществляет ввод данных из стандартного файла INPUT. Типы вводимых данных должны соответствовать типам переменных в списке оператора ввода.

Оператор readln (b1,b2,…,bn); осуществляет ввод данных из стандартного файла INPUT и после выбора значения последней переменной обеспечивает переход к началу новой строки файла. При вводе значений целого и действительного типов операторы READ и READLN игнорируют пробелы между значениями.

Оператор READLN; обеспечивает пропуск одной строки в стандартном файле INPUT и переход к началу новой строки. Ввод переменных логического типа недопустим.

Для вывода информации используются операторы:

WRITE (b1, b2, ,b n);

WRITELN (b1, b2, ,b n);

WRITELN;

Где b1,b2,…, bn-имена переменных, значения которых выводятся.

Оператор WRITE(b1, b2, ,b n); выполняет вывод значений, соответствующих перечисленным именам в стандартный файл OUTPUT, размещая выводимые значения в одной строке.

Оператор WRITELN(b1, b2, ,b n); выполняет вывод значений, соответствующих перечисленным именам в стандартный файл OUTPUT и после вывода последнего значения осуществляется переход к новой строке файла

Оператор WRITELN; обеспечивает пропуск одной строки в стандартном файле и переход к началу новой строки. Имена переменных в списке операторов вывода могут принадлежать к целому, действительному, символьному или логическому типам.

Вещественные данные выводятся в формате с плавающей точкой. Ширина поля вывода в этом случае составляет 18 символов: #.###########E+###, где # - любая десятичная цифра от 0 до 9, например :

0.34430000000Е-01 0,03443

Общий вид записи операторов для вывода значений целого типа:

WRITE (b:m); WRITELN (b:m);

А для вывода действительного типа:

WRITE (b:m:n); WRITELN (b:m:n);

Где B - имя выводимой переменной; m- ширина поле, отводимое под значение и задаваемое константой или выражением целого типа; n- часть поля, отводимого под дробную часть числа.

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

Программа на языке ПАСКАЛЬ оформляется в виде заголовка программы и блока, заканчивающегося точкой.

Заголовок программы имеет вид Program имя (input, output);

Имя программы выбирается пользователем.

Блок программы включает в себя разделы:

описания меток (LABEL);

определение констант (CONST);

определение типов (TYPE);

описание переменных (VAR);

описание функций и процедур (FUNCTION и PROCEDURE).

Раздел операторов включает в себя операторы, которые записываются в соответствии с

алгоритмом решения и заключаются, в операторные скобки BEGIN и END.

Описания и определения в разделах заканчиваются символом “;” .

При отсутствии описаний или определений, принадлежащих какому-либо разделу, данный

раздел опускается.

Операторы присваивания .В результате присваивания переменная получает конкретное

значение.

Общий вид оператора:

V: =a;

Где v- имя переменной (результата); a- выражение.

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

  • вычисляется результат выражения, находящегося справа от символа «:=»

  • вычисленное значение записывается в переменную, имя которой стоит слева от

символа «:=»

Например:

Im: = 0;

P: = 1;

Im: = im + 2;

P: = p * im;

Имя переменной и результат выражения должны принадлежать одному типу. Исключение

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

действительного типа. Например, для описаний и определений вида

Counts n=100;

Var. Tyrell;

Справедлив оператор присваивания T: = N;

Пример1.

Составить программу для вычисления высот треугольника со сторонами a,b,c, используя

формулы:

где p=(a + b + c)/2;

Исходными данными для решения являются значения длин сторон треугольника- a, b, c. Для

ввода этих значений следует использовать оператор READ. При этом значения а, b, c

должны быть расположены

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

полупериметра и вспомогательная переменная t для исключения повторений.

Вычислительные значения высот ha, hb, hc необходимо вывести со своими именами, каждую

на одной строке.

Программа имеет вид:

Program hrt ( input, output);

Var a, b, c, p, t, ha, hb, hc : real;

Begin

Read (a, b, c);

P: =(a+b+c)/2;

T: =2*SQRT (p*(p-a)*(p-b)*(p-c));

Ha:= t/a;

Hb:= t/b;

Hc:= t/c;

Writeln(‘Ha=’, Ha);

Writeln(‘Hb=’, Hb);

Writeln(‘Hc=’, Hc);

End.

Пример2.

Составить программу для вычисления значений y и p,

используя расчетные формулы:

program prim2;

var a, x, z, y, p, c: real;

begin

writeln(' введите a, x, z');

read(a, x, z);

y: = a*exp(3* Ln(sin(x*x)/cos(x*x)))+SQRT(z*z/(a*a+x*x));

p:=Ln(a+x*x)+SQR(sin(z/a));

writeln('y=',y:3:2);

write('p=',p:3:2);

end.

Пример3.

Составьте программу вычисления общей поверхности и объема круглого конуса , имеющего

радиус основания R=12,54см и длину образующей L=24,54см. При вычислении используем

равенства:

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

program prim3;

const pi=3.14;

var R,L,H,S,V:real;

begin

read(L,R);

s:=pi*R*R+pi*R*L;

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

V:=PI*(R*R+r*r+R*r)*H/3;

Writeln(‘параметры конуса’);

Writeln(‘R=’,R,’L=’,L,’H=’,H);

Writeln(‘поверхность конуса’);

Writeln(‘S=’,S);

Writeln(‘объем конуса’);

Writeln(‘V=’,V);

END.

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

определения и описания указанных структур.

Одним из способов, улучшающих восприятие программы, являются применение

комментариев. Комментарий представляет собой текст, вставляемый в программу для

дополнительных пояснений. Комментарии не воспринимаются и не обрабатываются Э.В.М.,

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

символами "{" и "}" или "(*" и "*)" и может содержать цифры, буквы, ключевые слова и

специальные символы. Например:(* ПРОГРАММА УПОРЯДОЧЕВАНИЯ ЭЛЕМЕНТОВ

МАССИВА *). Комментарии могут использоваться для пояснения назначения программы,

констант, переменных, разделов программы или для пояснения используемых методов в

алгоритме.

В языке ПАСКАЛЬ символьные переменные и массивы описываются в разделе описания

типов. Описание типов имеет вид:

TYPE <имя> OF CHAR;

Где <имя>- имя символьной переменной или символьного массива. При этом размеры

массива описываются обычным образом.

ЗАДАЧИ ДЛЯ РЕШЕНИЯ

ЗАДАЧА № 1.

Вычислить для усеченного конуса площадь поверхности

и объем

ЗАДАЧА № 2.

Составить программу для нахождения значения функции y по формуле.

;

ЗАДАЧА № 3.Составить программу для нахождения значений A и B по формулам: ; x=1,426 y=-1,22 z=3,5