用C语言迭代函数的调用来计算X-X^3/3!+X^5/5!-X^7/7!+.....
2个回答
展开全部
1:辉三角形(要求打印出10行)
==============================================================
#include<stdio.h>
main()
{
long i,j,n,k;
scanf("%ld",&n);
for(i=1;i<=n;i++)
{
k=1;
for(j=1;j<i;j++)
{
printf("%ld ",k);
k=k*(i-j)/j;
}
printf("1\n");
}
}
求一个3*3的矩阵对角线元素之合
==========================================================
直接用两个for循环遍历矩阵
然后用if判断在i=j的时候把该元素加到sum里面
3:什么迭代求法,有什么规则。距离用法(例如3次函数)
==========================================================
迭代算法是用计算机解决问题的一种基本方法。它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值。
利用迭代算法解决问题,需要做好以下三个方面的工作:
一、确定迭代变量。在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。
二、建立迭代关系式。所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成。
三、对迭代过程进行控制。在什么时候结束迭代过程?这是编写迭代程序必须考虑的问题。不能让迭代过程无休止地重复执行下去。迭代过程的控制通常可分为两种情况:一种是所需的迭代次数是个确定的值,可以计算出来;另一种是所需的迭代次数无法确定。对于前一种情况,可以构建一个固定次数的循环来实现对迭代过程的控制;对于后一种情况,需要进一步分析出用来结束迭代过程的条件。
具体用法:我没太弄明白你说的3次函数具体是个什么意思
是求f(x)=x^3 这样的函数的结果吗?
如果这样利用迭代的话就是得出迭代公式 就是 f(x)=f(x)*x
用个循环就可以了 这个思路不难
迭代和递归有区别:迭代比递归的效率要高的多 利用内存占用资源也更少
所以写程序时提倡能用迭代来转换的递归都用迭代来代替
4:最小公倍数和最大公约数的求法;
==================================================================
这个用“辗转相除”法就可以了 相信你们老师已经讲过...
==============================================================
#include<stdio.h>
main()
{
long i,j,n,k;
scanf("%ld",&n);
for(i=1;i<=n;i++)
{
k=1;
for(j=1;j<i;j++)
{
printf("%ld ",k);
k=k*(i-j)/j;
}
printf("1\n");
}
}
求一个3*3的矩阵对角线元素之合
==========================================================
直接用两个for循环遍历矩阵
然后用if判断在i=j的时候把该元素加到sum里面
3:什么迭代求法,有什么规则。距离用法(例如3次函数)
==========================================================
迭代算法是用计算机解决问题的一种基本方法。它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值。
利用迭代算法解决问题,需要做好以下三个方面的工作:
一、确定迭代变量。在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。
二、建立迭代关系式。所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成。
三、对迭代过程进行控制。在什么时候结束迭代过程?这是编写迭代程序必须考虑的问题。不能让迭代过程无休止地重复执行下去。迭代过程的控制通常可分为两种情况:一种是所需的迭代次数是个确定的值,可以计算出来;另一种是所需的迭代次数无法确定。对于前一种情况,可以构建一个固定次数的循环来实现对迭代过程的控制;对于后一种情况,需要进一步分析出用来结束迭代过程的条件。
具体用法:我没太弄明白你说的3次函数具体是个什么意思
是求f(x)=x^3 这样的函数的结果吗?
如果这样利用迭代的话就是得出迭代公式 就是 f(x)=f(x)*x
用个循环就可以了 这个思路不难
迭代和递归有区别:迭代比递归的效率要高的多 利用内存占用资源也更少
所以写程序时提倡能用迭代来转换的递归都用迭代来代替
4:最小公倍数和最大公约数的求法;
==================================================================
这个用“辗转相除”法就可以了 相信你们老师已经讲过...
展开全部
#include "stdio.h"
void main()
{
int i=1,j=1,flag=1;
double x,temp=1,sin=0;
printf("x=");
scanf("%lf",&x);//输入x值
do
{
while(j<=i)temp*=x/j++;//temp=x^(2n+1)/(2n+1)!
sin+=flag*temp;//求和
flag*=-1;//符号
i+=2;
}while(temp>=1e-5);
printf("sin(%f)=%.16lf\n",x,sin);
}
输入样例:
3.1415926
输出样例:
sin(3.141593)=0.0000000760092960
void main()
{
int i=1,j=1,flag=1;
double x,temp=1,sin=0;
printf("x=");
scanf("%lf",&x);//输入x值
do
{
while(j<=i)temp*=x/j++;//temp=x^(2n+1)/(2n+1)!
sin+=flag*temp;//求和
flag*=-1;//符号
i+=2;
}while(temp>=1e-5);
printf("sin(%f)=%.16lf\n",x,sin);
}
输入样例:
3.1415926
输出样例:
sin(3.141593)=0.0000000760092960
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询