close

Вход

Забыли?

вход по аккаунту

?

Защита 7

код для вставкиСкачать
 Лабораторная работа № 7 Проверил: Шилин А.С.
Вариант 23 Выполнил: Андреев Евгений
Составить блок схему алгоритма и программы на языках Бейсик и Паскаль заполнения массива F(M, M) значениями функции f(x, y) так, что F(k, n) = f(xk, yn), где xk = a + bk, yn = c + dn; k, n = 1, 2,..., M. Результат вывести на монитор в виде матрицы.
23. В массиве F(M, M) найти все значения функции, отличающиеся от заданного значения больше, чем на заданную величину δ, и указать соответствующие значения аргументов. f(x, y) ==(tgx - 3sin3x)·cos9y; a = 0.8; b = 0.03; c = 3.1; ; M = 8
TP labrab7
{F[k,n] - функция, x_k, y_n - значения функции,
Q - заданная величина, z - заданное значение
A,b,c,d - переменные, flag - флаг.}
Program Labrab7;
const pi=3.14;
a=0.8;
b=0.03;
c=3.1;
d=pi/24;
m=8;
Type Fun=Array[1..m, 1..m] of Real;
Var f: Fun;
x_k,y_n,z,q: Real;
k,n: Integer;
flag:boolean;
Begin
for k:=1 to m do
begin
x_k:=a+b*k;
for n:=1 to m do
begin
y_n:=c+d*n;
F[k,n]:=(sin(x_k)/cos(x_k)-3*sin(3*x_k))*cos(9*y_n);
end;
end;
Writeln(' Полученная матрица : ');
for k:=1 to m do
begin
for n:=1 to m do
Write(f[k,n]:6:2);
Writeln;
end;
Writeln;
Write(' Введите z: ');
readln(z);
write(' Введите q: ');
readln(q);
Writeln;
flag:=true;
for k:=1 to m do
for n:=1 to m do
if abs(f[k,n]-z)>q then
begin
writeln('Искомое значение: ',f[k,n]:3:2);
writeln('Аргументы: ',k,' ',n);
writeln;
flag:=false;
end;
if flag then writeln ('Нет значений ');
readln
End.
QBasic labrab7
REMF[k,n] - функция.
REM x_k, y_n - значения функции.
REM Q - заданная величина.
REM z - заданное значение.
REM A,b,c,d - переменные. REM flag - флаг.}
CLS
CONST pi = 3.14, a = .8, b = .03, c = 3.1, d = pi / 24, m = 8
DEFSNG X
DEFSNG Y
DEFSNG F
DEFINT K
DEFINT N
DEFSNG Q
DEFSNG Z
DIM flag AS INTEGER
DIM f(m, m) AS SINGLE
FOR k = 1 TO m
xk = a + b * k
FOR n = 1 TO m
yn = c + d * n
f(k, n) = (TAN(xk) - 3 * SIN(3 * xk)) * COS(9 * yn)
NEXT n
NEXT k
PRINT " Полученная матрица:"
PRINT
FOR k = 1 TO m
FOR n = 1 TO m
PRINT USING "###.##"; f(k, n);
NEXT n
PRINT
NEXT k
PRINT
INPUT "Введите z ", z
INPUT "Введите q ", q
PRINT
flag = 1
FOR k = 1 TO m
FOR n = 1 TO m
IF ABS(f(k, n) - z) > q THEN
PRINT USING "Искомое значение ###.##"; f(k, n)
PRINT "Аргументы: "; k; n
PRINT
flag = 0
END IF
NEXT n
NEXT k
IF flag THEN PRINT "Нет значений"
END
Документ
Категория
Рефераты
Просмотров
27
Размер файла
18 Кб
Теги
защита
1/--страниц
Пожаловаться на содержимое документа