Метод Ньютона с апроксимацией производной, фортран |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
Метод Ньютона с апроксимацией производной, фортран |
-Altair- |
18.12.2005 20:35
Сообщение
#1
|
Гость |
вот программа, толбко что написал:
Код program NewtonM real function f (x) f=x-sin(x) - 0.025 return end real function searchnewtonm (a, e, h) x = a fx = f(x) y = fx*h/(f(x+h)-fx) do while (abs(y)>e) x = x-y fx = f(x) y = fx*h/(f(x+h)-fx) end do searchnewtonm = x; return end write(*,*) 'Enter A,E,H ... ' read(*,*) a,e,h write(*,*) searchnewtonm(a,e,h) write(*,*) 'end' end program NewtonM консольный проект для visual fortran Все сделал в соответствии с документацией по языку... но не компилируется и выдает тупейшие ошибки. Что то с синтаксисом не так.. Цитата C:\Program Files\Microsoft Visual Studio\MyProjects\NewtonM\NewtonM.f90(19) : Error: This statement is positioned incorrectly and/or has syntax errors. real function F(x) --------^ C:\Program Files\Microsoft Visual Studio\MyProjects\NewtonM\NewtonM.f90(21) : Error: A RETURN statement is invalid in the main program. return ----------------^ C:\Program Files\Microsoft Visual Studio\MyProjects\NewtonM\NewtonM.f90(33) : Error: Syntax error, found '=' when expecting one of: DO FORALL SELECT SELECTCASE WHERE IF SearchNewtonM := x; -----------------------^ C:\Program Files\Microsoft Visual Studio\MyProjects\NewtonM\NewtonM.f90(42) : Error: This name does not match the unit name. [NEWTONM] end program NewtonM --------------------^ Error executing df.exe. NewtonM.exe - 4 error(s), 0 warning(s) Помогите найти ошибки... спасибо! Сообщение отредактировано: Altair - 18.12.2005 20:41 |
Гость |
18.12.2005 20:54
Сообщение
#2
|
Гость |
Ага все выяснил... надо функции ДО слова program описывать..
нигде в книге ни слова об этом... мда... |
Гость |
18.12.2005 21:03
Сообщение
#3
|
Гость |
Код real function f (x) f=x-sin(x) - 0.025 return end real function searchnewtonm (a, e, h) x = a fx = f(x) y = fx*h/(f(x+h)-fx) do while (abs(y)>e) x = x-y fx = f(x) y = fx*h/(f(x+h)-fx) end do searchnewtonm = x; return end program NewtonM write(*,*) 'Enter A,E,H ... ' read(*,*) a,e,h write(*,*) searchnewtonm(a,e,h) end program NewtonM Все, это итоговый вариант, работающий, если кому надо... |
Текстовая версия | 21.09.2024 8:12 |