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

Символьный тип

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

Символ, заключенный в апострофы, обозначает константу символьного типа, например: ‘5’, ‘d’.

Над переменными символьного типа определены следующие функции:

1) функции преобразования:

ORD (s) - дает порядковый номер символа s в упорядоченном множестве символов: ORD(‘5’)=53.

CHR (i) - дает символ, стоящий под номером i в упорядоченном множестве символов: CHR(66)=‘B’.

2) операции отношения (см. выше):

если С1 и С2 - символьные переменные, то С1>С2 истинно только тогда, когда ORD(C1)>ORD(C2).

3) стандартные функции:

PRED (s) - возвращает предыдущий символ.

SUCC (s) - возвращает следующий символ.

Булевский тип

Переменные булевского типа могут принимать только два значения: TRUE и FALSE.

Над ними определены:

1) логические операции:

AND(и или конъюнкция), OR(или или дизъюнкция),

NOT(не или отрицание).

2) операции отношения (см. выше):

причем TRUE>FALSE.

Перечисляемый тип

Задается перечислением тех значений, которые может получать переменная этого типа. Нумерация в списке значений начинается с 0, т.е. первое значение имеет номер - 0, а второе - 1 и т.д.

Пример: type tree=(birch, oak, pine);

или

var tr=(birch, oak, pine);

Постановка задачи.

  1. Найти значение функции Y= x+2 при x = 0.675. Затем возвести полученное значение в квадрат, т.е. найти Y1=Y(X), и вычислить абсолютное значение ABS(Y1).

  2. Записать выражение, зависящее от координат точки М(1.5; 0.5) и принимающее значение TRUE, если точка принадлежит заштрихованной области (III четверть), и FALSE, если не принадлежит. Для исследуемой точки вычислить полученное выражение.

  3. Y

    -7 Х

    -1

  4. Результаты всех вычислений вывести на печать.

Решение.

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

program lab1a {вариант 2.a};

const x=0.675;

var y:real;

begin

writeln ('Вычислим значение функции y=x+1/(x*x*x-x)-2 при x=0.675');

y:=x+1/(x*x*x-x)-2;

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

writeln ('y1=',y*y:0:2);

writeln ('|y^2|=',abs(y*y):0:2);

end.

Текст программы № 1.б

program lab1b {вариант 2.b};

const x0=1.5;

y0=0.5;

r=1;

var graf: boolean;

begin

graf:=(x0*y0+y0*y0<=r*r) and ((x0+1<=y0) or (abs(x0)-1>=y0));

writeln ('точка с координатами M(',x0:0:1,'.',y0:0:1,')');

if graf then writeln ('Принадлежит затрихованной области')

else writeln ('НЕ принадлежит заштрихованной области');

end.

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

Программы №1.a

Вычислим значение функции y=x+1/(x*x*x-x)-2 при x=0.675

y=-4.05

y1=16.37

|y^2|=16.37

Программы №1.b

точка с координатами M(1.5.0.5)

Принадлежит заштрихованной области

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

Решение уравнение с использованием условного оператора

Вариант №2

Постановка задачи.

Составить программу решения системы неравенств:

Напечатать исходные данные и результаты.

Решение.

Текст программы № 2

program lab2 {вариант 2};

var a,b,c,d,x1,x2:real;

begin

writeln('решим уравнение a*x*x+b*x+c=0');

writeln('введите a=',' b=',' c=');

readln(a,b,c);

d:=b*b-4*a*c;

if d<0 then

writeln('решений нет') else

begin

x1:=(-b+sqrt(d))/(2*a);

x2:=(-b-sqrt(d))/(2*a);

writeln('Ответ: x1=',x1:0:2,' x2=',x2:0:2);

end;

end.

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

Программы №2

решим уравнение a*x*x+b*x+c=0

введите a= b= c=

2

5

3

Ответ: x1=-1.00 x2=-1.50

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

Построение таблиц формул

Вариант №2

Постановка задачи.

Составить программу вычисления значений функции sin(x) на отрезке [A, B] в точках Xi = A + iH, где H = (B - A)/M, M — заданное целое число.

Значение шага Н должно вычисляться один раз.

При A=/4, B=/2, M=15.

Решение.

Текст программы № 3

program lab3 {вариант 2};

var a,b,m,h,x:real;

i:integer;

begin

a:=Pi/4; b:=Pi/2; m:=15;

h:=(b-a)/m;

x:=a;

for i:=1 to 16 do

begin

writeln('sin(',x:5:4,')=',(sin(x)):5:4);

x:=x+h;

end;

end.

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

Программы №3

sin(0.7854)=0.7071

sin(0.8378)=0.7431

sin(0.8901)=0.7771

sin(0.9425)=0.8090

sin(0.9948)=0.8387

sin(1.0472)=0.8660

sin(1.0996)=0.8910

sin(1.1519)=0.9135

sin(1.2043)=0.9336

sin(1.2566)=0.9511

sin(1.3090)=0.9659

sin(1.3614)=0.9781

sin(1.4137)=0.9877

sin(1.4661)=0.9945

sin(1.5184)=0.9986

sin(1.5708)=1.0000

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

Организация циклов в программе

Вариант №2

Составной оператор — это последовательность произвольных операторов программы, заключенная в операторные скобки — зарезервированные слова BEGIN ... END. Характер входящих операторов в данный момент может быть различным. Также ТР допускает любую глубину вложенности составных операторов.

Условный оператор имеет следующий вид:

IF <условие> THEN <оператор1> ELSE <оператор2>,

где IF, THEN, ELSE — зарезервированные слова;

<условие> — выражение логического типа;

<оператор1>, <оператор2> — операторы языка ТР.

Выполнение этого оператора начинается с проверки условия. Если оно истинно (=TRUE), то выполняется <оператор1>,

иначе (значение выражения = FALSE) выполняется <оператор2>.

Часть ELSE может быть опущена, тогда оператор выполняется только при значении выражения =TRUE, иначе он пропускается.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]