IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Метод Ньютона с апроксимацией производной, фортран
сообщение
Сообщение #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 -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Ага все выяснил... надо функции ДО слова program описывать..
нигде в книге ни слова об этом... мда...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #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

Все, это итоговый вариант, работающий, если кому надо...
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 20.04.2024 2:23
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name