トップページ > プログラム > 2014年07月09日 > i/yEgb7/

書き込み順位&時間帯一覧

38 位/227 ID中時間01234567891011121314151617181920212223Total
書き込み数0002000000000000000000002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
くだすれFORTRAN(超初心者用)その6

書き込みレス一覧

くだすれFORTRAN(超初心者用)その6
543 :デフォルトの名無しさん[sage]:2014/07/09(水) 03:16:15.11 ID:i/yEgb7/
>>538
出ているエラーメッセージは、入力ファイルの問題で、数字の代わりに
(たぶん)文字が来ているということ。

F77時代(かそれ以前)のプログラムの用だから、入力ファイルの数値の
フォーマットも指定されていると推測される。数値が指定カラムから
はみ出していないか見て味噌。

以前
  300 400 200 0 0
これで右から2番目でおかしくなると言っていたが、たぶん4カラムづつ
入力にとってある。300 400 200 000 000 ならたぶん動くだろう。
今は 0 0 を読んで、数値Formatがおかしいと文句を言われているのだと思う。
くだすれFORTRAN(超初心者用)その6
544 :デフォルトの名無しさん[sage]:2014/07/09(水) 03:17:43.97 ID:i/yEgb7/
ではなぜ Absoft9 ではよくて、11では駄目なのかと問うかもしれない。
考えられることとしては、入力データの空白の扱いのデフォルトが変わった
ことが考えられる。FORTRAN最初期からの伝統で、入力データの空白は
数値としてはゼロを意味している。文法書のFORMAT分のところをよく読むと、
BZとBNというオプションがある。BZはBLANK ZEROでBNはBLANK NULL(NONE)
を意味していて、解釈を変えられる。昔のデフォルトはBZだった。
しかしF95かF2003くらいでたしかデフォルトをBNにしていた気がする。
今、手元に資料がないので確認できないがw
というわけで、absoft9は空白を0として読んで、0 0 を000と解釈したが、
Absoft11は0 0を数値として解釈不能とみなして、illegal character in numeric input
の実行時エラーをはいているのだろう。
またそうだとするとAbsoft9では0入力の実行回数が1回少ないはずである。


ちなみに、なぜ空白がゼロなのか?これは昔は、紙テープ、パンチカードの
穴あき不良や読み取り不良が多くて、パンチカードのスペース(穴なし)
が出やすかったからと聞いたことがある。ホントかは知らない。

あとメール欄にsage と書くように。
スレが上がると、冷やかしが紛れ込んできてスレが荒れる原因になる。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。