精华内容
下载资源
问答
  • 用C语言积分

    2015-03-31 18:20:09
    梯形法求定积分,对应于一个积分式就要有一段程序,不过可以改变程序的一小部分来改变所要求的积分式,程序以y=xsinx
  • c语言实现积分运算

    万次阅读 2018-10-24 21:24:44
    指针实现,最好先明白*p[4]和(*p)[4]的区别 int *p[4]; //定义一个指针数组,该数组中每个元素是一个指针,每个指针指向哪里就需要程序中后续再定义了。 int (*p)[4]; //定义一个数组指针,该指针指向含4个元素...

    用指针实现,最好先明白*p[4]和(*p)[4]的区别

    int *p[4]; //定义一个指针数组,该数组中每个元素是一个指针,每个指针指向哪里就需要程序中后续再定义了。
    int (*p)[4]; //定义一个数组指针,该指针指向含4个元素的一维数组(数组中每个元素是int型)。
    区分int *p[n]; 和int (*p)[n]; 就要看运算符的优先级了。
    int *p[n]; 中,运算符[ ]优先级高,先与p结合成为一个数组,再由int*说明这是一个整型指针数组。
    int (*p)[n]; 中( )优先级高,首先说明p是一个指针,指向一个整型的一维数组。

    其次还要知道定积分的定义

    #include<iostream>
    #include<cmath>
    using namespace std;
    int main()
    {
    	float integral(float(*p)(float),float a,float b,int n);
    	float fsin(float);
    	float a1,b1,c,(*p)(float);
    	int n;
    	cout<<"输入精确度数n:"<<endl;
    	cin>>n;
    	cout<<"input a1,b1:"<<endl;
    	cin>>a1>>b1;
    	p=fsin;
    	c=integral(p,a1,b1,n);
    	cout<<"the integral of sin(x) is:"<<c<<endl;
    	return 0;
    }
    //声明了一个指针p,
    p指向一个具有一个float类型形参的函数,
    这个函数返回一个float型值.
    float integral(float(*p)(float),float a,float b,int n)
    {
    	int i;
    	float x,h,s;
    	h=(b-a)/2;
    	x=a;//积分下限
    	s=0;
    	for(i=0;i<=n;i++)
    	{
    		x=x+h;//对函数的自变量x进行迭代
    		s=s+(*p)(x)*h;对每一个小矩形累加求和
    	}
    	return(s);
    }
    float fsin(float x)
    {
    	return sin(x);
    }

     

    展开全文
  • 用C语言辛普森算法算积分 最终得到运行程序
  • 用C语言验算二重积分

    2020-04-08 18:31:01
    众所周知二重积分可以分割成小块块的方法计算,这里就是直接这个 #include <stdio.h> #include <math.h> #define pi 3.141592658 long double func(long double x,long double y) { long double z...

    众所周知二重积分可以用分割成小块块的方法计算,这里就是直接用这个

    #include <stdio.h>
    #include <math.h>
    #define pi 3.141592658
    
    long double func(long double x,long double y)
    {
     long double z;          
     z = (x+y)-x*x-y*y;   //方程,可以随便修改
     /*******************
     DLC 绝对值型,如果需要绝对值就用下面的
      if(z < 0)
     {
      z = -z;
     }
     ********************/
     return z;
    }
    
    int main()
    {
     unsigned long long N = 0;    //强烈建议把N取小一点 , 十亿实在算的太慢了
        unsigned long long i,j;
     long double x,y;
     unsigned long long n = 0;
     long double V = 0;
     /*******************************
     如果是矩形邻域,对N取个值,把x,y区间输进去a,b,c,d即可
     long double V; 
     long double a , b , c , d;  
     scanf("%Lf %Lf %Lf %Lf" , &a , &b , &c , &d);   
     for (j = 0 ; j <= N ; j++)   
     {   
     for (i = 0 ; i <= N ; i++)     
     {        
     V += ((b - a) * (d - c) / (N * N)) * function((a + ((b - a) / N) * i) , (c + ((d - c) / N) * j));    
     }  
     }   
     printf("%lf\n" , V);    
     return 0;
     ********************************/
     printf("请给出N分块的数量,将把x-y平面拆分成N×N个小块\n");           //下面给出非规则区域
     scanf("%ull",&N);
     for(i = 0;i < N;i++)
     {
      for(j = 0;j < N;j++)
      {
       x = (2.0/((long double)N))*i-1.0;
       y = (2.0/((long double)N))*j-1.0;
       if(x*x+y*y <= 1)                              //满足区域条件,这里是圆
       {
        n++;                                      //计算出分块数
       }
      }
     }
     for(i = 0;i<N;i++)
     {
      for(j = 0;j<N;j++)
      {
       x = (2.0/((long double)N))*i-1.0;       //这是x分割坐标
       y = (2.0/((long double)N))*j-1.0;       //这是y分割坐标
       if(x*x+y*y <= 1)                        //满足区域条件
       {
        V += (pi/n)*func(x,y);     //V+= S/分块个数(必须满足在区域内)*z;
       }
      }
     }
     printf("%lf\n" , V); 
    }

    建议不要给N太大,会爆炸

    展开全文
  • C语言积分的近似值

    2019-04-30 17:09:08
    梯形法求积分的近似值 **/ #include"stdio.h" #include"math.h" float seekIntegral(float a, float b, int n) { float f1 = 0, f2 = 0; float s = 0; float deta, x; x = a; deta = (b - a) / n; f1 = sin...
    /**
    用梯形法求积分的近似值
    **/
    #include"stdio.h"
    #include"math.h"
    float seekIntegral(float a, float b, int n)
    {
    	float f1 = 0, f2 = 0;
    	float s = 0;
    	float deta, x;
    	x = a;
    	deta = (b - a) / n;
    	f1 = sin(x) + x;
    	for (int i = 0; i < n; i++)
    	{
    		x += deta;
    		f2 =  sin(x) + x;
    		s += (f2 + f1) * deta / 2;
    		f1 = f2;
    	}
    	return s;
    }
    void main()
    {
    	float s1,s2;
    	s1 = seekIntegral(0, 10, 60);
    	s2 = seekIntegral(0, 10, 60000);
    	printf("%.6f\n", s1);
    	printf("%.6f\n", s2);
    }
    
    展开全文
  • // (sin(a+n*i)是梯形的上底,sin(a+n*(i+1))是下底printf("梯形法求得该函数在(%2.0f,%2.0f)上的积分为%f。\n",a,b,s);}main(){jifen(0,1);}三.(综合)写一个矩形法和梯形法求定积分的通用函数,分别求sin(x)在...

    s=(sin(a+n*i)+sin(a+n*(i+1)))*n/2+s; // (sin(a+n*i)是梯形的上底,sin(a+n*(i+1))是下底printf("用梯形法求得该函数在(%2.0f,%2.0f)上的积分为%f。\n",a,b,s);

    }

    main()

    {

    jifen(0,1);

    }

    三.(综合)写一个用矩形法和梯形法求定积分的通用函数,分别求sin(x)在(0,1)上、cos(x)在(-1,1)上、exp在(0,2)上的定积分。

    说明:jifen的函数定义中,double (*fun)(double)表示fun是指向函数的指针,被指的函数是一个实型函数,有一个实型形参,Fun是指向函数的指针变量。用jifen(0,1,sin)语句调用jifen 函数时,给jifen函数传递了sin函数的入口地址,这时jifen函数中的fun函数就相当于是sin函数了,(*fun)(a+n*i)相当于sin(a+n*i)。这样jifen函数就是一个通用求定积分的函数了。#include

    #include

    jifen(float a,float b,double (*fun)(double))

    {int i,l;

    展开全文
  • C语言求定积分

    千次阅读 2019-03-13 16:49:42
    那现在就这种方法,利用C语言求定积分。 下面附上代码: #include &amp;lt;stdio.h&amp;gt; #include &amp;lt;stdlib.h&amp;gt; #include &amp;lt;iostream&amp;gt; #include &...
  • //输入积分上下限 printf("enter a1,b1:\n"); scanf("%f%f", &a1, &b1); printf("enter a2,b2:\n"); scanf("%f%f", &a2, &b2); printf("enter a3,b3:\n"); scanf("%f%f", &a3, &b3); p = fsin;//float型...
  • 矩形法求得该函数在 (%2.0f,%2.0f) 上的积分为 %f 。 \n",a,b,fabs(s));  printf(" 梯形法求得该函数在 (%2.0f,%2.0f) 上的积分为 %f 。 \n\n",a,b,fabs(s1)); }    void main() {  float m,n...
  • C语言__六种方法求定积分
  • 优质解答4了四种方法,另外还加了个龙格贝.大人大量给分吧~#includeusing namespace std;double getPI0(int h){double l = 1.0/h;int i,j;double s = 0;for(i = 0; i < h; i++){s += l*(4/(1+((2*i+1)*l/2)*((2*...
  • C语言笔记——梯形法求定积分 #include<stdio.h> #include<string.h> #include <stdlib.h> char *replace(char *src, char *sub, char *dst) { int pos = 0; int offset = 0; int srcLen, ...
  • C语言实现龙贝格积分

    千次阅读 2017-12-08 20:54:12
    Romberg算法求下列积分,允许误差eps=0.00001 /***************************************************************** 《数值分析》实验习题2 机械工程 现代制造技术教育部重点实验室 ************************...
  • printf("输入积分下限:"); scanf("%lf",&a); printf("输入积分上限:"); scanf("%lf",&b); printf("%lf\n",calc(a,b,p)); return 0; } double fun1(double x){ return sin(x); } double fun2(double x){ ...
  • c语言积分 本人自写 可以参考 英语写的哟 希望和诸位多交流~
  • 用c语言计算积分 一、积分计算原理 先把积分区域划分为n个曲边梯形,每个求值点为曲边梯形的两个底边中点,求得每个曲边梯形的面积即为积分近似法求得积分:当n为无穷大时,可将该曲边梯形近似看成矩形,求出求...
  • C语言笔记——梯形法求定积分

    千次阅读 2019-03-06 16:25:20
    梯形面积代替该小块图形的面积,然后进行累计,就能够得到曲线图形的近似面积。 #include &lt;stdio.h&gt; #include &lt;math.h&gt; #define MAXN 30 double fun1(double x); double fun2...
  • 写一个矩形法求定积分的通用函数,分别求:sin(x),cos(x),e^x 。 分析: 矩形法,学过高等数学就知道化曲为直的思想。将定积分化为多个函数连续的和。基本思想是将区间[a,b]化成n等分,当n越大的时候结果越准确...
  • 今天小编就为大家分享一篇C语言:利用指针编写程序,梯形法计算给定的定积分实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 本文用C语言实现了贪吃蛇游戏,结构清晰,实现了分别aswd实现上下左右运动,积分
  • 复习c的时候看到了这个题目,之前还有一题符号打三角形的题目,完成之前那个题目后看到这个问题第一时间给我一种很简单的感觉(虽然的确很简单呜呜呜),可我花了好长时间才弄出来......小白暂时实在是没什么可以...
  • c语言实现万能求积分

    2021-01-31 17:43:54
    本文章原创,转载请注明出处~原理:如下图,若要求a,b区间之间的面积,则对a,b区间进行分割,分割后的矩形面积相加作为区域面积的近似,分割的越细,近似程度越高 由此,可设计原型如下: Double integration...
  • 主要为大家详细介绍了用C语言程序实现黎曼和求定积分,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 用C语言程序实现黎曼和求定积分

    千次阅读 2015-10-01 00:55:58
    通过黎曼和解定积分既是把在xy平面中函数曲线与x轴区间区域划分成多个矩形并求它们的面积之和,矩形数量越多,得出的面积越精确。 #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include ...
  • 参考网上的积分程序写的C语言积分函数,支持自定义被积函数 1、可以精确到小数点后8到10位左右 2、因为是利用高斯积分表,所以计算速度也很快 3、有详细的文字说明,稍作更改就能化为己
  • 各种PID算法——用C语言去实现

    千次阅读 2020-04-09 14:47:24
    文章目录前言PID原理简单介绍位置型PID增量式PID位置型PID——C语言增量型PID——C语言积分分离的PID控制算法——C语言积分饱和的PID控制算法——C语言积分的PID控制算法——C语言 前言   PID算法在工业应用中...

空空如也

空空如也

1 2 3 4 5 ... 14
收藏数 278
精华内容 111
关键字:

c语言用积分

c语言 订阅