c++ 用代数余子式计算五阶行列式的值

c++ 用代数余子式计算五阶行列式的值,第1张

设计一个类,计算行列式的值,行列式的阶数由键盘输入。要求该类可以作为其他类的基类(可继承,用常数列可以替换某列)。显示信息为:请输入行列式的阶数(1-20):3请选择输入行列式个元素的方式1键盘输入2随机函数自动产生请选择:2随机数的位数(1-5):2行列式:xxxxxxxxx行列式:abc行列式的值:abc=

我在ACM上写了一个NN阶螺旋阵的题,

代码给你了,可能有点长。

输入5即有结果。

#include <stdioh>

int main()

{

int n,k,a[30][30]={0},x=0,y=0,w[5]={1,1,1,1,1};

scanf("%d",&n);

k=2;

a[0][0]=1;

while(k<=nn){

if(w[1]&&(x>0&&a[x-1][y]==0)) {

a[x-1][y]=k;

k++;

x--;

if(x>0&&a[x-1][y]==0)

w[1]=1,w[2]=0,w[3]=0,w[4]=0;

else w[1]=0,w[2]=1,w[3]=1,w[4]=1;

}

else if(w[2]&&(y<n-1&&a[x][y+1]==0)){

a[x][y+1]=k;

k++;

y++;

if(y<n-1&&a[x][y+1]==0)

w[1]=0,w[2]=1,w[3]=0,w[4]=0;

else w[1]=1,w[2]=0,w[3]=1,w[4]=1;

}

else if(w[3]&&(x<n-1&&a[x+1][y]==0)){

a[x+1][y]=k;

k++;

x++;

if(x<n-1&&a[x+1][y]==0)

w[1]=0,w[2]=0,w[3]=1,w[4]=0;

else w[1]=1,w[2]=1,w[3]=0,w[4]=1;

}

else if(w[4]&&(y>0&&a[x][y-1]==0)){

a[x][y-1]=k;

k++;

y--;

if(y>0&&a[x][y-1]==0)

w[1]=0,w[2]=0,w[3]=0,w[4]=1;

else w[1]=1,w[2]=1,w[3]=1,w[4]=0;

}

}

for(k=0;k<n;k++){

int t=1;

for(x=0;x<n;x++){

if(t){

if(n<=3) printf("%-d",a[k][x]);

else if(n<=9) printf("%-2d",a[k][x]);

else printf("%-3d",a[k][x]);

t=0;

}

else {

if(x==n-1) printf(" %-d",a[k][x]);

else {

if(n<=3) printf(" %-d",a[k][x]);

else if(n<=9) printf(" %-2d",a[k][x]);

else printf(" %-3d",a[k][x]);

}

}

}

printf("\n");

}

return 0;

}

C语言

#include “stdioh”

int main(void)

{

int i,s=1;

for(i=1;i<=5;i++)

s=si;

printf("%d\n",s);//s就是1到5的阶乘

}

这是我认为比较简单的写法,希望能帮助到你^^

#include <stdioh>

int main ()

{

int i,t=1;

for (i=1;i<=5;i++) [ 注意一下括号里面的为分号,容易写成逗号^^]

t=ti; [也可以写成t=i]

printf("%d\n",t);

return 0;

}

以上就是关于c++ 用代数余子式计算五阶行列式的值全部的内容,包括:c++ 用代数余子式计算五阶行列式的值、用C语言设计算法输出一个5*5阶的螺旋方阵、求1到5的阶乘,编写程序,有没有会的帮我下等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9514578.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存