C言語による数値計算について

このQ&Aのポイント
  • C言語による数値計算を覚えたいが、どうしたらいいかわからない。
  • 数値計算の本はプログラミングと関係なしの手法しか書かれていない。
  • 数値計算を抜きにしてプログラミングを覚えると手順がわからない。
回答を見る
  • ベストアンサー

C言語による数値計算について

C言語による数値計算について 研究で使うため、C言語による数値計算を覚えたいのですが、何をしたらいいかわかりません。 一応わからなくてもやってみたらいいとか言われますが、そんなこと言われても、なにをしたらいいかわからないのです。できるようになるビジョンも見えません。 よくわかるCとかいろいろ参考書はありますが、別に数値計算用に書かれたものではないですし、つながりが見えませんし、まず数値計算を抜きにしてプログラミングというものを覚えようとしても、本に書いてあることが、全く謎でとっかかりがありません。 数値計算の本を見てみると、プログラミングとか全く関係なしに数値計算の手法を書いてあるものとか、最後に付録としてできあがったプログラミングが書かれているだけとかで全く手順がわかりません。 どうしたらいいのでしょうか?アドバイスをお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • jacorro
  • ベストアンサー率50% (6/12)
回答No.6

No.5です。 > 全く謎でとっかかりがありません。 という部分に引っかかったので再度投稿させてください。 質問者さんはもしかすると、もうすこし基礎的な部分を求めていらっしゃるのかもと思いましたので。 No.1、No.2さんがおっしゃっているように、C言語でプログラムするためにはC言語で書かれた文字情報(ソースファイル)をコンピュータが実行できる形式に変換するソフトウェアをインストールする必要があります。このソフトウェアをコンパイラといいます。 お使いのOSがWindowsなら、Visual C++というコンパイラがお勧めです。有料のソフトウェアですが、大学生の場合「リンノ」というコミュニティーに登録すれば、無料で使うことができます。もしくは、Visual C++ 2008 Express Editionという無料のもあります。 Visual Studioの使い方が書かれた本はたくさんあるし、分かりやすく解説したWebページもたくさんあるので、使い方に関して困ることはないでしょう。 (OSがMacの場合は知りません。あまり使ったことがないので。すいません。Linuxならgccとかいろいろあります。まあLinuxユーザーならこの辺の説明はする必要はないですね。) まずコンパイラをインストールしてプログラミングができる環境を整えてから、先ほど紹介した本にそって勉強するのがいいと思います。 それではがんばってください。

その他の回答 (5)

  • jacorro
  • ベストアンサー率50% (6/12)
回答No.5

私が学部のときに使っていた本です。 C言語と数値計算法 杉江 日出澄 (著), 鈴木 淳子 (著),  培風館 ISBN-10: 4563015466 2編構成になっていて、前半がC言語の基礎、後半が行列、最小二乗法や数値積分法の基本的な解説が書いてあります。各章の終わりに5問程度演習問題が載っていて、すべての演習問題をやれば、基礎的な部分はマスターできるようになっています。おすすめです。

  • my3027
  • ベストアンサー率33% (495/1499)
回答No.4

最初は簡単な数値計算法(Euler法)を書いてみてはどうでしょうか? for loopとか使うだけで、特に難しくなく数値計算参考書と一般のCの参考書で出来ると思います。それができたらRKとか広げていけばいいと思いますよ。

noname#115788
noname#115788
回答No.3

数値計算をC言語やFORTRANとかのプログラム作って実現するのは、10年以上前の話です。組み込みシステムなら仕方がないからやりますが、今は数値計算専用のソフトウェアを使うのが普通です。微分方程式や数式処理ができるので時間の節約になります。 下記の三つのソフトウェアが御三家です。 ■ Mathematica http://www.wolfram.com/index.ja.html ■ MATHLAB http://www.mathworks.co.jp/ ■ Scilab http://www.scilab.org/ http://www.geocities.jp/rui_hirokawa/scilab/ Mathematicaが最も古く、MATHLABがそれに追随したソフト、ScilabがMATLABのパクリです。 Scilabは無料(オープンソース)ですが無料故にサポートがありませんので、インストールから自力で何とかする必要があります。

