MATLAB 2016基础实例教程(附教学视频)
上QQ阅读APP看书,第一时间看更新

2.3 综合实例——符号矩阵的创建

符号矩阵的创建

输出下面给出的矩阵AB,同时将数字矩阵转换成字符矩阵,并统计两个字符矩阵大小,最后经过连接两个矩阵得到新矩阵。

具体操作步骤如下。

(1)创建矩阵AB

>>A=[5,8,6,5,1,6,5;6,3,10,7,5,9,4;4,9,7,2,4,8,2;2,6,6,4,4,5,4;0,3,3,4,3,6,7; 
1,6,6,0,2,7,2;0,2,2,7,1,3,7] 
A = 
     5     8     6     5     1     6     5 
     6     3    10     7     5     9     4 
     4     9     7     2     4     8     2 
     2     6     6     4     4     5     4 
     0     3     3     4     3     6     7 
     1     6     6     0     2     7     2 
     0     2     2     7     1     3     7 
>>B=[5,9,1,11,1,8,6;3,4,10,7,15,9,3;3,6,7,6,4,8,2;0,8,-1,15,-6,5,5;0,3,3,4,3,
9,1;1,6,6,0,7,7,6;0,2,6,5,1,5,5] 
B = 
     5     9     1    11     1     8     6 
     3     4    10     7    15     9     3 
     3     6     7     6     4     8     2 
     0     8    -1    15    -6     5     5 
     0     3     3     4     3     9     1 
     1     6     6     0     7     7     6 
     0     2     6     5     1     5     5 

(2)显示矩阵大小。

>> size(A) 
ans = 
     7     7 
>> size(B) 
ans = 
     7     7 

(3)将矩阵转化为字符矩阵。

>> a=sym(A) 
a = 
[ 5, 8,  6, 5, 1, 6, 5] 
[ 6, 3, 10, 7, 5, 9, 4] 
[ 4, 9,  7, 2, 4, 8, 2] 
[ 2, 6,  6, 4, 4, 5, 4] 
[ 0, 3,  3, 4, 3, 6, 7] 
[ 1, 6,  6, 0, 2, 7, 2] 
[ 0, 2,  2, 7, 1, 3, 7] 
>> b=sym(B) 
b = 
[ 5, 9,  1, 11,  1, 8, 6] 
[ 3, 4, 10,  7, 15, 9, 3] 
[ 3, 6,  7,  6,  4, 8, 2] 
[ 0, 8, -1, 15, -6, 5, 5] 
[ 0, 3,  3,  4,  3, 9, 1] 
[ 1, 6,  6,  0,  7, 7, 6] 
[ 0, 2,  6,  5,  1, 5, 5]

(4)显示字符矩阵大小。

>> size(a) 
ans = 
     7     7 
>> size(b) 
ans = 
     7     7 

(5)连接两个矩阵生成新矩阵。

① 将矩阵转化为字符串。

>>  x=mat2str(A) 
x = 
[5 8 6 5 1 6 5;6 3 10 7 5 9 4;4 9 7 2 4 8 2;2 6 6 4 4 5 4;0 3 3 4 3 6 7;1 6 60
2 7 2;0 2 2 7 1 3 7] 
>> y=mat2str(B) 
y = 
[5 9 1 11 1 8 6;3 4 10 7 15 9 3;3 6 7 6 4 8 2;0 8 -1 15 -6 5 5;0 3 3 4 3 9 1;
1 6 6 0 7 7 6;0 2 6 5 1 5 5] 

② 连接两字符串。

>> z=strcat(x,y) 
z = 
[5 8 6 5 1 6 5;6 3 10 7 5 9 4;4 9 7 2 4 8 2;2 6 6 4 4 5 4;0 3 3 4 3 6 7;1 6 6 0 
2 7 2;0 2 2 7 1 3 7][5 9 1 11 1 8 6;3 4 10 7 15 9 3;3 6 7 6 4 8 2;0 8 -1 15 -6 5 5;0 
3 3 4 3 9 1;1 6 6 0 7 7 6;0 2 6 5 1 5 5]

③ 替代字符串。

>> z=strrep(z,')[',';'] 
z = 
[5 8 6 5 1 6 5;6 3 10 7 5 9 4;4 9 7 2 4 8 2;2 6 6 4 4 5 4;0 3 3 4 3 6 7;1 6 6 0 
2 7 2;0 2 2 7 1 3 7;5 9 1 11 1 8 6;3 4 10 7 15 9 3;3 6 7 6 4 8 2;0 8 -1 15 -6 5 5;0 
3 3 4 3 9 1;1 6 6 0 7 7 6;0 2 6 5 1 5 5] 

④ 将字符串转换为矩阵。

>> Z=str2num(z) 
Z = 
     5     8     6     5     1     6     5 
     6     3    10     7     5     9     4 
     4     9     7     2     4     8     2 
     2     6     6     4     4     5     4 
     0     3     3     4     3     6     7 
     1     6     6     0     2     7     2 
     0     2     2     7     1     3     7 
     5     9     1    11     1     8     6 
     3     4    10     7    15     9     3 
     3     6     7     6     4     8     2 
     0     8    -1    15    -6     5     5 
     0     3     3     4     3     9     1 
     1     6     6     0     7     7     6 
     0     2     6     5     1     5     5