• 締切済み

VC++を使ってCで記述しグラフを描く

はじめまして。yamasunと申します。 私、大学生で研究でCを使うこととなりました。そこで手始めに、三角関数の グラフを書きたいと思っているのですが、どう画面表記させたらいいか分かり ません。 大変失礼ですが、お答えは幼稚園生に教えるぐらい簡単に分かりやすくお願い します。 ちなみに、初心者が読むCの本は読み終わりました。 よろしくお願いします。

みんなの回答

  • alfeim
  • ベストアンサー率58% (114/195)
回答No.3

VC++って事はWindowsでしょうが、Windowアプリケーションとして構築するのでしょうか?そりともコンソールアプリケーション? それによってアプローチがかなり違ってきます。 一応Windowアプリケーションとしてであれば、 WNDCLASS[EX]構造体に適当なパラメータをセットしてRegisterClass[Ex] APIで登録、CreateWindow[Ex]してメッセージループをまわす。 画面描画は、適当なイベントハンドラでGetDCでデバイスコンテキストを取得、SetPixelで描画。 こんな所でしょうか? 軽く書きましたがCのソースであれば200行程度は簡単に超えます。 yamasunが読まれたCの本というのがわかりませんが、C/C++では規格上では画面描画の方式を決めておらず、Cの入門書では画面美洋画の方法は載っていません(一部の処理系を限定しているものであれば載っているものもある)。画面描画は基本的にOSの機能を利用して描画する必要がある為、OS依存の描画方式を学習する必要があるでしょう。なので、できればせめてWindowsプログラミングの本を一冊読まれてから質問し直された方が良いかと思います(手続きが多すぎて前提知識無しでは、こういう場所では書き切れないのも確かです)。 また、Cにこだわる必要が無いのであればjavaなど規格として画像を扱うインターフェースを持つ言語に乗り換える事も考慮なされた方が良いかと思います。javaであれば入門書でも画像を扱う方法が載っているものも多いですから。 >幼稚園生に教えるぐらい簡単に 基本的に画面描画に関する説明って最低限の知識としてデカルト座標系(y-axのグラフとかのあれ)の知識が必要でしょうから幼稚園生に教えるのは難しいと思いますよ(^^:

yamasun
質問者

お礼

回答ありがとうございます。 実は、僕は理系の大学生で、ある装置を動かすのにVC++を使ってやれと 言われたので、ここ2~3ヶ月前にVCの勉強始めたんです。 せっかくやるのだからできるだけ自分の力でやりたいと思い softbank社の本を読みながら勉強しました。そしたらVC++をやるには まずCの勉強をしなさいと書いてあり、Cをなんとなく覚え始めた所で質 問のような宿題が出て… あまりにも無知な僕の質問にお答えくださいまして本当に感謝しています。 もう少し勉強して何が分からないのかもっと明確にしていきたいと思います。 本当にありがとうございました。

  • coolguys
  • ベストアンサー率18% (351/1917)
回答No.2

もっと勉強してください(VC++) 幼稚園生にでも分かりやすくすると 複雑に出来ないので、このくらいです。

yamasun
質問者

お礼

おっしゃる通りです。出直します。

  • haru-p
  • ベストアンサー率28% (34/119)
回答No.1

こんにちは。 VC++ でグラフを書くのでしたら、C の入門書だけではなく、VC++ および MFC *1 の参考書(入門書)を購入されてお勉強されるのが良いと思います。 *1 Microsoft Foundation Class Library サンプルプログラムが多く載っているものがいいですね。 そう言う意味では、VC++ と MFC の入門書に関して問い合わせ(教えてgooに)を すると良いかも知れません。 そうそう、C++ の基礎知識も必要ですよ。

yamasun
質問者

お礼

ありがとうございます。御礼遅くなりごめんなさい。 ぼくはまだCをはじめて3ヶ月で、C++の方までいってません。 いろんな所をかいつまんで(たとえばMFCを知り合いに聞いたり等々) やっているのですが、いかんせん知識に乏しい。 もう少し基礎を固めてからやっていきたいと思います。

関連するQ&A

  • c言語でグラフをつくる

    「三角関数sinとcosのグラフを描かせるプログラムを作成する。」という問題なのですが、色々本で調べてもうまくいきません。forで繰り返しをするまではなんとかわかったのですが。・゜・(ノД`)・゜・。

  • 三角関数の記述の仕方

    タイトルそのまんまなんですが、三角関数はC言語ではどのように記述すればいいでしょうか? 角度にラジアン表記でπ(パイ)を使いたいんですが、その表記方法もわかりません。 僕の持っている本に載ってなかったので質問させていただきました。 よろしくお願いします。

  • 三角不等式を解くにはグラフか単位円が必要か

    こんにちは。  三角関数の不等式を解く時に、グラフや単位円を書かないとダメですか? 答えがあえばいいと思うのですが。

  • グラフと文字係数

    2次関数ax2+bx+cのグラフが図のようになっているとき、3あ+3b+3cは正、負のどちらであるか答えよ。 の答えがわかりません。 誰か教えてください!! お願いします。 解説もできればお願いします。 グラフの数字がないとして考えてください。

  • 関数とグラフ作成(エクセル2007)

    グラフの質問 エクセルのグラフでグラフ作成後、 デザインからグラフのスタイル を選択する場合スタイルが40種類以上ありますが 試験等でスタイル20を選んでください・・・などの指示があったとき スタイル番号が画面に出ないため 20番を見つけられません たしかに ↑を図に合わせると番号が表記されますが もっとはやく 一目でわかる方法はありませんか? 関数の質問 関数の計算式を得画面に表記するときセル上で F2を押すと 色別に計算式が現れますが もし他シートをまたがって計算式を入力したとき F2を押しても他シートの計算式は表記されません (自動で画面が他シートに移って色別で表記しない) 他シートをまたがって計算式を入れたときに 素早く、簡単に計算式を見る方法はありませんか?? 以上 おねがいします。

  • 棒グラフの表示

    まだまだjavaは初心者のものなです(Cは少々なれましたが)。 配列に入っている整数型のデータを棒グラフで表示するプログラムを作りたいのですが、悩んでいます。本で長方形を描くプログラムは載っているのですが、う~んと言う感じです。どなたか教えて頂けるとうれしいです。(^-^) ちなみに、 intA[]=(35,45,58,67,80,85,94,90,85,79,70,65); として、画面の大きさは200×200、グラフの原点は(30,170)に したいと思ってます。

  • テーラー展開の意味

    テーラー展開を使えば、三角関数や円周率が整級数で近似できるというのは知っています。 しかし、テーラー展開の図形的意味つまり、テーラー展開では関数のグラフにおいて何を表しているのかよくわかりません。それと、高次の導関数を使えばなぜ近似の精度が向上するのかよくわかりません。 大学の図書館でいろいろ本を見たのですが、すっきりとした答えが見つかりませんでした。 回答をよろしくお願いします。

  • 【Excel】たてグラフを横に表示する

    関数初心者なのですが、教えてください。たてに作成したグラフを横に表示するようにしたいのですが、関数はありますでしょうか(VLOOKUPなど)。 sheet1は… _A__B__C 1 2009 2 2010 3 2011 4 2012 このグラフをsheet2に… _A__B__C__D 1 2009 2010 2011 2 (A1をB1にコピーするとsheet1のA2が自動的に出るような関数です)  

  • 二次関数のグラフの問題です

    2次関数の問題で y=ax2+bx+cのグラフ(上に凸の形でxがマイナスのところとプラスのところで2ヶ所交わっている)のときに、a,b,cの符号を調べよ。 というもので、上に凸ということより、a<0 は分かるんですが、 b,cの符号を求め方がよく分かりません。 グラフの図が与えられているので、それを見て答えればいいだけなんでしょうか? 式から求めることはできないのでしょうか?? 表記の仕方など伝わりにくいかもしれませんが、よろしくお願いします。

  • 数学3C新課程と旧課程の違いってあるのでしょうか?

    新課程の高等学校学習指導要領を見たのですが、旧課程の3Cを詳しく知らないので、比較ができません。 1A2Bは分かるのですが、3Cはどこか変更がなされたのでしょうか? 旧課程の教科書を使って勉強しても大丈夫でしょうか? 例えば「数学2で三角関数の角が弧度法表記になった」というようなちょっとしたことでも構いませんので、教えて頂けるとありがたいです。 よろしくお願い致します。