Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по программированию.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
682.73 Кб
Скачать

Экзаменационный вопрос № 18. Программирование линейных вычислительных процессов

Для вычислений на языке Turbo – Pascal можно использовать стандартные или выраженные через таковые функции и процедуры: ABS(X) — |x|; SQR(X) — x2 ; SQRT(X) — ; LN(X) — ln x; LN(X)/ LN(N) — lognx; LN(X)/ LN(10 — lg x; EXP(X) — ex; EXP(n*LN(X)) — xn ; SIN(X) — sin x ; COS(X) —cos x ; SIN(X)/COS(X) — tg x;COS (X)/SIN (X) — сtg x ; ARCTAN(X) — arctg x; PI — пи; RANDOM(X) — случайное число из диапазона от 0 до x; RANDOMIZE — обеспечение несовпадений случайных чисел; TRUNC(X) — отбрасывание дробной части; ROUND(X) — округление до ближайшего целого; DIV — деление нацело без остатка; MOD — нахождение остатка от деления.

Задание. По заданным формулам и наборам исходных данных составить программу для вычисления значений переменных. Вывод осуществлять с их именами.

Исходные данные. X = 3,246; Y = 7,572 4.

.

Код программы.

PROGRAM primer2;

USES

CRT;

CONST {блок описания констант}

X = 3.246;

Y = 7.5724;

VAR {блок описания переменных}

A,B : real;

BEGIN

ClrScr;

{блок вычислений}

A:=2*LN(X+3*Y)/(ABS(EXP(5*LN(X))))+LN(Y)/LN(3);

B:=SIN(5*A–Y)/COS(5*A–Y)/EXP(X);

{блок вывода результата}

WRITELN('Значение переменной A: ',A:7:4);

WRITE('Значение переменной B: ',B:7:4);

READLN;{задержка экрана}

END.

Экзаменационный вопрос № 19. Программирование разветвляющихся вычислительных процессов с использованием if -then –else

В программах часто приходится выбирать дальнейший путь их выполнения в зависимости от получаемых данных. В Turbo - Pascal для этого имеются две разновидности операторов — условный оператор и оператор варианта. Условный оператор в общем виде:

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

Здесь <условие> — выражение логического типа; <оператор1>, <оператор2> — любой оператор языка Turbo Pascal (простой или составной). При этом <оператор1> выполняется, если справедливо <условие> (т. е. принимает значение «истина»), а <оператор2> — если нет ( «ложь»).

Задание №1. Составить программу для вычисления значений функции Z = X + Y. X и Y.

И сходные данные.

2, если R < S, 27, если S + R >= X,

X = Z2, если R = S, Y =

2Z, если R > S; 5, если S + R < X;

S = 70, R = 3.

Код программы.

PROGRAM primer1; CONST {блок описания констант}

S = 70; R = 3;

VAR {блок описания переменных}

X,Y,Z : REAL;

BEGIN

IF R<S

THEN X:=2 {вычисление значения функции X}

ELSE

IF R=S

THEN X:=SQR(Z)

ELSE X:=2*Z;

IF S+R>=X

THEN Y:=27{вычисление значения функции Y}

ELSE Y:=5;

Z:=X+Y; {вычисление значения функции Z}

WRITELN('При X = ',X:6:3,', Y = ',Y:6:3,', Z = ', Z:6:3); {блок вывода результата}

END.