いつもお世話になっております。今回はソースファイルのコンバートツールを
探していますので、もし知っている方いらっしゃいましたら、教えて下さい。

フォートラン言語で、座標計算するプログラムを、C++か、VCのソースに変換
したいと思ってます。
ただし、私はフォートラン言語の経験が無い為、良く分かりません。
後々のメンテナンスの事を考え、出来ればVCに変換したいと思います。

もし、製品をご存知の方がいらっしゃれば、価格(ライセンス数)等も教えて下さい。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

Cygwinってご存知ですか?



Windows上でUnixが動く、
みたいなヤツなんですけど、それを一式インストールすると
f2cっていうFortran->Cなコンバータが使える、らしいです。

やっぱUnixは無理ですか?
Borland C++ Builderに移植されたf2cなら見たことありますが…。

参考URL:http://www.os.rim.or.jp/~ines/etc/f2c.html
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qフォートランのソース変更を試みています

オリジナルは、ファイルAを読み込んで計算後に別ファイルへ書き出す内容です。それを繰り返し行なうよう変更すべく、恐らくは配列処理で対応可能かと思うのですが力不足のためご教授願いたく。

下記ファイルAには1行目にトータルグループ数、2行目に縦・横・奥行きのポイント数、3行目以降で各ポイントの値が入っています。
  1
  41 33 33
 -0.622790027E-02 -0.585733028E-02 -0.541264331E-02
 -0.487901969E-02 -0.423867628E-02 -0.349753047E-02 
 -0.622790027E-02 -0.585733028E-02 -0.541264331E-02 ---以下省略

下記ファイルBについても同様にしたいのですが、配列について今ひとつ理解不足なので困っています。
  3
  41 33 33 ---(1)
  21 33 12 ---(2)
  11 33 21 ---(3)
 -0.622E-02 -0.585E-02 -0.541E-02
 -0.487E-02 -0.423E-02 -0.349E-02 
 -0.622E-02 -0.585E-02 -0.541E-02 ---中略ここまで(1)
 -0.622E-02 -0.585E-02 -0.541E-02
 -0.487E-02 -0.423E-02 -0.349E-02 
 -0.622E-02 -0.585E-02 -0.541E-02 ---中略ここまで(2)
 -0.622E-02 -0.583E-02 -0.541E-02
 -0.487E-02 -0.421E-02 -0.349E-02 
 -0.622E-02 -0.585E-02 -0.541E-02 ---中略ここまで(3)

元ソース内のDo文については理解できていると思いますが、プログラムに関しては初心者レベルです。ファイルAでは上から順に読み込まれて計算処理し、別ファイルに書き出しています。始めの(1)~(3)を配列に格納してポイント値へ移行し、(1)分が終われば(2)分へ移るようなDo文で対処できるのかな?と考えられるのですが・・・・

よろしくお願い致します。

オリジナルは、ファイルAを読み込んで計算後に別ファイルへ書き出す内容です。それを繰り返し行なうよう変更すべく、恐らくは配列処理で対応可能かと思うのですが力不足のためご教授願いたく。

下記ファイルAには1行目にトータルグループ数、2行目に縦・横・奥行きのポイント数、3行目以降で各ポイントの値が入っています。
  1
  41 33 33
 -0.622790027E-02 -0.585733028E-02 -0.541264331E-02
 -0.487901969E-02 -0.423867628E-02 -0.349753047E-02 
 -0.622790027E-02 -0.58573302...続きを読む

Aベストアンサー

オリジナルでは、最初にトータルのグループ数を読み込んでいるとのことですが、この値を2以上にした場合の処理(繰り返し処理)は考慮されていないのでしょうか。


オリジナルでは、
  41 33 33 
これらを、I , J , K の各変数に読み込んでいるとするなら。

例えば、
  41 33 33 ---(1) は、
     I( 1 ) , J( 1 ) , K( 1 ) に

  21 33 12 ---(2) は、
     I( 2 ) , J( 2 ) , K( 2 ) に
     
  11 33 21 ---(3) は、
     I( 3 ) , J( 3 ) , K( 3 ) に読み込んでから

処理するというように考えてみてはいかがでしょうか。

QフォートランとC言語について

僕は機械系の人間なんですが、卒業研究で理論計算をするためフォートランを勉強しています。最近ではフォートランはなくなりつつある言語だとよく聞ききますが、本当のところはどうなんでしょう?来年は大学院へ進学予定なんですが就職後のことを考えてC言語も勉強した方がよいでしょうか?技術職、研究職、院生の方、意見をお願いします。

Aベストアンサー

Fortranがなくなりつつある言語かどうかはわかりませんが、すでに「古い」言語になりつつあることは
確かでしょう。構造体やポインタなどもないし(Fortran90にはあるようですが)
少なくとも民間企業では機械組み込み用であれパッケージソフトであれ使われていないと思います。
研究機関などにはまだFortranの資産も残っているのでしょうが、FortranのコードをCのコードに直す
トランスレーターなどもあるので、Fortranが使えなくても差し支えないと思います。
少なくとも大学院の研究ではCかC++を使うことをお勧めします。

