動的配列を割り当てるために使用しようとしましforall
たが、gfortran はそれを好みませんでした。また、ブロック内でwrite
ステートメントが禁止されていることもわかりました。ステートメントも禁止されているのではないかと思います。forall
read
forall
ブロック内で許可されていないその他の機能/操作は?
do
順序が重要でない場合にループを置き換えること以外に、この構造は正確には何のためにあるのでしょうか? 特に操作の順序が重要ではない場合を示すことで、コーディングがより読みやすくエレガントになると思いましたが、 内で実行できる操作はかなり制限されているようforall
です。
これらの制限の理由は何ですか?つまり、ユーザーが混乱するのを防ぐ/防止するものは何ですか? を使用することをお勧めしますforall
か? もしそうなら、どのような目的で?
現在、私が取り組んでいるコードにはforall
ブロックが 1 つしかなく、それをすべてdo
ループに変換すると、ネストされた 4 つのループができてしまいます。どちらの方法が良いですか?