南京邮电大学数学实验A 作业1 Matlab基础 答案 | 《MATLAB数学实验》第三版 第一章 课后习题答案

若要获得更好的阅读体验,请前往 链接

1(课本习题1)

执行下列命令,观察其运算结果,理解其意义:

(1) [1 2; 3 4]+10-2i;

(2) [1 2; 3 4].*[0.1 0.2; 0.3 0.4];

(3) [1 2; 3 4].[20 10; 9 2];

(4) [1 2; 3 4].^2;

(5) exp([1 2; 3 4]);

(6) log([1 10 100]);

(7) prod([1 2; 3 4]);

(8) [a, b]=min([10 20; 30 40]);

(9) abs([1 2; 3 4]-pi);

(10) [10 20; 30 40]>=[40, 30; 20 10];

(11) find([10 20; 30 40]>=[40, 30; 20 10]);

(12) [a, b]=find([10 20; 30 40]>=[40, 30; 20,10])(提示:a为行号,b为列号)

(15) linspace(3, 4, 5);

(16) A=[1 2; 3 4]; A(:, 2).

答:

  1. 矩阵上每个元素整体加法10,再减去复数2i。
  2. 执行数组乘数组。
  3. 数组除法。
  4. 对矩阵中的每个元素进行平方操作。
  5. 计算矩阵的指数函数,得到一个新的矩阵。
  6. 计算矩阵中每个元素的自然对数。
  7. 按列计算A矩阵的乘积
  8. 其中a返回了包含每一列最小的元素的数组,b返回了出现时的对应引索。
  9. 计算矩阵与圆周率π之间的差的绝对值。
  10. 逐元素比较两个矩阵,判断第一个矩阵的元素是否大于或等于第二个矩阵的对应元素,返回一个逻辑数组。
  11. 使用find函数返回问题(10)的结果中每个非零元素的线性索引组成的列向量。
  12. 通过find函数找出问题(10)的结果中每个非零元素的行和列下标。
  13. 使用linspace函数生成从3到4的5个等间距的数值。
  14. 访问矩阵A的第二列,并对其进行操作或计算。
  15. 创建一个由区间 [3,4] 中的 5 个等间距点组成的向量。
  16. 对二维数组进行切片操作,提取出了第二列的所有元素。

2(课本习题2)

执行下列命令,观察其运算结果、变量类型和字节数,理解其意义:

(1) clear; a=1,b=num2str( a),c=a\>0,a==b,a==e,b==0;

a, b, c的值尽管都是1, 但数据类型分别为数值,字符,逻辑,注意a与c相等,
但他们不等于b,这是因为他们的数据类型不同。

b=num2str(a)是将a从数值转换为了字符并赋值给b。

c=a>0:a>0的结果被赋值给c。

a==b,判断a与b是否相等,因为a与b 类型不符,输出0,

a==c,判断a与c是否相等,因为a与c都是数值,可以比较输出1

b=c,判断b与c是否相等,因为b与c类型不符输出0。

(2) clear; fun='abs (x)',x=-2,eval( fun),double(fun)

fun,x,ans的数据类型分别是字符串,数值,数组。

'abs (x)'被作为字符串赋值给fun。

eval函数可以将字符串解析为Matlab代码并执行

double函数将fun进行类型转换,将每个字符的ASCII码返回。

3(课本习题3)

本金K以每年n次,每次p%的增值率(n与p的乘积为每年增值额的百分比)增加,当增加到 rK 时所花费的时间(单位:年)为 T = ln ⁡ r n ln ⁡ ( 1 + 0.01 p ) T=\frac{\ln r}{n\ln(1+0.01p)} T=nln(1+0.01p)lnr.用MATLAB表达式写出该公式并用下列数据计算:r=2,p=0.5,n=12.

r=2;p=0.5;n=12;
t=log(r)./(n.\*log(1+0.01\*p))

结果是:

t = 11.5813

4(课本习题4)

已知函数 f ( x ) = x 4 − 2 x f(x)=x^4-2^x f(x)=x42x在(-2,2)内有两个根.取步长h=0.05,通过计算函数值求得函数的最小值点和两个根的近似解. (提示:求近似根等价于求函数绝对值的最小点)

