В настоящее время я использую вычислительную модель в Fortran. Во время вычисления иногда я получал «NaN», «Бесконечность» и цифры, превышающие двойную точность (отображается как **************). И мне нужно их обнаружить. Я могу обнаружить «NaN» с помощью следующей команды.Обработка NaN, бесконечности и чисел, превышающих двойную точность в Fortran?
if(isnan(result))then
continue = .false.
else
continue = .true.
endif
Я не знаю, как определить «Infinity» и «************» (чисел больше, чем с двойной точностью).
Как это сделать?
Звездочка не означает, что числа «больше, чем двойная точность», но вместо этого они переполнения спецификатор формата при печати. Это может быть, например, возникают, если вы печатаете целое число из двух цифр, используя только один символ. –
У вас есть комплимент, который поддерживает встроенные модули 'ieee_ *'? – francescalus
Возможный дубликат [Есть ли стандартный способ проверки для Infinite и NaN в Fortran 90/95?] (Http://stackoverflow.com/questions/17389958/is-there-a-standard-way-to-check- for-infin-and-nan-in-fortran-90-95) –