📄 fractional.cpp
字号:
#include<iostream>
#include<cmath>
#include<fstream>
using namespace std;
const double h=0.1;
const N=10000;
long double b[N];
const double a=1.5;
double f1(double t)
{
return 1;
}
double f2(double t)
{
return t*exp(-t);
}
double f3(double t)
{
return pow(t,-1)*exp(-1*pow(t,-1));
}
double f4(double t)
{
return exp(-t)*sin(0.2*t);
}
double jiech(int n)
{
if(n==0||n==1)
return 1;
else
return n*jiech(n-1);
}
double w(int j)
{long double s=1.0;
for(int k=0;k<j;k++)
{
s=s*((a-k)/(k+1));
}
s=s*pow(-1,j);
return s;
}
double p(int i)
{ double q=0;
for(int k=1;k<i+1;k++)
{
q+=w(k)*b[i-k];
}
return q;
}
void main()
{
fstream fp;
double (*f)(double t);
int M=(int)(50/h);
f=f1;
b[0]=0;
b[1]=0;
for(int i=2;i<M+1;i++)
{
b[i]=-pow(h,a)*b[i-1]-p(i)+pow(h,a)*f(h*i);
}
//cout<<jiech(5);
for( i=0;i<M+1;i++)
{
cout<<b[i]<<" ";
if(i%10==0)
cout<<endl;
}
fp.open("shuju.txt",ios::out);
for( i=0;i<M+1;i++)
{
fp<<b[i]<<" ";
if(i%10==0)
fp<<endl;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -