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

Зразок виконання практичних завдань самостійної роботи

Запис арифметичних виразів мовою програмування Паскаль

1.

SQRT(ABS(X-A*SQR(B)))/(EXP(3*LN(C))-SIN(X)+COS(X))

2.

EXP(SIN(3*X)/COS(3*X))-ARCTAN(EXP(1/5*LN(1+2*X)))+LN(X)

3.

EXP(2*X)-EXP(1/4*LN(1+3*X)))+SQR(X)/(SIN(X)/COS(X))

Програмування лінійного алгоритму в Паскалі

1. Скласти програму обчислення значення многочлена прямим алгоритмом і за схемою Горнера при х=0,25

y1=3x4+2x2+x+7

y2=(((3x+0)x+2)x+1)x+7

PROGRAM L1;

CONST

X=0.25;

VAR

Y1,Y2:REAL;

BEGIN

Y1:=3*EXP(4*LN(X))+2*SQR(X)+X+7;

Y2:=(((3*X+0)*X+2)*X+1)*X+7;

WRITELN ( ‘значение Y1=’,Y1:6:3, ‘значение Y2=’,Y2:6:3)

END.

2. Скласти програму обчислення значення функції:

, де х – дійсне число, а,с – цілі числа.

/*вычисление значения функции*/

PROGRAM L2;

VAR

A,C:INTEGER;

X,Y:REAL;

BEGIN

READLN (X,A,C);

Y:=SQRT(ABS(X-A*SQR(X)+C))/LN(ABS(X+EXP(4*LN(X))))–EXP(X-1);

WRITELN (‘значение функции Y=’,Y:10:4)

END.

Програмування розгалуженого алгоритму в Паскалі.

1. Скласти програму обчислення значень функції:

ln/x/ , якщо х≤0

y= ex+1-sinx , якщо 0х10

x2 +cosx , якщо х10

де: х – ціле число.

/*вычисление значения функции*/

PROGRAM R1;

VAR

X:INTEGER;

Y:REAL;

BEGIN

WRITELN (‘Bведите значение Х’);

READLN (X);

IF X<=0

THEN Y:=LN(ABS(X))

ELSE IF X>=10

THEN Y:= SQR(X)+COS(X)

ELSE Y:= EXP(X+1)-SIN(X);

WRITELN (‘значение Y=’,Y:8:4)

END.

2. Скласти програму визначення мінімального і максимального з трьох цілих чисел x,y,z .

/*поиск экстремальных значений*/

PROGRAM R2;

VAR

X,Y,Z,MIN,MAX:INTEGER;

BEGIN

WRITELN (‘введите числа X,Y,Z’);

READLN (X,Y,Z);

IF X<Y THEN MIN:=X ELSE MIN:=Y;

IF Z<MIN THEN MIN:=Z;

IF X>Y THEN MAX:=X ELSE MAX:=Y;

IF Z>MAX THEN MAX:=Z;

WRITELN (‘значение MAX=’,MAX);

WRITELN (‘значение MIN=’,MIN)

END.

3. Скласти програму обчислення значень функції, використовуючи оператор варіанту:

x3, при k=4

ex-a2+b, при k=5

F= , при k=6 де: a,b – цілі числа, х – дійсне число.

ln/x/, при k=7

sin2x+cosx2, при k=8

/*вычисление значения функции*/

PROGRAM R3;

VAR

A,B: INTEGER;

X, F:REAL;

K:4..8;

BEGIN

WRITELN (‘введите числа X,A,B’);

READLN (X,A,B);

WRITELN (‘введите значение селектора K’);

READLN (К);

CASE K OF

4:F:=EXP(3*LN(X));

5:F:=EXP(X)-SQR(A)+B;

6:F:=SQRT(X+A*B);

7:F:=LN(ABS(X));

8:F:=SQR(SIN(X))+COS(SQR(X))

END;

WRITELN (‘при селекторе k=’,К);

WRITELN (‘значение функции F=’,F:10:5)