x=-2:0.05:2;
f=x.^4-2.^x;
[fmin,min_index]=min(f); %fmin:最小值;min_index最小值点编址
minimum_point=[x(min_index),fmin] %最小值点
[f1,x1_index]=min(abs(f)); %求近似根
x(x1_index)=[];
f=x.\^4-2.\^x;%删去绝对值最小的点以求函数绝对值次小的点
[f2,x2_index]=min(abs(f)); %求另一近似根
solution=[x(x1_index),x(x2_index)]

结果:

minimum_point =

​ 0.6500 -1.3907

solution =

​ -0.8000 1.2500

最小值点是(0.6500,-1.3907),两个近似值解分别为-0.85和1.25

5(课本习题5)

(1)用z=magic(10)得到10阶幻方矩阵;

(2)求z的各列元素之和;

(3)求z的对角线元素之和(提示:先用 diag(z)提取z的对角线);**

(4)将z的第二列除以 3 \sqrt{3} 3 ;

(5)将z的第3行元素加到第8行.

(1) z=magic(10)

输出:

z = 10×10

92 99 1 8 15 67 74 51 58 40

98 80 7 14 16 73 55 57 64 41

4 81 88 20 22 54 56 63 70 47

85 87 19 21 3 60 62 69 71 28

86 93 25 2 9 61 68 75 52 34

17 24 76 83 90 42 49 26 33 65

23 5 82 89 91 48 30 32 39 66

79 6 13 95 97 29 31 38 45 72

10 12 94 96 78 35 37 44 46 53

11 18 100 77 84 36 43 50 27 59

(2) sum(z)

输出:

ans = 1×10

505 505 505 505 505 505 505 505 505 505

(3) sum_diag=sum(diag(z))

输出:

sum_diag = 505

(4) z(:,2)=z(:,2)./sqrt(3))

输出:

z = 10×10

92.0000 57.1577 1.0000 8.0000 15.0000 67.0000 74.0000 51.0000 58.0000
40.0000

98.0000 46.1880 7.0000 14.0000 16.0000 73.0000 55.0000 57.0000 64.0000
41.0000

4.0000 46.7654 88.0000 20.0000 22.0000 54.0000 56.0000 63.0000 70.0000
47.0000

85.0000 50.2295 19.0000 21.0000 3.0000 60.0000 62.0000 69.0000 71.0000
28.0000

86.0000 53.6936 25.0000 2.0000 9.0000 61.0000 68.0000 75.0000 52.0000
34.0000

17.0000 13.8564 76.0000 83.0000 90.0000 42.0000 49.0000 26.0000
33.0000 65.0000

23.0000 2.8868 82.0000 89.0000 91.0000 48.0000 30.0000 32.0000 39.0000
66.0000

79.0000 3.4641 13.0000 95.0000 97.0000 29.0000 31.0000 38.0000 45.0000
72.0000

10.0000 6.9282 94.0000 96.0000 78.0000 35.0000 37.0000 44.0000 46.0000
53.0000

11.0000 10.3923 100.0000 77.0000 84.0000 36.0000 43.0000 50.0000
27.0000 59.0000

(5) z(8,:)=z(3,:)+z(8,:)

输出:

z = 10×10

92.0000 57.1577 1.0000 8.0000 15.0000 67.0000 74.0000 51.0000 58.0000
40.0000

98.0000 46.1880 7.0000 14.0000 16.0000 73.0000 55.0000 57.0000 64.0000
41.0000

4.0000 46.7654 88.0000 20.0000 22.0000 54.0000 56.0000 63.0000 70.0000
47.0000

85.0000 50.2295 19.0000 21.0000 3.0000 60.0000 62.0000 69.0000 71.0000
28.0000

86.0000 53.6936 25.0000 2.0000 9.0000 61.0000 68.0000 75.0000 52.0000
34.0000

17.0000 13.8564 76.0000 83.0000 90.0000 42.0000 49.0000 26.0000
33.0000 65.0000

23.0000 2.8868 82.0000 89.0000 91.0000 48.0000 30.0000 32.0000 39.0000
66.0000

83.0000 50.2295 101.0000 115.0000 119.0000 83.0000 87.0000 101.0000
115.0000 119.0000

10.0000 6.9282 94.0000 96.0000 78.0000 35.0000 37.0000 44.0000 46.0000
53.0000

11.0000 10.3923 100.0000 77.0000 84.0000 36.0000 43.0000 50.0000
27.0000 59.0000

  • 12
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值