![]() |
|
|
![]()
|
|
| mixala |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 28.5.2009 Репутация: нет Всего: нет |
Возникает ошибка Error: This name does not have a type, and must have an explicit type. [IN]
ну насколько я понимаю тут что-то с типами. Но k и in объявлены как интегеры, да и возвращается константа. Хотя может ошибка в том, что он пытается обратиться к функции как переменной? Что делать? Program Kryg real x,y,cx,cy,r integer k k=in(x,y,r,cx,cy) end program integer function in(bx,by,br,ccx,ccy) real bx,by,t,br,ccx,ccy t=sqrt((bx-ccx)*(bx-ccx)+(by-ccy*(by-ccy))) if (br>t)then in=1 endif end function |
|||
|
||||
| Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: 5 Всего: 49 |
Вариантов три. Первый (идеологически неправильный) - вызывать компилятор без ключа, автоматически включающего "implicit none". Второй (идеологически более правильный) - добавить в основную программу строчку
Третий (еще более правильный) - вынести реализацию функции в отдельный модуль, а потом use'ать этот модуль в основной программе. Все дело в том, что в момент обнаружения вызова функции in компилятор еще не знает, что она описана ниже (и, как следствие, не знает, что это такое). Поэтому ее надо как-то описать. Первый способ дает возможность компилятору решить, что функция in "по умолчанию" целочисленная, второй просто заранее ему это сообщает, в третьем случае компилятор полезет в модуль сразу в начале программы и заранее выяснит, что такое in. |
|||
|
||||
| popovda |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 290 Регистрация: 9.6.2006 Где: Москва Репутация: нет Всего: 6 |
Введите явную типизацию данных и используйте implicit none. Повысите надежность программирования.
-------------------- С уважением, Попов Д.А. |
|||
|
||||
| mixala |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 28.5.2009 Репутация: нет Всего: нет |
Спасибо, разобрался.
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Fortran | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |