Программирование матричных операций - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Помогите, пожалуйста, гуманитарию написать программу 1) Рассчитать элементы квадратной матрицы A = (aij ), i,j = 1,2,...,n по заданной формуле; 2) Вычислить элементы вектора-столбца X = (xi), i = 1,2,...,n по заданному правилу; 3) Вычислить произведение матрицы А на столбец Х; 5) вычисления значения Y по заданной формуле. 1 пункт вот:
А дальше как?

Решение задачи: «Программирование матричных операций»

textual
Листинг программы
uses crt;
const nmax=10;{думаю хватит}
var a:array[1..nmax, 1..nmax] of real;{матрица}
    x,ax:array[1..nmax] of real;{векторы столбцы х и А*х}
    n,i,j,f:integer;
    min,y:real;
begin
clrscr;
write('Введите размер матрицы и вектора n=');
readln(n);
for i:=1 to n do
for j:=1 to n do
a[i,j]:=(n-1)*sin(i*j)/cos(i*j);
f:=1;
for i:=1 to n do
 begin
  min:=a[i,1];
  f:=f*i;
  for j:=1 to n do
  if a[i,j]/f<min then min:=a[i,j]/f;
  x[i]:=min;
 end;
write('Матрица A');
writeln('Вектор X':n*7);
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=(n-1)*sin(i*j)/cos(i*j);
    write(a[i,j]:7:2);
   end;
  writeln(x[i]:9:2);
 end;
for i:=1 to n do
 begin
  ax[i]:=0;
  for j:=1 to n do
  ax[i]:=ax[i]+a[i,j]*x[j];
 end;
writeln('Вектор A*X');
for i:=1 to n do
writeln(ax[i]:9:2);
y:=0;
for i:=1 to n do
y:=y+x[i]*x[n-i+1];
write('y=',y:0:2);
readln;
end.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.231 из 5
Похожие ответы