Содержит ли Fortran 77 встроенную функцию ALL?

Я пытаюсь проверить, являются ли все элементы логического массива ложными, не повторяя его. Я не могу найти функцию ALL() в руководстве Compaq Visual Fortran 6.6. Есть ли какой-то другой встроенный способ сделать это или ALL() поддерживается Fortran 77?

Вот что я пробовал. Он компилируется, но я беспокоюсь, что он сделает что-то не так, так как этого нет в руководстве:

IF(ALL(JLOGICALS .EQV. .FALSE.)) THEN
    !... 
END IF

person Alex    schedule 26.03.2015    source источник


Ответы (1)


Оператор ALL был добавлен в стандарт Fortran 90, поэтому, строго говоря, он недоступен для чистого компилятора FORTRAN 77.

Однако большинство компиляторов поддерживают этот оператор, а с помощью Fortran вы можете смешивать стандарты. Ваш код должен работать нормально...

здесь приведен список встроенные функции, поддерживаемые Compaq Visual Fortran 6.6. ALL среди них.

person Alexander Vogt    schedule 26.03.2015
comment
См., например, Fortran Forum Volume 33 Issue 2, pp 8-20. - person francescalus; 26.03.2015