matlab第三章课后部分答案解析.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
![preview](https://dl-preview.csdnimg.cn/28814194/0001-6f0ac6f215dd0cfd1e76cc03a85a4b2d_thumbnail-wide.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
MATLAB 第三章课后部分答案解析 在本节中,我们将对 MATLAB 第三章课后部分答案进行解析,涵盖了多个知识点,包括反向输出三位整数、成绩等级判定、矩阵操作、随机数生成、最大最小值求解、级数求和等。 一、反向输出三位整数 在这个问题中,我们需要从键盘输入一个三位整数,并将其反向输出。例如,如果输入 639,则输出为 936。解决这个问题的 MATLAB 程序如下: ```matlab m=input('请输入一个三位整数:'); m1=fix(m/100);% 求 m 的百位整数 m2=rem(fix(m/10),10);% 求 m 的十位数字 m3=rem(m,10);% 求 m 的个位数字 m=m3*100+m2*10+m1;% 反向输出 m ``` 这个程序使用了 fix 和 rem 函数来提取输入数的百位、十位和个位数字,然后将这些数字组合起来以反向输出。 二、成绩等级判定 在这个问题中,我们需要输入一个百分制成绩,并根据成绩等级输出相应的等级标签(A、B、C、D 或 E)。我们可以使用 if 语句和 switch 语句来实现这个问题。下面是使用 if 语句的解决方案: ```matlab c=input('请输入成绩:'); if c>=90&c<=100 disp('A 成绩合理'); elseif c>=80&c<=89 disp('B 成绩合理'); elseif c>=70&c<=79 disp('C 成绩合理'); elseif c>=60&c<=69 disp('D 成绩合理'); elseif c<60 disp('E 成绩合理'); else disp('成绩错误'); end ``` 这个程序使用了 if 语句来判断成绩的等级,并输出相应的等级标签。 三、矩阵操作 在这个问题中,我们需要建立一个 5*6 的矩阵,并输出矩阵第 N 行元素。当 N 值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。下面是解决这个问题的 MATLAB 程序: ```matlab clear all a=fix(rand(5,6)*89)+10; n=input('请输入行数 n(输出结果是 5*6 矩阵的元素):'); if n>5|n<0 b=a(5,:); % 如果 N 值超过矩阵的行数,则输出最后一行元素 disp(['输入行数错误,程序输出最后一行:',num2str(b)]); else c=a(n,:); % 否则输出第 N 行元素 disp(['输出结果为:',num2str(c)]); end ``` 这个程序使用了 rand 函数来生成一个 5*6 的随机矩阵,然后使用 if 语句来判断输入的行数是否超过矩阵的行数,如果是,则输出最后一行元素,否则输出第 N 行元素。 四、随机数生成 在这个问题中,我们需要产生 20 个两位随机整数,并输出其中小于平均值的偶数。下面是解决这个问题的 MATLAB 程序: ```matlab x=fix(rand(1,20)*89)+10; x1=fix(sum(x)/20); disp(['平均数是: ',num2str(x1)]); m=(rem(x,2)==0&x<x1); n=find(m); disp(['小于平均数的数是: ',num2str(x(n))]); ``` 这个程序使用了 rand 函数来生成 20 个两位随机整数,然后使用 fix 函数来计算这些数的平均值,并使用 rem 函数来判断这些数是否为偶数。如果数小于平均值且是偶数,则输出该数。 五、最大最小值求解 在这个问题中,我们需要输入 20 个数,并输出其中的最大值和最小值。我们可以使用循环结构和调用 MATLAB 的 max 函数、min 函数来实现这个问题。下面是解决这个问题的 MATLAB 程序: ```matlab c=input('请输入 20 个数:'); disp('最大值是:') m=max(c) disp('最小值是:') n=min(c) ``` 这个程序使用了 input 函数来输入 20 个数,然后使用 max 函数和 min 函数来计算这些数的最大值和最小值。 六、级数求和 在这个问题中,我们需要求解以下两个级数的值: 1. 1/1^2+1/2^2+1/3^2+···+1/n^2+···(=pi^2/6) 2. 1-1/3+1/5-1/7+···(=pi/4) 下面是解决这个问题的 MATLAB 程序: ```matlab clear all n=1:100; b=1./(n.*n); c=sum(b); disp(['当 n 等于 100 时: ',num2str(c)]) n=1:1000; b=1./(n.*n); c=sum(b); disp(['当 n 等于 1000 时: ',num2str(c)]) n=1:10000; b=1./(n.*n); c=sum(b); disp(['当 n 等于 10000 时: ',num2str(c)]) ``` 这个程序使用了循环结构来计算这两个级数的值,并输出结果。 本节中我们讨论了多个 MATLAB 知识点,包括反向输出三位整数、成绩等级判定、矩阵操作、随机数生成、最大最小值求解、级数求和等。这些知识点都是 MATLAB 编程的基本组成部分,对 MATLAB 编程的学习和应用非常重要。
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/default.jpg!1)
- 粉丝: 35
- 资源: 12万+
![benefits](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-1.c8e153b4.png)
![privilege](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-2.ec46750a.png)
![article](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-3.fc5e5fb6.png)
![course-privilege](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-4.320a6894.png)
![rights](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-icon.fe0226a8.png)
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)