• 締切済み

FORTRANと他の言語(c、c++、basic等)との違いについて

FORTRANが他の言語よりも優れている点、FORTRANにしかできない事、FORTARANの特徴など教えてください。あと他の言語の特徴も教えてください。

みんなの回答

回答No.7

No6です。追加。 FORTRANには優秀な計算ライブラリが揃っていることも特徴のひとつ。 C言語では、ロケット打ち上げやシャトルの運用は無理です。

回答No.6

FORTRAN Optimizerがあるでしょう。 これは、FORTRANで記述したプログラムの最適化をやってくれます。 また、FORTRANの特徴は、プログラマの腕によるとはいえ、何と言っても精度を保証してくれることです。 他の言語の特徴については、多種多様な言語があるので的を絞れません。

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.5

言語仕様だけに付いて言うと、FORTRANにしか出来ない事はほとんど無いと思います。 実際の処理系(コンピュータ+コンパイラ)でいうと、科学技術計算用スーパーコンピュータとかだと、ベクトルプロセッサの機能を使った並列処理最適化というのがあります。普通の言語だとマルチプロセッサを利用するのはプロセスやスレッドを分けたりと明示的に書かないといけないと思いますが、ベクトルプロセッサのFortranだと、 do i=1,100000 a(i)=b(i)*c(i) enddo のような100000個の乗算をプロセッサ数だけ並列して実行したりする機能があると思います。

  • ultraCS
  • ベストアンサー率44% (3956/8947)
回答No.4

FORTRANも昔のFORTRANではなく、言語仕様に構造化やオブジェクト指向がとりいれられていますし、BASICやCでも、従来はFORTRANでしかできなかったこと(スーパーコンピュータでのパイプライン演算に対する最適化等)が出来るようになっているし、FORTRAN向けのライブラリも同等のものが提供されるようになりましたから、一概に言えるようなことではありません。 昔のFORTRANであれば、どう機械語になるかが推測できましたから、最適化しても全く早くならない、全な最適化済みのソースが作れるなんていう名人もいましたが、今のFORTRANでは無理でしょう。 FORTRANにできてC、C++、BASICでは難しいのはホストでのバッチ処理でしょう。JCL切ってジョブストリームを構成するとなると、FORTRAN、COBOL、PL/I(UNISYS(旧Burroughs)だとまだALGOLが使えるかも)でないと無理でしょう。

tomotomo-52
質問者

お礼

なるほど、とても参考になりました。

  • surinrin
  • ベストアンサー率30% (284/939)
回答No.3

ちょっと前まで、スーパーコンピュータ上で動くプログラムをつくっていたときにFORTRANを使いました。歴史が古い分、言語的にバグが少ないというのがよく使われる理由かと思います。また、科学計算向けですね。計算の精度の問題とか、ライブラリのそろい具合とか。 ところでなぜ、FORTRANと他の言語の違いを知りたいのでしょう?その理由によっては、他の言語の特徴の書き方も異なってきますよ。

回答No.2

もう、?十年も前の話ですが、 その頃の科学技術計算用のコンピュータは、FORTRANでコンパイルされた実行形式が最速に動作するように設計されていたそうです。 FORTRANは、科学技術計算用の言語なので、πを求めたりロケットやミサイルの制御等に向いているのでしょうか。 それに、古くからある言語なのでメモリを効率よく使ってくれるみたいです。BOOL型の変数も1ビットに割り当ててくれます。 システム記述ではC、C++が良く使われています。特にC言語は非常に低レベルな記述も可能で高級アセンブラと呼ばれています。

  • driverII
  • ベストアンサー率27% (248/913)
回答No.1

こんにちは。通りすがりのエンジニアです。 私自身も、かなり以前に使っただけで忘れてましたが・・・ どうもソフトウェア資産が、「あるところにはある」 というのが売りですね。 私も数種類覚えてますが、言語っていうのは使わないところでは全く意味がないのです。それとは逆に使うところでは「重宝」されます。 ということで、NASAとか行くと重宝されるのでは(適当^^;)

参考URL:
http://homepage.mac.com/galois21/fortran/tips/tips1.html

関連するQ&A