END.

Програмування циклічного алгоритму в Паскалі.

1. Скласти програму обчислення значення суми числового ряду:

PROGRAM SUM;

VAR

X,Y,S1,S2,S:INTEGER;

BEGIN

S1:=0; S2:=0;

FOR X:=10 TO 20 DO

S1:=S1+X;

FOR Y:=20 DOWNTO 10 DO

S1:=S1+Y;

S:=S1+S2;

WRITELN (‘значение суммы S = ’,S)

END.

2. Скласти програму табулювання функції у дійсного аргументу х на відрізки

(-20,20) з кроком 0,5, використовуючи оператор циклу з передумовою:

cos(xb)2 , якщо -20x0

y= , якщо 0х20

де: a,b – цілі числа.

PROGRAM TAB;

CONST

X0=-20; XN=20; HX=0,5;

VAR

X,Y:REAL;

A,B:INTEGER;

BEGIN

READLN (A,B);

X:=X0;

WHILE X<=XN DO

BEGIN

IF X<=0

THEN Y:=COS(SQR(X*B))

ELSE Y:=SQRT(A+B*EXP(3*LN(X)));

WRITELN (‘при x=’,X, ‘y=’Y);

X:=X+HX

END

END.

Опрацювання масивів даних у Паскалі.

1. Скласти програму розрахунку кількості позитивних та від’ємних елементів масиву дійсних чисел С(с12,...,с75).

PROGRAM PR1;

VAR

C:ARRAY [1..75] OF REAL;

I,POL,OTR:INTEGER;

BEGIN

POL:=0; OTR:=0;

FOR I:=1 TO 75 DO

BEGIN

READLN (C[I]);

IF C[I]>=0

THEN POL:=POL+1

ELSE OTR:=OTR+1

END;

WRITELN (‘кол-во положительных элементов=’,POL);

WRITELN (‘кол-во отрицательных элементов=’,OTR)

END.

2. Скласти програму визначення максимального елемента масиву цілих чисел В(b1,b2,...,b50) та його порядкового номеру.

PROGRAM PR2;

VAR

B:ARRAY [1..50] OF INTEGER;

I,MAX,N:INTEGER;

BEGIN

FOR I:=1 TO 50 DO

READLN (B[I]);

B[1]:=MAX;

N:=1;

FOR I:=1 TO 50 DO

IF B[I]>=MAX

THEN BEGIN

B[I]:=MAX;

N:=I

END;

WRITELN (‘максимальный элемент MAX=’,MAX);

WRITELN (‘порядковый номер N=’,N)

END.

3. Скласти програму знаходження суми двох матриць А(53) та В(53) і отриману матрицю помножити на дійсне число K. Елементи матриці – цілі числа.

PROGRAM MATR;

TYPE

MATRA=ARRAY [1..5,1..3] OF INTEGER;

MATRB=ARRAY [1..5,1..3] OF INTEGER;

MATRC=ARRAY [1..5,1..3] OF INTEGER;

MATRD=ARRAY [1..5,1..3] OF REAL;

VAR

A:MATRA; B:MATRB; C:MATRC; D:MATRD;

K:REAL;

I,J:INTEGER;

BEGIN

READLN (K);

FOR I:=1 TO 5 DO

FOR J:=1 TO 3 DO

READLN (A[I,J]);

FOR I:=1 TO 5 DO

FOR J:=1 TO 3 DO

READLN (B[I,J]);

FOR I:=1 TO 5 DO

FOR J:=1 TO 3 DO

C[I,J]:=A[I,J]+B[I,J];

FOR I:=1 TO 5 DO

FOR J:=1 TO 3 DO

D[I,J]:=C[I,J]*K;

FOR I:=1 TO 5 DO

WRITELN (C[I,1]:8,C[I,2]:8, C[I,3]:8);

FOR I:=1 TO 5 DO

WRITELN (D[I,1]:8, D[I,2]:8, D[I,3]:8)

END.