2016-11-25 13 views
1
if (mod(n,2) == 0) then 
     write(stdout, *) "Even" 
    else 
     write(stdout, *) "Odd " 
    end if 

印刷したいEven Odd Even Oddです。 これに$ディスクリプタを使用できないのはなぜですか?Fortranの同じ行に印刷する

+0

コードブロックには 'を使用しないでください。代わりに、編集ウィンドウの '{}'アイコンをクリックしてください。 –

答えて

4

コードに$記述子がありません!

ただし、標準のFortranには$という記述子はありません。コンパイラーの中には、拡張子を持つものとそうでないものがあります。移植可能なプログラムが必要な場合は、使用しないでください。

Fortran 90規格に準拠した方法では、非進行O/Oをadvance='no'としています。リスト形式の入力ではなく、フォーマットが必要であることに注意してください。

write(stdout, some_format, advance='no') "Even" 

some_format'(a)'または'(g0)'または該当するものは何でもすることができます。

また、警告の場合http://www.cs.rpi.edu/~szymansk/OOF90/bugs.html#3(要約:レコードの長さの制限がある場合もあります)を参照してください。

関連する問題