АлияКью
21.05.2021 21:40

Составить блок-схему алгоритма и программу на Паскале для вычисления функций z. Ввести код в программу Паскаль, вычислить значения функции и проверить ее для самостоятельно выбранных трех пар значений переменных X и Y. На проверку нужно прислать код программы и результат работы в виде скриншота.


Составить блок-схему алгоритма и программу на Паскале для вычисления функций z. Ввести код в програм

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
DemonOfFood
24.08.2022 20:40
1. Создаем файл MatInt.pas следующего содержания:

// PascalABC.NET 3.1, сборка 1230 от 27.04.2016
unit MatInt;

interface

type
  Matrix=array[,] of integer;

function MatCreate(m,n:integer):Matrix;
procedure MatPrint(a:Matrix;w:integer);
procedure MatMax(a:Matrix;var x,imax,jmax:integer);

implementation

function MatCreate(m,n:integer):Matrix;
// создает матрицу и инициализирует её нулями
begin
  SetLength(Result,m,n);
end;

procedure MatPrint(a:Matrix;w:integer);
// выводит матрицу, отводя w позиций под элемент
begin
  var n:=Length(a,1)-1;
  for var i:=0 to Length(a,0)-1 do begin
    for var j:=0 to n do Write(a[i,j]:w);
    Writeln
    end
end;

procedure MatMax(a:Matrix;var x,imax,jmax:integer);
// возвращает значение максимального элемента и его координаты
begin
  imax:=0; jmax:=0;
  var n:=Length(a,1)-1;
  for var i:=0 to Length(a,0)-1 do
    for var j:=0 to n do
      if a[i,j]>a[imax,jmax] then (imax,jmax):=(i,j);
  Inc(imax); Inc(jmax); x:=a[imax-1,jmax-1]
end;

end.

2. Компилируем файл, получая библиотеку MatInt.pcu

3. Пишем основную программу:

// PascalABC.NET 3.1, сборка 1230 от 27.04.2016
uses
  MatInt;
begin
  var a:=MatCreate(5,8);
  var n:=Length(a,1)-1;
  for var i:=0 to Length(a,0)-1 do
  for var j:=0 to n do a[i,j]:=Random(-50,50);
  MatPrint(a,4);
  var irow,jcol,max:integer;
  MatMax(a,max,irow,jcol);
  Writeln('Максимальный А[',irow,',',jcol,']=',max)
end.

Тестовое решение
  11 -16  11  16  23  -4 -17 -34
 -12  -5  20   9  16  47  43  17
 -46 -26  47 -40  12 -31 -25  13
  -7  39 -20  26  11 -19  32 -15
  45 -10 -28  31 -46 -29 -29 -22
Максимальный А[2,6]=47
0,0(0 оценок)
Ответ:
Ksu2k17
12.02.2023 15:57
Var a:array of array of integer;
c:array of array of integer;
ma:array of array of integer;
i,j,n:integer;
begin;
randomize;
readln(n);
setlength(a,n+1); //задаём размерность динамических массивов
setlength(c,n+1);
setlength(ma,n+1);
for i:=1 to n do
begin;
setlength(a[i],n+1);
setlength(c[i],n+1);
setlength(ma[i],n+1);
end;

writeln('Matrix A:');   //генерируем массив псеводслучайных чисел
for i:=1 to n do begin;
 writeln;
  for j:=1 to n do
   begin;
    a[i,j]:=random(10);
    write(a[i,j]:4);
   end;
 end;
writeln;

writeln('Matrix C:'); //аналогично
for i:=1 to n do
 begin;
 writeln;
  for j:=1 to n do
   begin;
    c[i,j]:=random(10);
    write(c[i,j]:4);
   end;
 end;

for i:=1 to n do     //сохраняем матрицу C для транспонации
  for j:=1 to n do
    ma[i,j]:=c[i,j];
    writeln;

writeln('Transpose matrix C:'); //транспонируем C
for i:=1 to n do
 begin;
  writeln;
   for j:=1 to n do
    begin;
     c[i,j]:=ma[j,i];
     write(c[i,j]:4);
    end;
 end;

writeln;
writeln('Final matrix:'); // получаем финальную матрицу
for i:=1 to n do
 begin;
  writeln;
   for j:=1 to n do
    begin;
     ma[i,j]:=2*c[i,j]*a[i,j];
{по свойству дистрибутивности матриц С(A+A)=C*A+C*A=2*C*A}
     write(ma[i,j]:4);
    end;
 end;
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота