
C语言中迭代法如何运用
1个回答
2014-03-13
展开全部
#include <stdio.h>
#include <math.h>
float f(float x)
{return (exp(-x));
}
void main()
{
float d,x0,x1,eps=0;
printf("input x0 eps:");
scanf("%f%f",&x0,&eps);
do {
x1 = f(x0);
if (fabs(x1-x0)<eps)
{printf("%f",x1);
break;}
else
d=fabs(x1-x0);
x0=x1;
}while(d>eps);
} 迭代就是函数自己调用自己,用的时候注意选择迭代结束条件就行了,不要陷入无限迭代。下面给出一个递归求阶乘的简单函数示例
*/
long jiechen(long n){
if(n==1)return 1; //递归结束条件
else retrun(n*jiechen(n-1));//递归过程
#include <math.h>
float f(float x)
{return (exp(-x));
}
void main()
{
float d,x0,x1,eps=0;
printf("input x0 eps:");
scanf("%f%f",&x0,&eps);
do {
x1 = f(x0);
if (fabs(x1-x0)<eps)
{printf("%f",x1);
break;}
else
d=fabs(x1-x0);
x0=x1;
}while(d>eps);
} 迭代就是函数自己调用自己,用的时候注意选择迭代结束条件就行了,不要陷入无限迭代。下面给出一个递归求阶乘的简单函数示例
*/
long jiechen(long n){
if(n==1)return 1; //递归结束条件
else retrun(n*jiechen(n-1));//递归过程
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询