Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2015, 19:13   #1
ericolorrg
Новичок
Джуниор
 
Регистрация: 16.11.2015
Сообщений: 1
По умолчанию

1) рассчитать элементы квадратной матрицы A = (aij ), i,j = 1,2,...,n по заданной формуле;
2) сформировать из матрицы A элементы вектора X = (xi), i = 1,2,...,n по заданному правилу;


Вроде что-то сам начал, дальше нуждаюсь в помощи
Код:
program Lab05;

const
  n = 5;

var
  i, j, k: Integer;
  A: Array [1..n, 1..n] of Real;
Procedure Matrica(n:integer; var A:matr);
begin
  //Вычисление элементов матрицы
  for j := 1 to n do
    for i := 1 to n do
    begin
      A[j, i] := (2.2+j*sqrt(8.4*i+1))/(power(10,ln(i*j))+5);
    end;
  //Выводим матрицу
  writeln('Matrix A');
  for j := 1 to n do
  begin
    for i := 1 to n do
      Write(A[j, i]:12:5);
    Writeln;
  end;

Последний раз редактировалось Stilet; 16.11.2015 в 19:24.
ericolorrg вне форума Ответить с цитированием
Старый 16.11.2015, 19:47   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну для начала могу предложить такую схему:
Код:
program Project1;

type arr=array[1..3,1..3] of double;
var a,b:arr;

  function Aij(i,j:integer):Double;
  begin
    Aij:=(2.2+j*sqrt(8.4*i+1))/(exp(10*ln(i*j))+5);
  end;
  Function Xi(i,n:integer;bij:arr):Double;
  begin
    Xi:=0; while n>0 do begin Xi:=Xi+ln(bij[i,n]); dec(n); end;
  end;

  var i,j:integer; sum:Double;
begin
  Writeln('A');
  for i:=1 to 3 do begin
    for j:=1 to 3 do begin
      a[i,j]:=Aij(i,j);
      if i=1 then sum:=sum+a[i,j];
      Write(a[i,j]:10:2);
    end; writeln;
  end;

  Writeln('B');
  for i:=1 to 3 do begin
    for j:=1 to 3 do begin
      if i=j then b[i,j]:=sum else b[i,j]:=a[i,j];
      Write(b[i,j]:10:2);
    end; writeln;
  end;


    Writeln('X');
    for i:=1 to 3 do begin
        Write(Xi(i,3,b):10:2);
    end;writeln;
  readln;
end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разработать программу. Буду очень благодарен! acd Visual C++ 5 17.07.2012 18:16
нужна помошь(буду благодарен очень) loloverg Помощь студентам 2 17.05.2010 19:19
2 задачи по файлам. Буду очень благодарен! RomT24 Помощь студентам 2 11.03.2009 11:40