二分法の実装例と考察
以下の方程式を2分法で説く
(1) (2)
(3) (4)
これらの方程式の解の数とだいたいの位置を把握するためグラフを描く。
これらのグラフから、解の数はそれぞれ(1)が1つ、(2)が3つ、(3)が2つ、(4)が7つあることが分かる。解の数とおおよその位置が分かったので、これから2分法で解を求める。2分法を行う
プログラムが次になる。なお、囲み線の部分はそれぞれ問題の数式を定義する。
#include <stdio.h>
#include <math.h>
double f(double x){
return 数式 ;
}
main(){
int i;
double x1, x2, eps, f1, f2, ff, xm;
while(1){
scanf("%lf%lf%lf", &x1, &x2, &eps);
if(x1==0 && x2 == 0 && eps == 0)break;
f1 = f(x1);
f2 = f(x2);
if(f1>0){
xm = x1; x1 = x2; x2 = xm...