• ベストアンサー

y=exp(x)の計算と他のファイルから読み込ませるプログラムの作り方がわかりません。

1.Y=exp(x) x=[0,1]をテキストファイルに保存して、xは0から1の間をn等分する。 nの値はscanf()関数を使ってキーボード入力する。 2.保存したファイルから数値をdouble型変数に読み込み、y=log(x)の計算を行う。xは保存したファイルから読み込む。 3.そしてその結果を表示する。 という感じになっています。調べてみてはいるのですがexpの例が特になく、ここで質問させていただくことにしました。 どうかご教授願いませんでしょうか?

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

  • ベストアンサー
回答No.2

ふくろうさん 学校の課題?だとしたら、よくないなあ(笑)。 検索サイトで "C言語 exp" ってするだけできっと見つけられるよ。実例もきっとあります。使い方のヒントですが、検索してると・・・   C言語標準関数   ヘッダ math.h   書式 double exp(double x) って見つけられると思います。これは、   expはCの標準関数です、大抵の環境で使えます。   使いたいなら#include<math.h>しなさい   関数の引数はdouble型ですよ、関数の戻りは、double型ですよ と教えてくれてます。これだけでとりあえず、chieさんの言うとおり、実験できます。 ---------- sample.c ここから ---------- (注意) 全角スペースが含まれています。 #include<stdio.h> #include<math.h> main() {   int n;   double x, y;   printf( "Input n >" );   scanf( "%d\n" );   x = 3.14159 * n;   y = exp(x);   printf( "exp(%f)=%f\n", x, y ); } ---------- sample.c ここまで ---------- y=exp(x)、戻り値はdouble型のy、引数はdouble型のxです。scanf()の使い方も検索してみてください。サンプルの例の数は、きっとexp()の数より多いと思うなぁ。  Magna

hukurou55
質問者

お礼

ルール違反にも関わらず、ご教授していただきありがとうございました。 自分の為に時間を割いていただきありがとうございます。 sampleを参考にしてまたいろいろ調べてみます。

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

その他の回答 (1)

  • chie65536
  • ベストアンサー率41% (2512/6032)
回答No.1

まず「課題の丸投げは禁止」だ。 >expの例が特になく 要らないでしょ、そんなもん。 y=exp(x); ってやれば、yにexp(x)が求まる。yがどんな値になろうが知ったこっちゃない。たったコレだけの事、例が必要ですか? 「例が無きゃ何も出来な~い」とすれば、思考能力が小学生レベルで、それは「ゆとり教育」が原因。文科省を恨みなさい。

hukurou55
質問者

お礼

ルール違反申し訳ありませんでした。思考錯誤やってみます。

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

