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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2014, 06:54   #1
ironhide8
 
Регистрация: 26.05.2014
Сообщений: 4
По умолчанию Метод гаусса.

Очень нужна ваша помощь,зачет проваливается((Нужно реализовать метод гаусса,вот он-
Код:
program Gayss;
const
  n = 3;

type
  matrix = array[1..n, 1..n] of real;
  vector = array[1..n] of real;

 procedure LoadFromFile(var M: matrix; var b: vector);
var
 x, y: Integer;
 val: Real;
 input: text;
begin
 Assign(input, 'matrix.txt');
 Reset(input);
 for y := 1 to n do
  for x := 1 to n do begin
   Readln(input, val);
   M[y, x] := val;
  end;
 for x := 1 to n do begin
   Readln(input, val);
   b[x] := val;
  end;
 Close(input);
end;

procedure Print(const m: matrix);
var
 x, y: Integer;
begin
 for y := 1 to n do begin
  for x := 1 to n do begin
   Write(M[y, x], ' ');
  end;
  Writeln;
 end;
end;
var
  i, j, k: integer;
  h: real;
  a: matrix;
  b: vector;
  x: vector;
begin
   LoadFromFile(a, b);
 Print(a);
  for i := 1 to n do
  begin
    for j := i + 1 to n do
    begin
      a[j, i] := -a[j, i] / a[i, i];
      for k := i + 1 to n do a[j, k] := a[j, k] + a[j, i] * a[i, k];
      b[j] := b[j] + a[j, i] * b[i];
    end;
  end;
  x[n] := b[n] / a[n, n];
  for i := n - 1 downto 1 do
  begin
    h := b[i];
    for j := I + 1 to n do
      h := h - x[j] * a[i, j];
    x[i] := h / a[i, i];
  end;
  writeln('Ðåøåíèå ñèñòåìû:');
  for i := 1 to n do
    writeln('X(', i, ')=', x[i]:3:5);

end.
и матрица в текстовом файле-
Код:
2.16
1.96
1.56
3.55
3.23
2.78
4.85
4.47
3.97
13.16
21.73
29.75
нужно добавить вектор невязки и обратную матрицу,определитель,умножение исходной на обратную,прошу помогите!может у кого уже есть готовая.

Последний раз редактировалось Serge_Bliznykov; 26.05.2014 в 08:42.
ironhide8 вне форума Ответить с цитированием
Старый 26.05.2014, 07:08   #2
ironhide8
 
Регистрация: 26.05.2014
Сообщений: 4
По умолчанию

помогите!эту программу возможно вообще написать?мне кажется она анриал((п.с.я в долгу тоже не останусь.
ironhide8 вне форума Ответить с цитированием
Старый 28.05.2014, 14:13   #3
ironhide8
 
Регистрация: 26.05.2014
Сообщений: 4
По умолчанию

эхехе...столько просмотров и не капельки помощи((похоже никто на этом сайте не в силах мне помочь((
ironhide8 вне форума Ответить с цитированием
Старый 28.05.2014, 16:46   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Код для обратной матрицы, определителя и умножения матриц легко гуглится.

Цитата:
столько просмотров и не капельки помощи((похоже никто на этом сайте не в силах мне помочь((
Вы тоже людей поймите. Вы взяли чей-то, не разбираясь плюнули на форум и хотите получить готовый код для ссвоей задачи... Причем не 2 * 2

Цитата:
п.с.я в долгу тоже не останусь.
Ну дык с этого и стоило начинать, раз сами делать не хотите. Раздел фриоанса и будет вам усе.
p51x вне форума Ответить с цитированием
Старый 30.05.2014, 06:33   #5
ironhide8
 
Регистрация: 26.05.2014
Сообщений: 4
По умолчанию

так может договоримся?
ironhide8 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Метод Гаусса Symple me Общие вопросы C/C++ 2 14.10.2012 10:31
метод простых операций и метод гаусса зейделя tarasman11 Паскаль, Turbo Pascal, PascalABC.NET 1 23.09.2012 14:46
Метод Гаусса в С++. marko) Общие вопросы C/C++ 1 22.03.2010 16:49
Безумно сложные задачки!!!! Метод Гаусса, итераций, метод половинного деления, задача Коши и т.д. Хомяк!!!!! Помощь студентам 4 08.07.2009 10:08
Метод Гаусса IgorKr Помощь студентам 10 03.02.2008 11:28