| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Fortran > [Pro] СЛАУ |
| Автор: xxxLORDIxxx 1.12.2007, 14:54 |
| Здравствуйте высокоувожаемые программисты!!! Помогите решить такую проблему! дана матрица её надо решить( Найти решение системы линейных алгебраических уравнений Ax=b.) Матрица А Вектор B n 0 4 0 0 2 0 0 1 0 3 4 n 0 4 0 0 2 0 0 1 3 0 4 n 0 4 0 0 2 0 0 3 0 0 4 n 0 4 0 0 2 0 3 2 0 0 4 n 0 4 0 0 2 n 0 2 0 0 4 n 0 4 0 0 n 0 0 2 0 0 4 n 0 4 0 3 1 0 0 2 0 0 4 n 0 4 3 0 1 0 0 2 0 0 4 n 0 3 0 0 1 0 0 2 0 0 4 n 3 n=13 Скрипт для проги такой!!! Real*4 A(10,10) ,B(10),X(10) Open(1,File='DAT.txt') Open(2,File='RES.txt') Read(1,1) ((A(i,j), j=1,10) , B(i), i=1,10) 1 Format(/(10F5.1,F6.1)) Write(2,2) ((A(i,j), j=1,10),B(i), i=1,10) 2 Format(22x,'матрица А',19x,'Вектор B'/(10f5.1,f6.1)) Call Gauss_G(10,A,B,X,*16) Write(2,14) (x(i), i=1,10) 14 Format(/11x,'Метод Гаусса с выб.Гл.Эл.:' * 'Вектор решения X'/(5F12.7)) Go to 20 16 Write(*,18) Write(2,18) 18 Format(/'*** Метод Гаусса с выб.гл.эл.:' * 'система не имеет решения!!! ***') 20 Close(1) Close(2) END После нажатия GO (start) выдаёт: LNK2001: unresolved external symbol _GAUSS_G@16 fatal error LNK1120: 1 unresolved externals Error executing link.exe. Если подключаю бибилиотеку Mat_lab.lib то выдаёт: inking... LINK : warning LNK4098: defaultlib "libcd.lib" conflicts with use of other libs; use /NODEFAULTLIB:library mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow mat_lab.lib(Lab3.obj) : error LNK2001: unresolved external symbol _for_check_mult_overflow Debug/LR3.exe : fatal error LNK1120: 1 unresolved externals Error executing link.exe. LR3.exe - 16 error(s), 1 warning(s) Что делать я не знаю ,помогите пожалуйста дайте совет как поступить!!! спасибо большое!!! |
| Автор: Wowa 2.12.2007, 01:36 |
| Модератор: Название темы должно отражать ее суть! Правила форума: http://forum.vingrad.ru/index.php?act=boardrules |
| Автор: popovda 4.12.2007, 09:06 | ||
| Обратите внимание на ошибку "unresolved external symbol _GAUSS_G@16" у вас компилятор не знает такой внешней функции. Значит надо подрубить ее. Ну, допустим, вы ее подрубаете и у вас начинают ползти бяки такого же плана - неизвестная функция, значит надо еще какие-то библиотеки подключать. Не мучайтесь. Если работаете под CVF или IFC, то подключите IMSL и затем решите ваше злосчастное уравнение вот так, например: X = matmul(inverse(A),B); Или напишите свой метод Гаусса, или проще и надежнее - методом релаксации:
|