• 締切済み

C言語のプログラミング問題の回答をお願いします!

hi_kurokunの回答

回答No.2

2分法にかんしてはまず http://next1.cc.it-hiroshima.ac.jp/MULTIMEDIA/numeanal1/node6.html の図2.1の右側の図を見てください f(a)値はマイナス、f(b)の値はプラスになっています。 この時、aとbの間に交点があります。  aとbの中点cを見るとf(c)はマイナスになります、  つまり、aとcの間には交点がなく、cとbの間には交点があります  cの値をaにセットして、新しいaとbの中点cを求めます。 上の3行をaとbの間隔が十分小さくなるまで繰り返します 参考までに適当にプログラムを書いておきます(文法は間違っています) xa=1.0; xb=2.0  while(abs(xa-xb)<0.001) { xc=(xa+xb)/2.0; if(f(xa)*f(xc) <0.0) {xb=xc;} else {xa=xc;} } こんな形になるのでは?

関連するQ&A

  • ニュートン法の問題です!

    ニュートン法の問題です! わかる方がいたらおしえてくださいこまってます! f(x)=-1+x+x2とおいて、newton法を用いてf(x)=0の解を求めよ。newton法で使用する漸化式と初期値x0=1としたときの計算過程と結果を示しなさい。 とけるかたがいたら本当におねがいしますたすけてください

  • 二つの分布の問題

    確率問題の解き方について教えてください. 自分で途中まで計算してみたのですが,間違っている気がします. それ以外の方法も思いつきません. よろしくお願いします. *問題内容* 二つの確率変数XaとXbが,Xa>=Xbである確率はいくつか. XaとXbは平均値ma,mb,標準偏差ua,ubの正規分布をしています. *私のやったおそらく間違った解* 1)任意のpに対して, XA>=pである確率,XB<=pである確率 を求めて,両者の積を求める. 2)1)の値をpについて 負の無限大から正の無限大まで積分する.

  • BASIC言語の問題(初心者)

    こんばんは(>_<) 学校からの課題で非常に困っています!!!! BASIC言語の仕組みは読めても、どうしても組み立てが出来ないのです。。。 *1* 2の平方根を出力しなさい(二分法による平方根の計算) ただしδ=0.0001とする *2* 2の平方根を出力しなさい(ニュートン・ラプソン法による平方根の計算) ただしδ=0.0001とする ヒントとして、それぞれのアルゴリズム(?)があるので紹介します(>_<) *1*(xの平方根を精度δで求める) a←0 b←x while b-a < δ do c←(a+b)/2 if C*C > x then b←c else a←c endif done return a *2*(xの平方根を精度δで求める) y←x while │x-y*y│ < 2yδ do y←(y*y+x)/2y done return y 自分は文系で、パソコンの知識まったくないので、 どうかお助け下さいo(;△;)o涙

  • 数値計算 ニュートン法に関する問題です

    この問題のやり方を教えてください nの平方根をニュートン法で求める.n=1 √n が f(x)=(x^2)-n=0 の解であることを利用し、ニュートン法を用いて √n を求めるための漸化式を示せ. よろしくおねがいします 

  • ニュートン法でのプログラミング

    ニュートン法を用いてf(x)=X^2-2の正の解を求めなさい。 また、反復回数が増えるにしたがって解が収束していく様子を表示しなさい。 という問題なのですが、いくら反復回数を増やしても誤差がでてしまい、うまくいきません。このプログラミング解いていただきたいです。よろしくお願いします。

  • 数値計算の問題です

    この問題のやり方を教えてください nの平方根をニュートン法で求める.n=1 (1) √n が f(x)=(x^2)-n=0 の解であることを利用し、ニュートン法を用いて √n を求めるための漸化式を示せ. (2) 許容誤差ε=10^(-6)、√nの値を求めるプログラムを作成.   おねがいします。

  • 級数の収束判定

    今、無限級数の収束判定の問題を解いてるのですが、2問どうしても 解けない問題があり困ってます。 その問題は、 以下の無限級数が収束するか、発散するか調べよ。 1. Σ{n/(n+1)}^(n^2) 2. Σ 1/{{ln n}^(ln n)}  1.は明らかにコーシーの収束判定法を使う形に見えるのですが、 |{n/(n+1)}^(n^2)|のn乗根は 1に収束してしまうので、コーシーは使えません。ダランベールの収束判定も考えたのですが、うまくいかないです。 2.これもコーシーの収束判定法を使うのかと思ったのですが、ln n 乗があるため、うまく計算できません。 上記の問題、どなたかアドバイスをいただけないでしょうか。 よろしくお願いします。

  • C言語課題(数値計算)お願いします。

    課題内容 ニュートン法を用いて√2の値を求められるプログラムを作る。 10ケタまで表示する。 書いてみたソースコード #include <stdio.h> #include <stdlib.h> #include <math.h> #define max 1000 //最大繰り返し回数 #define eps 1.0e-10 //収束条件 double f(double x); double df(double x); void newton(void); int main() { newton(); return 0; } void newton(void) { int count; double a,newa; count=0; printf("初期値を入力してください。\n"); scanf("%lf",&a); for(;;) { count++; newa=a-f(a)/df(a); if(fabs(newa-a)<eps) break; a=newa; if(count==max) { printf("収束しませんでした。\n"); exit(1); } } printf("解の値は %f\n収束するのに %d 回かかりました。\n", newa,count); } double f(double x) { return x*x-2; } double df(double x) { return 2x; } コンパイルできません。 間違いとどうすればよいかを教えていただけるとありがたいです!!!

  • C言語 二分法 プログラム

    C言語での二分法の解法になやんでいます。 f(x)=X2乗-2でf(x)=0の解を2分法により求める場合のプログラムを教えて下さい。 収束条件|ak-bk|<10^-6と|f(ck+1)|<10^-6のいずれかを満足。また、解を求める過程として、k,ak,bk,|ak-bk|, ck+1, f(ck+1) (k=0,1,2,3...)も示してくれないでしょうか。よろしくお願いします。 注: a,b,cに付属するk,k+1はa,b,cの下側に付く小文字です。(a1,a2... ak, ak+1. b1 b2... bk, bk+1)

  • 平方根の計算の問題です

    平方根の計算の問題です。 √6+√5+1/√6+√5という分母に平方根がある問題の計算なのですが、まず分母の√6+√5を消すために1/√6+√5に√6+√5/√6+√5をかけて・・・としてみたのですが、√6+√5/11+2√30となってしまいまた分母に平方根がついてしまいます。 数学の基礎の問題とは思うのですがぜひご回答のほうよろしくお願いします。