zoukankan      html  css  js  c++  java
  • 计算方法之迭代法求方程根

    /************************
    * 用迭代法求方程
    * f(x)=e^(-x)-x+1=0
    * 的根
    *************************/
    #include<stdio.h>
    #include<math.h>
    #include<conio.h>
    
    float fa(float);
    float dd(float);
    int main() {
    	float x0;
    	printf("input data x0 = ");
    	scanf("%f", &x0);
    	printf("The root of f(x) = 0  is x = \t%f\n", dd(x0));
    	return 0;
    }
    float dd(float a) {
    	float x, x0, e;
    	int i;
    	printf("input eps = ");
    	scanf("%f", &e);
    	x0 = a;
    	printf("x0 = %f\n", x0);
    	for (i = 1;; i++) {
    		x = fa(x0);
    		printf("x(%d)=%f\n", i, x);
    		if (fabs(x - x0) < e)
    			return x;
    		else
    			x0 = x;
    	}
    }
    float f(float x) {
    	float a;
    	a = exp(-x) - x + 1;
    	return a;
    }
    float fa(float x) {
    	float a;
    	a = exp(-x) + 1;
    	return a;
    }
    

  • 相关阅读:
    Array
    java 设计模式
    Hashtable
    lettCode-Array
    最短路径 dijkstra
    算法:优先级队列
    7.29 DFS总结
    SZU:D89 The Settlers of Catan
    SZU:B47 Big Integer I
    7.25 RPN转换
  • 原文地址:https://www.cnblogs.com/java20130722/p/3206792.html
Copyright © 2011-2022 走看看