📄 ross.cpp
字号:
#include <iostream>
#include<iomanip>
using namespace std;
int main()
{
int i,j;
int c;
double p[30];
double p1[30];
double p2[30];
double pp[30][30];
char state;
state = 'y';
while(state=='y')
{
cout<<"请输入特征方程中系数的个数c=";
cin>>c;
int inconunt=c;
cout<<"请输入特征方程中的各个系数"<<endl;
for(i=0;i<c;i++)
cin>>p[i];
if ( 0==p[1])
{
c=c+1;
inconunt=inconunt+1;
for( i=1;i<c-1;i++)
{
p1[i]=p[i-1]+p[i];
}
p1[c-1] = p[c-2];
p1[0]=p[0];
for(i=0;i<c; i++)
{
p[i]=p1[i];
}
}
if(0==c%2) //偶数时
{
for( i=0;i<c;i++)
{
if(0==i%2)
{
pp[0][i/2]=p[i];
}
else
{
pp[1][i/2]=p[i];
}
}
}
else //奇数时
{
c=c+1;
for( i=0;i<c;i++)
{
if(i==c-1)
{
pp[1][i/2]=0;
}
else
{
if(0==i%2)
{
pp[0][i/2]=p[i];
}
else
{
pp[1][i/2]=p[i];
}
}
}
}
//计算
int k;
int l;
int num;
l=inconunt-1;
for(i=2;i<c;i++)
{
num = 1;
k=1;
l=l-i;
for( j=0;j<c/2;j++)
{
if(k<c/2)
{
pp[i][j]=((pp[i-1][0])*(pp[i-2][j+1])-(pp[i-2][0])*(pp[i-1][j+1]))/pp[i-1][0];
k++;
}
else
{
pp[i][j]=0;
}
}
for(j=0;j<c/2;j++)
{
if(pp[i-1][j]=pp[i][j])
{
num=num+1;
}
}
if(num=c/2)
{
for(j=0;j<c/2;j++)
{
pp[i+1][j]=pp[i][j]*l;
l=l-2;
}
i=i+2;
}
}
//输出
cout<<endl;
for( i=0;i<inconunt;i++)
{
for( j=0;j<c/2;j++)
{
cout<<setprecision(2)<<pp[i][j]<<'\t';
}
cout<<endl;
}
int n=0;//记录负数个数
for(int m=0;m<inconunt;m++)
{
if(pp[m][0]<0)
{
n--;
}
}
if(n>=0)
cout<<"系统稳定"<<endl<<endl;
else cout<<"系统不稳定"<<endl<<endl;;
cout<<"是否要继续判断,继续请输入 y"<<endl;
cin>>state;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -