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

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

A 回答 (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のグラフとかのあれ)の知識が必要でしょうから幼稚園生に教えるのは難しいと思いますよ(^^:
    • good
    • 0
この回答へのお礼

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

お礼日時:2001/06/25 01:11

もっと勉強してください(VC++)



幼稚園生にでも分かりやすくすると
複雑に出来ないので、このくらいです。
    • good
    • 0
この回答へのお礼

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

お礼日時:2001/06/26 19:40

こんにちは。


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

そうそう、C++ の基礎知識も必要ですよ。
    • good
    • 0
この回答へのお礼

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

お礼日時:2001/06/26 19:43

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

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

QC,C++未経験でcocos2d-xをやってみたのですがどうもコードの意味を理解できません、そこで

C,C++未経験でcocos2d-xをやってみたのですがどうもコードの意味を理解できません、
そこでcの絵本を買ってみました、その後c++の書籍を買って勉強したいのですがc++の絵本のような簡単なものではなく独習c++程の知識が必要なのでしょうか?
また独習c++を読むのにcの絵本の知識で足りるのでしょうか?
Javaもやってます、
文法はほぼわかります

Aベストアンサー

絵本シリーズ、独習シリーズは、中級者向けの本です。
「やさしいC++」などの入門書をしっかり読み直しましょう。
単にコードの意味が分からないのなら、インターネットで検索しましょう。
アマゾンには読者の書評も載っているので読んでみましょう。

Q[C/C++]プリプロセッサのファイル読み込み

#defineで定数を設定する場合に、TXTなどのファイルを読み込み、読み込んだ
値を定数として設定することは可能でしょうか?
下記のようなプログラムを考えていたのですが、うまくいかなくて悩んでいます。
ご教授お願いします。


#define VARIABLE '0'
#define TMP fgetc(fopen("./test.txt","r+"))
#undef VARIABLE
#if TMP=='a'
  #define VARIABLE 'a'
#elif TMP=='b'
  #define VARIABLE 'b'
#else
  #define VARIABLE 'c'
#endif

Aベストアンサー

#define定義はただの文字列置き換えにしかならない。
ということで……
>#if fgetc(fopen("./test.txt","r+"))=='a'
関数呼び出しはできないでしょう。
# 呼び出しできてもクローズしていませんし…。

そうなったら、既にプリプロセッサのお仕事ではありませんし。

#include "./test.txt"
で、ファイルの内容を読み込むことは可能です。
ので、./test.txtに

#define VARIABLE 'a'
とか記入しておけば、その内容を取り込むことは可能です。

もちろん、反映できるのはプリプロセッサが動作したときなので……

実行ファイルができあがった後で./test.txtの内容を書き換えて切り替えできるようにしよう。
そうすれば、再ビルドする手間掛からなくていいぢゃん!!

みたいなコトはできません。
# ので……普通にソースファイル上にdefine定義するのとあまり違いがありません。

QC# 2010 express edition インストールが出来ませ

C# 2010 express edition インストールが出来ません
プロジェクト ⇒ MyProgramの発行 ⇒ どのようにインストールするか には『Webから』 ⇒ URLの指定には『http://MySite.co.jp』 ⇒ オフラインでも使用するか には『いいえ』 ⇒ ここで『完了』を押すと発行した場所に以下のものが出来ました
Application Files
autorun.inf
publish.htm
MyProgram.Application
setup.exe
これら全てをFFFTPでMySite.co.jpへアップロードしました
そしてhttp://Mysite.co.jp/publish.htmを実行するとインストール画面が表示されましたので、『起動』又は『ファイルを指定して実行』押すと『アプリケーションを起動できません』とのエラーとなります
その時のログの主要部分は下記の通りです
『このアプリケーションをインストールするには、以前のバージョンをアンインストールするか、このアプリケーションをインストール済みにマークしてください。』と言われてもインストールが出来ないのに如何したらアンインストールが出来るのだ?
どうしたら、このアプリケーションをインストール済みにマークできるのでしょうか?
もう三日もはまり込んでいます、手も足も出ません
助けて! 教えて!! お願いします!!!
========================================================================
アプリケーションの概要
* オンラインのみのアプリケーションです。

エラーの概要
以下はエラーの概要です。これらのエラーの詳細はログに一覧表示されています。
* http://MySite.co.jp/MyProgram.application のライセンス認証により例外が発生しました。 次の失敗メッセージが検出されました:
+ 以前のバージョンがインストールされているため、このアプリケーションをオンライン アプリケーションにできません。このアプリケーションをインストールするには、以前のバージョンをアンインストールするか、このアプリケーションをインストール済みにマークしてください。

コンポーネント ストア トランザクションの失敗の概要
トランザクション エラーは検出されませんでした。

警告
この操作中に警告は発生しませんでした。

操作の進行状況
* [2010/10/21 11:18:12] : http://MySite.co.jp/MyProgram.application のライセンス認証が開始されました。
* [2010/10/21 11:18:13] : 配置マニフェストの処理は正常に完了しました。
* [2010/10/21 11:18:13] : アプリケーションのインストールが開始されました。

エラーの詳細
この操作中に次のエラーが検出されました。
* [2010/10/21 11:18:13] System.Deployment.Application.DeploymentException (SubscriptionState)
- 以前のバージョンがインストールされているため、このアプリケーションをオンライン アプリケーションにできません。このアプリケーションをインストールするには、以前のバージョンをアンインストールするか、このアプリケーションをインストール済みにマークしてください。
=============================================================================

C# 2010 express edition インストールが出来ません
プロジェクト ⇒ MyProgramの発行 ⇒ どのようにインストールするか には『Webから』 ⇒ URLの指定には『http://MySite.co.jp』 ⇒ オフラインでも使用するか には『いいえ』 ⇒ ここで『完了』を押すと発行した場所に以下のものが出来ました
Application Files
autorun.inf
publish.htm
MyProgram.Application
setup.exe
これら全てをFFFTPでMySite.co.jpへアップロードしました
そしてhttp://Mysite.co.jp/publish.htmを実行するとインストール画面が...続きを読む

Aベストアンサー

何かサードパーティ製のコントロールを使っているのではありませんか?
ライセンス認証をするといっているので ・・・

単純にフォームに標準のボタンだけ貼り付けたアプリの発行でも同様の現象が起きるのでしょうか?

QC言語のプログラムについてです 先にn勝したら勝ちというプログラムを 組みたいのですがうまくできませ

C言語のプログラムについてです
先にn勝したら勝ちというプログラムを
組みたいのですがうまくできません
どこが違うのでしょうか?

Aベストアンサー

前も質問したことあるね

前も言ったけど、どこがうまくいかないのかを書こう
何行目でエラーが出るのかとか
どういう風にうまくいかないのかとか
次からはそうしてください

・最初のifの最後に余計な{がある
・その書き方をするならwhile文の外のじゃんけん入力はいらないと思います。while文の外のじゃんけんを消してwhile文の中のじゃんけんを一番上に持ってきてみてください

それでもまだできないなら言ってください

Q(C言語)スキャンライン法による三角形作成

こんにちは!
先週C言語のプログラミングの課題が出て土日もずっと考えたのですが全く意味が分かりません><
どなたか教えてください泣

内容は、スキャンライン法で二次元三角形を作り(三角形の塗りつぶし)、BMPファイルへ出力せよというものです。

1. 3角形を囲む長方形・ (xmin,xmax,ymin,ymax)
2. Y座標をymax~yminまで, 1ずつ減らしながら以下を繰り返す
(a)スキャンラインSL(Y=y)発生
(b)SLと3角形との交点(線形補間)
(c)交点間の画素を 表示色(r,g,b)で塗る
*端点や水平線に注意

よろしくお願いします><

Aベストアンサー

>スキャンラインY=yが何を意味するのか分からないし
スキャンラインSLのY座標をyとする、ということです。
スキャンラインSLは、水平な直線です。
そのY座標をyとした時に、SLと三角形の辺との交点を求めます。
交点が2つ有る場合、交点の座標は(x1,y)と(x2,y)になるので
2つの交点の間を塗りつぶす(=2つの交点の間に線を引く)

この処理を、Y座標をyminからymaxまで変えながら行う。


このカテゴリの人気Q&Aランキング

おすすめ情報