ぼるじょあがC/C++の宿題を片づけますYO! 47代目
■ このスレッドは過去ログ倉庫に格納されています
0636今日の授業内orz
2005/07/12(火) 16:57:43#include <math.h>
int main(){
double x,px; //x[i]とx[i+1]
int i; //繰り返した回数表示
/* 変数の初期化 */
x = 5.0; //初期値は5
px = 0.0; //次の値は不明なので0
i = 0; //初期化
/* 計算開始 */
while(1){
/*
f(x) = x^3 - 3x^2 + x - 3
f'(x) = 3x^2 - 6x + 1
x[i+1] = x[i] - f(x)/f'(x)
*/
px = x - ((pow(x,3.0) - 3.0 * pow(x,2.0) + x - 3.0)/(3.0 * pow(x,2.0) - 6.0 * x + 1.0));
printf("%d回目 : x[%d] = %f\n",i+1,i+1,x);
//|x[i+1] - x[i]| <= 10^-5
if(fabs(px - x) <= 0.00001){
printf("終了条件になりました\n");
break;
}
/* x[i+1]にx[i]を入れる */
x = px;
i++;
}
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています