• 締切済み

C言語

C言語でサイン波形を描こうとしています。sinxで角度を入力する場合はできるのですが、sin wtで時間変化で描こうとするとできません…プログラム教えてください。

みんなの回答

  • R_Earl
  • ベストアンサー率55% (473/849)
回答No.2

頭の中でプログラムを動かしてみましたか? あるいは、変数がどのように変化するのかを実際に計算してみましたか? > float t,pi=3.14159,wb=120*pi,Iline; wbがなぜ120πなのでしょうか? > for(t=0;t<=6;t+=0.1) > > { > > Iline=sin(wb*t); 「 for(t=0;t<=6;t+=0.1)」の部分では、0.1刻みに増えています。 つまり「Iline=sin(wb*t);」の行を実行した時、Ilineの値はこのように変化します。 t = 0.0 → sin 0 = 0 t = 0.1 → sin 12π = 0 t = 0.2 → sin 24π = 0 t = 0.3 → sin 36π = 0 先ほど「wbがなぜ120πなのでしょうか?」と書いた理由が分かったでしょうか? 0.1刻みにtを変えるのであれば、120πは大きすぎます。 もう解決策は分かりますよね。

全文を見る
すると、全ての回答が全文表示されます。
  • fifaile
  • ベストアンサー率25% (622/2403)
回答No.1

丸投げは禁止ですが、for文でまわせば簡単にできるはずですよ。

ist2008
質問者

補足

#include<stdio.h> #include<math.h> void main() { int j; float t,pi=3.14159,wb=120*pi,Iline; printf("012345678901234567890\n"); for(t=0;t<=6;t+=0.1) { Iline=sin(wb*t); Iline=(Iline*10)+10; for(j=0;j<Iline;j++) { printf(" "); } printf("*\n"); } } 丸投げではなく… この自分で作ったプログラムでは縦に直線になるだけでsin波になりません。どこが悪いですか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 【C言語教えてください】sin波について

    【C言語教えてください】sin波について 角度を0度から360度の範囲におけるsin(x)のグラフを'*'を使って表示するプログラムを書きたいのですがどなたか教えてください。 角度は10度刻み、正弦波の振幅は10でお願いします。

  • C言語について教えてください。

    C言語について教えてください。 C言語ソフト「C言語をはじめよう」で、sin,cos,tanを求めたり、計算(sin=cos*tanや、sin^2(sinの二乗)+cos^2(cosの二乗)=1や、cos=sin/tan,tan=sin/cos)するプログラムを作りたくて、ネットを見たのですが、全然意味がわかりません。 また、√(平方根)の表示や、計算する(1/√3^2(√3分の1の二乗)*√3見たいな計算)プログラムを作りたいと思いますが、こちらも同様です。 #include<stdio.h> #include<math.h> int main(void) ここまではわかりますが、ここから先がわかりません。 どなたか。詳しくわかりやすく、入力例などをよろしくお願いします。 また、上記のプログラムや、書き方が違いましたら、こちらもご指摘お願いします。 なるべく早く、ご解答ください。

  • ひずみ波形の波形分析のプログラム

    ひずみ波形の波形分析のプログラムを作れといわれました。 が、当方ズブの素人でまったくわかりません。 プログラムとしてはこんな感じのを作れと・・・ まず始めにデータ数m(任意)を入力 次に、高さの入力(任意) すべて入力しおわったら確認の画面(yes or no) 入力した値を基に計算 an sin wt +bn cos n wt =√A(二乗)+B(二乗) * sin(n wt+θn) θn=tan-1B/A an、b0、bn, √A(二乗)+B(二乗) * sin(n wt+θn)θn=tan-1B/A θn (但し、n=1~10) 書き方下手でよく分からないかと思いますが、これが精いっぱいです。 このプログラムを誰か教えてください。 C言語でお願いします。

  • C言語で画像を出力したい

    C言語で画像を出力したい ホントに初歩的な質問になるのですが、申し訳ありません。 私はC言語を使ってフーリエ変換(つまりsin波形とかスペクトルの出力)をしてみたいと思っています。 調べてみると「PGPLOT」というものが使いやすいと知ったので、インストールしたのですが、そこから先の設定の説明をみてもよくわかりません このサイトに載っている青枠で囲まれた部分(#とかから始まる文章)は一体どこに記入してるのですか? コマンドプロンプトに入力するのかなと思って実行したら 「'$' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 とか、出てきます。どこの箇所の設定の説明なんですか?もしよろしければ可能な範囲でいいので教えてください。 自分は数値計算でしかC言語を使用してないので全然わかりません。でもこの説明も分かる人にはわかるんですよね?どういった参考書や勉強をしたらわかるようになるんですか? それだけでもいいので教えてください。 ちなみにパソコンはwindowsを使っています。

  • C言語の整数の判別

    最近C言語の勉強を始めたのですが、 C言語で、整数だけの入力を許可してそれ以外(文字等)が入力された場合は整数を入力して下さいというメッセージにとばすプログラムを作りたいのですがどうも作り方が良く分からず困っています、いったいどのように作れば良いでしょうか?? 宜しくお願いいたします!

  • C言語とC++言語

    C言語でコンパイルできC++でコンパイルできないプログラムとその逆でC++でコンパイルできC言語でコンパイルできないプログラムを教えてください。よろしく

  • C言語

    C言語初心者です。 整数を入力しその数が偶数ならプログラムを終了する。奇数ならそれが3の倍数か3の倍数でないかを表示する。入力した数が奇数ならこの操作を何回も繰り返すプログラムを作りたいです。 このプログラムのソースを教えてください。

  • c言語またはVBのSin Cos Tan

    お世話になります ふと思ったのですが c言語やVBのSin Cos Tanって、パラメータはラジアンですよね。 でも、中学などで習うSin Cos Tanは直接角度を指定してましたよね? 【質問1】 なぜ、プログラミング言語ではラジアンなのでしょうか? 【質問2】 角度指定で求められる同等の関数が有りますでしょうか?

  • C言語プログラミングで困っています。助けて下さい。

    C言語プログラミングで困っています。助けて下さい。 課題1-1: 実数 a と実数 b を入力すると、一次方程式ax + b = 0 の解を求めるプログラムを作る 課題1-2: 1-1 で作成したプログラムについて、さらにa として1が入力されたとき、方程式の表示       部分が1x + 3 = 0ではなくx + 3 = 0となるようにせよ 課題1-3: 1-2 で作成したプログラムについて、さらにb として0 や負の数が入力されたとき、方程式     の表示部分が2x = 0 や2x – 3 = 0となるようにせよ 課題1-4: 1-3 で作ったプログラムについて、さらにa の値として0が入力された場合、「解けません」     と表示するようにせよ 課題1-5: 係数 a, b, c を入力すると、 2次方程式ax2 + bx + c =0の解を表示するプログラムを作     れ ※ 1-2 ~ 1-4 のような機能を盛り込む ※ a が0の場合には、先に作った1次方程式のプログラムが動く という問題です。最終的にこれらを一つのプログラムにしてください。判別式や解の公式、ルート√などを使ってよろしくお願いします。C言語でお願いします

  • c言語です。

    c言語です。 現在電話番号入力のプログラムを書いているのですが、うまくいきません。 決まりは18文字以下で、入力できる値が数字1から9と'(',')','-'のみです。 私はあと少しなんですが、うまくプログラムを組めませんでした。 forを使ってやってみたのですがうまくいきません。文字数制限はできたのですが、、 どなたか良い知恵がありましたら教えてください。

このQ&Aのポイント
  • ブラザー製品のトク刷る登録方法について教えてください。
  • 購入したdcp-j926nの印刷までができていますが、トク刷るという機能の登録方法がわかりません。
  • 製品のページにはトク刷るのバナーがありますが、どこから登録できるのかがわかりません。情報を教えてください。
回答を見る