|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
10.03.2009, 21:49 | #1 |
Новичок
Джуниор
Регистрация: 10.03.2009
Сообщений: 1
|
Задача на систему уравнений! Как решить?
Задача с физическим смыслом, но программистам он не нужен. Суть -задана система уравнений:
T1-T0=-Ph/Fl; T2-2T1+T0=ahT1^5; T3-2T2+T1=ahT2^5; ...........................; T(i+1)-2T(i)+T(i-1)=ahT(i)^5; ............................. T(n)-2T(n-1)+T(n-2)=ahT(n)^5; В общем случае задача легкая если надо найти Tn и дано T0. Но как решать, если дано Tn, а надо найти T0. Помогите плиз кто может(хотя бы основную часть подскажите как делать). Последний раз редактировалось DjSlon84; 11.03.2009 в 10:43. |
11.03.2009, 17:09 | #2 |
Пользователь
Регистрация: 10.03.2009
Сообщений: 31
|
может вот это как-то поможет..
Блок нахождения корней системы алгебраических уравнений Function Slau(A: Array of tip; Var x: Array of tip): Boolean; Var g, h, i, j, k, m, n, p: integer; t: real; begin n:= Length(x); h:= n+1; m:= h*n –1; i:=0; Slau:= false; If (Length(A)<> m+1) then Exit; For p:= n downto 1 do begin j:= i; k:=i+h; While k < m do begin If A[k]>A[j] then j:=k; k:= k+h end; If Abs(A[j])<1E–5 then Exit; If j > i then For k:= 0 to p do begin t:=A[i+k]; A[i+k]:= A[j+k]; A[j+k]:=t end; j:= i+h; While j < m do begin t:= A[j]/A[i]; For k:= 0 to p do A[j+k]:= A[j+k]-t*A[i+k]; j:= j+h end; i:= i+h+1 end; i:= n–1; Slau:= true; Repeat x[i]:= A[m]/A[(h+1)*i]; k:= n; g:= n-i; For j:= 1 to i do begin A[k]:= A[k] – A[k-g]*x[i]; k:= k+h end; Dec(i); m:= m – h Until i < 0 end; Коэффициенты системы задают в одномерном массиве A, размещая их строка за строкой. Если система не имеет решения или неверно заполнен массив A, функция Slau возвращает false, иначе — true, корни — в массиве x. Опишем массив x из трех вещественных элементов и решим систему уравнений, обратившись к блоку Slau: If Slau ( [1,–2,1,3, 2,–1,1,7, 1,–1,2,6], x) then Memo1.text:= Format (‘Корни системы: %4.1f %4.1f %4.1f, [x[1],x[2],x[3]] ) Else Memo1.text:= ‘Решения нет’; |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задача. Как решить ? | littlecoder | Общие вопросы Delphi | 12 | 16.12.2008 01:13 |
решить систему методом Зейделя на с++ | Юлёк | Фриланс | 3 | 28.05.2008 19:59 |
Решить систему линейных уравнений, которая содержит до 200 переменных, методом Гаусса. | Etlau | Помощь студентам | 5 | 05.05.2008 07:50 |