回答No.2

>まず数値計算を抜きにしてプログラミングというものを覚えようとしても まずはこれをやることですね。 エディタによるソースの編集 コンパイルとリンク プログラムの実行と結果の確認 ただし、これは使用しているシステムによってまるっきり違うので、 教えてくれる人がいないなら、ご自身が使っているシステムにあわせて 自分でできるようになるしかありません。 ここを通過できれば、後は適当な入門書のサンプルを幾つか打ち込んで実行していけば分かるでしょう。自分で白紙の状態から10行程度のプログラムが書けるようになれば、後は数値解析の本を参考に何とかなるでは?

  • trajaa
  • ベストアンサー率22% (2662/11921)
回答No.1

確かにC言語の入門編では、「Hello World」 というような文字型の操作とか 1+1=2の様な整数型の操作程度しか扱っていませんが・・・ まずはCという言語そのもの文法・流儀や、アルゴリズム->コード化->コンパイル手順->実行モジュール作成->デバックという作業の手順をマスターしないとならないのでは無いか? >参考書はありますが、別に数値計算用に書かれたものではないですし、つながりが見えません 最初は繋がりが見えなくとも、仕方ないのではないでしょうか? >数値計算の本を見てみると、プログラミングとか全く関係なしに数値計算の手法を書いてあるものとか、最後に付録としてできあがったプログラミングが書かれているだけとか それは、先に述べたような基礎が出来ているという前提なので、そのような構成なんじゃないでしょうか? 人それぞれレベルも目的も異なるので、『数値計算を目的にする人向けのC言語基礎編』なんて参考書は望めません。 一つ一つクリアしましょう。 現場で誰か相談できる人いないのか?疑問。

