C++中,输出一个n阶矩阵步骤如下:
1、首先,定义8个整型变量,实现n阶矩阵的计算。
2、接着,定义一个数组变量保存奇数幻方的各数值。
3、输入奇数幻方的阶数。
4、给数组赋初值,初始值为0。
5、计算第一个数1的坐标,保存在变量x和y中。
6、将第一数字1,保存在数组中。
7、用for循环,实现奇数幻方各值位置的计算。
8、用累加的方式,获取奇数幻方的下一个数值。
9、计算奇数幻方下一个值的坐标。
10、如果元素的x坐标小于1,则x值为n;如果元素的y坐标小于1,则y值为n。
11、用if循环处理计算出的坐标已存在的情况,如果存在,则位置变为原数值的下方。
12、将下一个奇数幻方的数值,保存在数组中。
13、最后,输出奇数幻方的每一个数值,每输出一行执行换行。
14、运行程序,输入一个阶数后,电脑就会输出该阶数的矩阵。
i=i+1j=j+1
你这样写i一直等于j,也就是你改变的对角线元素的值,如果对整个矩阵进行 *** 作,应改为
m=[0
0
0
00
0
0
10
0
1
00
0
1
10
1
0
00
1
0
10
1
1
00
1
1
11
0
0
01
0
0
11
0
1
01
0
1
11
1
0
01
1
0
11
1
1
01
1
1
1]
g=[1
0
0
1
1
1
0
1
1
11
1
1
0
0
0
1
1
1
00
1
1
0
1
1
0
1
0
11
1
0
1
1
1
1
0
0
1]
c=m*g
for
i=1:16
for
j=1:10
if(c(i,j)==1||c(i,j)==3)
c(i,j)=1
elseif(c(i,j)==0||c(i,j)==2)
c(i,j)=0
end
end
end
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)