matlab实战演练,MATLAB基础课程 实战演练(1)

看看网上有哪些例程!看后就会感到和算法工匠提供的课程的差距了哦!(纯属自夸!)

c09d9cb41d796c8f18b4e01511e00d2b.png

用起泡法对10个数由小到大排序。即将相邻两个数比较,将小的调到前头。

function f = func_sort(x)

i = 1;

while i<=10

j = i+1;

while j <=10

if x(i)>x(j)

temp = x(i);

x(i) = x(j);

x(j) = temp;

end

j = j + 1;

end

i = i + 1;

end

f = x;

end

c09d9cb41d796c8f18b4e01511e00d2b.png

写的非常不规范!怎么修改?首先要都懂程序,然后规范变量,再者就是补全功能。函数首先要检测输入数组的长度!!!

c09d9cb41d796c8f18b4e01511e00d2b.png

有一个4x5矩阵,编程求出其最大值及其所处的位置。

function f = fun8(x)

i = 1;

max = realmin;

while i<=4

j = 1;

while j<=5

if max < x(i, j)

row = i;

col = j;

max = x(i, j);

end

j = j + 1;

end

i = i + 1;

end

f = [max, row, col];

% 加上分号后,可保证只输出一个结果。

%不会f和ans同时输出,这样只有ans输出。

end

网上的程序是不是能用?

需要同学们自行敲一遍程序来进行验证!

不能懒,懒人是学不好的!

6606d6f303d70848070378e1c86efb13.png

使用效果如何呢?

34b9a82e42580f007d0a213794261198.png

本人修改后的程序,

可以使用了!

再深入思考一下,如何能完善程序呢?加上size函数后,是不是可以扩展到求出任意二维矩阵的最大值及其所处的位置呢?

好吧,老师再次进行修改!

9d92acbdba2b02a2dae8efcec7a43aea.png

再看看结果如何?

>>matrix_a= [1 2 3 4 5;1 2 3 4 5;1 2 3 4 5;1 2 3 4 5;1 2 3 4 7];

>> func_max_site(matrix_a)

ans =

5 1 5

>> matrix_a= [1 2 3 4 5;1 2 3 4 5;1 2 3 4 5;1 2 3 4 7];

>> func_max_site(matrix_a)

ans =

7 4 5

>> matrix_a= [1 2 3 4 5;1 2 3 4 5;1 2 3 4 5;1 2 3 4 5;1 2 3 4 7];

>> func_max_site_v1(matrix_a)

ans =

7 5 5

原来可以针对任意矩阵进行了!

作业解答完结!

bcf9d06ac4db36653a89f8b6920cc1d0.png

题外话

坚持不易!

虽然生病一年了了,但我依旧在坚持工作。只不过由于头是斜的,因此每写好一篇教学文章,必须要休息一下。我因此定了早上工作一小时,然后就是躺在床上躺。以后吃中饭,下午再工作一小时。然后写完以后再到床上躺着。晚上也是如此。现状基本上没有什么娱乐活动,偶尔打打乒乓球。现在白天的时间大部分用在教学和编程上。希望付出能有回报,能够真的带动学生们去学习,学到很扎实的知识!

如果我们学院的学生有我这份毅力用来学习,起码找个好工作是没有任何困难的!

3148aaf843dff536766ccb177ec9f07a.png

修订记录

20190414 完成初稿;

20190719 补充内容;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值