関連するQ&A

  • exp(x+y)=exp(x)exp(y)を和を計算することによって示

    exp(x+y)=exp(x)exp(y)を和を計算することによって示せ。 つまり Σ(0≦n≦∞)(x+y)^ n/n !={Σ(0≦n≦∞)(x)^n/n !}{Σ(0≦n≦∞)(y)^n/n !} を示せ という問題を出されたのですが、どうアプローチすればいいのかわかりません。 和の取り方を工夫すればいいと言われたのですが、どのように工夫すればいいのか見当もつきません。 始めてみたときは帰納法で証明できるかと思ってやってみたのですがうまくいきませんでした。 回答のとっかかりでもいいので教えてください。お願いします。

  • exp{-a(x^2+y^2)}のフーリエ変換

    exp{-a(x^2+y^2)}のフーリエ変換を行うとどのような関数になるのか教えてください。いろいろ調べたのですが、変数が一つ(xだけ)の場合はいろいろなとこで載っていたのですが、これは見つかりませんでした。よろしくお願いします。

  • ∫exp(x)/x dxの積分

    こんにちは。 ラプラス変換で微分方程式を解く問題をといておりましたところ、 以下の式が出てきました。 L{X(t)} = (3+2s)/{(1+s)(2+s)(3+s)} L{Y(t)} = (2+4s+s^2)/{s(2+4s)} これを逆ラプラス変換してX(t)およびY(t)を求めようと思います。 部分分数展開して積分を行ったのですが、その際どうしても以下の 積分を求める必要が出てきます。 ∫exp(s)/s ds ……(1) ∫exp(s)*s^n ds において、nが自然数なら、部分積分で求めることができるのですが、 nが負の整数の場合、部分積分を行うと(1)で手詰まりになってしまいます。 仮に(1)を部分積分しても、 [(log|s|)exp(s)] - ∫(log|s|)exp(s) ds となり、∫(log|s|)exp(s) ds を求めることができないので、先に進めません。 どうやれば(1)の積分は解けるのでしょうか?

  • exp(x^2)のマクローリン展開について

    exp(x^2)のマクローリン展開は、exp(x)のマクローリン展開において、xをx^2に置き換えることで求めることができます。 しかし、地道にn次導関数を使って求めようとすると、n次導関数に0を代入した時に0となってしまって上手くいきません。 この違いはなぜ起こってしまうのでしょうか。ご存知の方がいらっしゃいましたら、ご回答よろしくお願いします。

  • arctan(y/x)でxとyを極座標で表したあとの計算について

    arctan(y/x)という式があり、x,yをそれぞれ極座標で表します。x=rcosθ、y=rsinθ. すると、arctan(rtanθ)となってしまいます。 このように、三角関数の変数部分がまた三角関数というような関数は何と呼ばれているのでしょうか。これが指数関数を用いて表せるようなのですが、どのようにすればよろしいでしょうか。ヒントになるHP等の情報だけでもかまいません。

  • C++ファイルからデータ入力して計算、ファイル出力

    C++初心者です。 ファイルの数値データを入力して、それらを計算してからファイルに出力する方法がわかりません。 たとえば、 入力ファイル   出力ファイル 行数  x y z (1)  1 1 6   y(1)*exp(z(1)-x(1))+y(2)*exp(z(2)-x(1))+... (2)  3 5 2   y(1)*exp(z(1)-x(2))+y(2)*exp(z(2)-x(2))+... (3)  5 6 9  y(1)*exp(z(1)-x(3))+y(2)*exp(z(2)-x(3))+... (4)  9 1 3   y(1)*exp(z(1)-x(4))+y(2)*exp(z(2)-x(4))+… (5)  1 7 8   y(1)*exp(z(1)-x(5))+y(2)*exp(z(2)-x(5))+... 入力したデータを上記のように計算してから出力ファイルにしたいのですが、複雑なのでプログラムをどう組み立てれば良いのかわかりません。 ちょっとしたことでも結構です、参考になりそうなサイトや、ロジック、プログラムに関するアドバイスいただけませんか。

  • 関数f(x;y)について

    f(x;y)というような関数はどういった関数を 意味するのでしょうか。 yを媒介変数とする fy(x)と同じような意味でしょうか。 また、ニ変数関数f(x,y)とのちがいはなんでしょうか。 お教えくださいm(_ _)m

  • ∫exp{-c(x/a-b/x)^2}dxの計算

    以下の積分公式をどのように証明したらよいかご教示ください。 ∫[0→∞] exp{-c(x/a-b/x)^2} dx = (a/2)√(π/c) ガウスの積分公式∫[-∞→∞] exp(-nx^2) dx =√(π/n)  を使い、x/a-c/x=zと変数変換しようとしましたがうまくいきません。 ご存知の方よろしくお願いいたします。

  • X-Y座標の線形化

    X-Y座標で曲線を描く関数において変数を別の形の変数に置き換えれば1次関数のような線形グラフとなるか、特に次の3つの場合について教えて下さい。 Y=X+X^3 1/Y+1/X=3 X=3/(Y+4)

  • y=(2^x+6^x+8^x)^(1/x)のグラフ

    まず、y=(2^x+6^x)^(1/x)のグラフを考えてみます。 y=(2^x+6^x)^(1/x) =2(1+3^x)^(1/x) 対数をとり log y=log2 + (1/x)log(1+3^x) 微分し y’/y = (1/x^2)[{(log 3)x*3^x/(1+3^x)} - log(1+3^x)] = (1/(1+3^x)x^2)[{(log(3^x)*3^x - (1+3^x)log(1+3^x)] t = 1+3^x > 1 とおくと、y’の符号は次と等しい。 (t-1)log(t-1) - tlog(t) これは、また微分したりして調べれば負であることがわかる。 つまり、 y=(2^x+6^x)^(1/x)のグラフは、 x:-∞→-0のときy:2→+0と単調減少し、 x:+0→+∞のときy:+∞→6と単調減少する。 しかし、y=(2^x+6^x+8^x)^(1/x)のグラフが手計算で確認できません。 単調減少すると思われますが、 y=(a(1)^x+a(a)^x+…+a(n)^x)^(1/x) (0<a(1)≦a(2)≦…≦a(n)) の場合も含めていい考えがあれば教えてください。

飲食店出禁を言い渡されました
このQ&Aのポイント
  • 私は友人に連れられて行った店で、気に入って月に3回は通っていました。しかし、店主の体調悪化や亡くなり、息子から出禁を言い渡されました。
  • 店主の奥さんから謝罪の電話があり、また来てほしいと言われましたが、出禁との間でどちらが優先されるのか疑問です。
  • 出禁の理由は月に3回の来店と飲食代が赤字だということでしたが、私は迷惑行為をした覚えはありません。
回答を見る