関連するQ&A

  • 数値計算を始めたいのですが・・・

    もうすぐ大学2年生になる物理を専攻している学生です。 大学での物理を学び、コンピュータを用いて数値計算をしたいと思うようになりました。 中学生のときにC言語を独学で学んで言語について入門書レベルの理解はあるのですが、 実際の数値計算となると、アルゴリズムを学んだり、グラフや図形にしたりという作業が必要です。 質問したいことは大きく分けて2つです。 (1)中学生のときはコマンドプロンプトとフリーのテキストエディタで勉強していました。 しかし、大学で物理の数値計算をするとなればVisual stdioなどを用いてプログラミングしたほうがよいのでしょうか? ダウンロードしてみたのですが、今のところいろんなコマンドが多くて難しいです・・・ どちらのスタイルでプログラミングした方がいいかとかはあるのでしょうか? どうもCUIだと図形描画はできないようなのですが・・・そうなのでしょうか? (2)数値計算をしたとき、グラフやアニメーションにしたいと思うのですが、 WindowsAPI、Gnuplot、OpenGL、他にも色々あるみたいなのですが、 どのようなツールを使えばよいのでしょうか・・・? 色々調べてはみたのですが・・・ どちらか1つでもよいのでご教授ください。 お願いします。

  • 簡単なC言語を利用したシステム

    私は今年大学4年で卒業研究をするのですが、なかなか良いテーマが決まりません。私の研究室ではプログラミング言語を用いて研究することが必須なのですが、私はプログラミングがとても苦手で、C言語の基本ぐらいしか分かりません。そこで、簡単なC言語を用いて何かのシステムを構築するような研究をしたいと思っているのですが、どんな研究ができるでしょうか?もちろん、これからもC言語についてはまだまだ勉強していくつもりです。回答よろしくお願いします!

  • 数値計算に適している言語

    物理実験で得たデータの計算処理や株価の予測系などの数値計算システムを作りたいのですが、PHP、Perl、Java、C#、VBのうちどれが適切なのでしょうか。 単純な平均を求めたりといったものから、高速フーリエ変換などを実装したいと考えています。 上記それぞれのシステム言語のメリット・デメリットなどがわかるとなお嬉しいです。 自分が取り扱えるシステム言語が上記のため、もっとその他にも候補があるかもしれませんが、ひとまずこの内容で比較情報いただけると幸いです。 よろしくお願いします。

  • BASICなど、数値計算用プログラミング言語の入手について

    10年あまり前、BASIC というプログラミング言語がプリインストールされているパソコンがあって、数値計算に利用して重宝していました。 現在、Visual BASIC という言語があって解説書も多く出ているようですが、どうも、用途が数値計算とは違うようで、言語仕様も昔のBASIC とは似て非なるもののように見受けます。そこで次のことがわかったら、教えていただきたいと思います。 (1)むかしのBASIC(例えば、N88BASICとか、F-BASICというのがあったと思います)と同じような言語で、Windows98上で実行できるソフトウェアがあれば教えてほしい。入手方法も知りたいと思います。 (2)それがなければ、数値計算に利用しやすい言語があれば、教えてほしい。私は、BASICのほかに、FORTRAN、アセンブラ言語(これは機械語に近いもので、ハードに依存するので類似品を求めることは難しいと思いますが)などによる経験があり、できればそれらに似ている方がよいですが、似ていることは、必要条件ではありません。Windows98上で走ることは、必要です。 数値計算は、EXCELなどでもある程度できますが、反復計算や、サブプログラムを自在に使うには、どうしても言語である必要があります。あまり高級でない、あまり高価でないものが望ましいです。

  • 数値計算の参考書

    物理に関する数値計算に関して、ある計算手法を使う時に 下記の事項が網羅されているものを探しています。 1) 手法の弱点、注意点 (例:こういう場合には誤差が大きくなる。) 2) 手法の効率的な使用方法 (例: こういうパラメータで計算が効率的になる。) 今の所、下記のような本を図書館で借りて内容を見ていますが、 他にお薦めな本などありますでしょうか? ----------------------- 数値解析 : 森 正武 数値計算の常識 : 伊理 正夫 計算物理 : 夏目 雄平 -----------------------

  • C言語について

    コンピューターシミュレーション(数値計算)をするためにC言語を勉強することになりました。以前まではFORTRANで行っていたので、まったくC言語がわかりません。C言語の勉強を始めるにあたって、何か良い参考書または、ホームページとかあれば教えてください。

  • C言語で。。。。。

    C言語のプログラミングの勉強をしているのですが、 5.4のような小数点以下ありの数値の整数値を表示させる関数ってありますか??ネットを探してみてもよく分からなくて困っています(><)よろしくお願いします。

  • C言語かBasic言語

    プログラミングにチャレンジしようとしている者です。 初心者のため、C言語かBasic言語どちらを勉強していけばいいのかわかりません。 また、最終的には自分でアプリケーションを作ってみたい、と思っています。(ブラウザなど) そこで、「これなら初心者でもチャレンジできる!」という言語を教えていただきたいのです。 できればわかりやすい本などもありましたら教えてください。(入門書など) よろしくお願いします。

  • 計算速度の速いC言語を教えてください!

    C++、C++/CLI、C#のどれかを初めて勉強しようと思っているのですが、どの言語を学んだらよいでしょうか? 主にやりたいことは、スプレッドシート上での計算を数千万回繰り返す計算とグラフ描写です。 これまでVBAを使って為替相場の価格変動をシミュレートするプログラムを組んで、4万行の計算x300回程度の計算をずっとしてきました。ただ、EXCELのグラフ機能に不満なので、計算とグラフ描写もするソフトを自分で作ろうと思っています。VBAは基本的な構文(For,If, Whileなど)を理解して使っています。プログラミングはVBA以外に触れたことがないのですが、永くコンピュータと付き合いたいのでC言語を新しく勉強したいと思ってます。 そこで教えて頂きたいのですが、C++、C++/CLI、C#のどれを勉強するのがよいでしょうか?上記のような計算をした時に速度に大きな違いが出るのでしたら速い言語を勉強したいです。 あまり違いが出ないのでしたら、上記のような目的のソフトをWindows上で趣味として作り、末永く付き合える言語を教えてください。 ちなみに上記のような計算で、VBAでは10時間程度かかります。 質問が長くなってしまってすいません。C言語をご存知の方、ご教授くださいm(_ _)m

  • C言語プログラミング

    あなたは何歳ですか。 (数値を入力) 10年後は○○歳ですね。 と表示されるプログラミングをお願いします。C言語でお願いします