なによりいけないのはFortranになれてしまうと、現在主流のオブジェクト指向プログラミングを
理解しづらくなってしまうことだと思います。Fortran77だとそれ以前にポインタや構造体の概念も理解しづらい。
これらの概念はみなFortranにはないものだからです。

私自身もそれで苦労しました。私のプログラミング経験は学部の頃にFortran77をちょっとやっただけです。
そしてファイルとかOSとかの概念さえ知らないまま卒業以来コンピューターとは無縁の生活。
10年近いブランクの後、大学院に入学したらいきなりCでプログラムを組む課題が出たりして
戸惑ったものです。ましてやC++のゼミまであったので…
BASICまたはperlのような言語ならFortran77の経験で十分対応できるのですが、Cはちょっとかけはなれています。
このあたりのことは以前にも回答したことがあるので参考URLの1つ目を御覧下さい。

なお以前に「教えて!goo」で、CとC++のどちらを先に学ぶのが良いかと言う議論がなされていました。
こちらも参考になるかと思います。参考URLの2つ目を御覧下さい。
私はCよりC++を先に学ばれることをお勧めします。

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=89442,http://oshiete1.goo.ne.jp/kotaeru.php3?q=80834

Fortranがなくなりつつある言語かどうかはわかりませんが、すでに「古い」言語になりつつあることは
確かでしょう。構造体やポインタなどもないし(Fortran90にはあるようですが)
少なくとも民間企業では機械組み込み用であれパッケージソフトであれ使われていないと思います。
研究機関などにはまだFortranの資産も残っているのでしょうが、FortranのコードをCのコードに直す
トランスレーターなどもあるので、Fortranが使えなくても差し支えないと思います。
少なくとも大学院の研究ではCかC++を使うこと...続きを読む

Q手続き型言語からオブジェクト指向型言語にコンバート

COBOLで書かれたプログラムをC#、JAVAなどのプログラムに書き換えるって簡単ですか?

COBOLは構造化プログラミングと呼ばれ、JAVAなどはオブジェクト指向でタイプが違うのではないかと思うのですがいかがでしょう?

Aベストアンサー

がるです。
このあたりは、「リファクタリング」というものについて調べると、色々と出てくるかと思うのですが。
以下、我流ですが「一つの方法」として捕らえていただけると。

1クラスを「ある意味のあるデータの塊を表す」ものであると仮定します。わかりやすいところですと、DBの1テーブルの1レコードを1インスタンスにするイメージです。
構造体でもよいのですが、後々を考えて、クラスにされるとよろしいかと思います。この場合、構造体に+αしたものがクラスである、程度の認識でよろしいかと。

そうすると「このデータを扱うときはこのクラス」という感じで集約することが出来るので、後々楽に処理をしたりすることが出来るようになります。

以上、参考になれば幸いです。

QアセンブラソースをCOBOLソースに自動変換

アセンブラソースをCOBOLソースに自動変換するようなソフトは有るのでしょうか。

Aベストアンサー

実行ファイルからソースを作成するソフトは、ディスコンパイラ(逆コンパイラ・デコンパイラとも)と言うものです。

javaだとディスコンパイラが存在し、割合実用になるっぽいですが、COBOLでは存在自体が厳しいですね…Cだったら探せばディスコンパイラはありますけど、x86以外の処理系ではなかなか厳しいと思います。No2の回答者さんからも指摘がありますが、処理系が何かをはっきりさせないと、一般論的回答しか付かない(それしかできない)と思いますよ。

Qウインドーズでのフォートランについて

フォートラン77をリナックスで使用していたのですが、最近、ウインドーズにもフォートラン77と、fcpadをダウンロードして使っています。で、質問なのですが

フォートランでのコンパイルの際
(1)データをキイインして結果をモニターに表示
(2)データをキイインして結果をファイルに保存してプリント
(3)データをファイルに保存しておきそれを読ませて結果をモニターに表示
(4)データをファイルに保存しておきそれを読ませて結果をファイルに保存して、プリント
と言うケースがあって、(1)はわかったのですが(2)(3)(4)がどのようにするのかわかりません。

リナックスでは、それぞれemacs上にて、(2)./a.out>kekka (3)./a.out<data  (4)./a.out<data>kekka
で、できたはずなのですが、ウインドーズではどのようにすればよろしいのでしょうか。

Aベストアンサー

fcpad上から実行→実行時パラメータで、
(2),(3),(4)のそれぞれで使用するパラメータが入力できます。
その後F8キーを押すとソースがコンパイルされてから、exeファイルが実行されます。
その際に実行→実行時パラメータで設定したパラメータが渡されて、(2),(3),(4)がそれぞれ実行されます。
fcpadのヘルプに詳しい説明が出ていますよ。
読みましたか?


人気Q&Aランキング

おすすめ情報