栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

数学建模第一天,从C++到MatLab

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数学建模第一天,从C++到MatLab

目录
  • 前言
  • 1.遇到问题善用help指令,获取帮助
  • 2.MatLab数据存储、运算、传输单位是数组,很多函数的返回值也是数组
  • 3.MatLab中的矩阵是以列向量为单位进行存储的,很多命令也直接和列向量挂钩
  • 4.高级语言中的数组元素之间,用半角逗号隔开;MatLab中的行向量元素之间既可以用半角逗号隔开,也可以用空格隔开
  • 5.MatLab中的数组元素下标从1开始
  • 6.MatLab库函数
  • 7.Project based Learning基于项目学习
  • 8.MatLab有很多插件,当某个库函数不能使用时,请检查是否安装/启用了所需插件
  • 9.为什么MatLab代码有的语句有分号,有的语句没有?
  • 10.注释

前言

MatLab是数学建模的必备工具,MatLab语法和C++等高级语言有何不同?
本文简述了MatLab和C++等高级语言的差异,希望帮助大家少走弯路

1.遇到问题善用help指令,获取帮助

最重要的写在最前面,有问题不要翻书了,先问问MatLab吧!
例:忘记plot绘图函数的使用规则,输入以下指令获取帮助:

>> help plot
2.MatLab数据存储、运算、传输单位是数组,很多函数的返回值也是数组

例:函数size(A)返回矩阵A各维度的规模

>> A = [1, 2, 3; 4, 5, 6];
size(A)=[2,3]
//A是一个2*3的矩阵,返回值size(A)是一个行向量

最常用的数组有一维数组(向量)和二维数组(矩阵),标量可以看做只含一个元素的特殊数组
向量分为行向量和列向量,但MatLab中很多函数对行向量和列向量等价
例:函数diag(b)可以根据向量b生成一个对角阵,b可以是行向量,也可以是列向量

3.MatLab中的矩阵是以列向量为单位进行存储的,很多命令也直接和列向量挂钩

例:sum(A):对矩阵A的每个列向量求和,返回各个列向量和组成的行向量
例:矩阵元素的序号寻访是从上到下,从左到右的,也就是一列一列访问,而很多高级语言是一行一行访问的

4.高级语言中的数组元素之间,用半角逗号隔开;MatLab中的行向量元素之间既可以用半角逗号隔开,也可以用空格隔开

例:向量[3, 4]可以表示成向量[3 4]
矩阵[1, 2, 3; 4, 5, 6]可以表示成矩阵[1 2 3; 4 5 6]

注意:MatLab中的列向量之间,只能用半角分号隔开,不能用空格隔开!
MatLab中的函数参数之间,只能用半角逗号隔开,不能用空格隔开!

5.MatLab中的数组元素下标从1开始

很多高级语言的数组元素下标从0开始,注意区别

6.MatLab库函数

不要试图一次性记住某个MatLab函数的所有重载方法,因为MatLab函数重载非常多
例:diag()函数的参数为向量时会返回矩阵,参数为矩阵时会返回向量
只需要记住diag()函数是与对角元素操作相关即可,具体功能可以在尝试中掌握

减少使用可读性差的重载方法,让代码单调易读
例:rand(3)和rand(3, 3)都表示生成3 * 3的随机数矩阵,但前者的可读性明显不如后者

7.Project based Learning基于项目学习

MatLab的语法非常简单,专门学习MatLab语法不合适
直接学习数学建模教材的代码,能看懂就模仿,看不懂就调用help指令,help指令还看不懂就百度

8.MatLab有很多插件,当某个库函数不能使用时,请检查是否安装/启用了所需插件 9.为什么MatLab代码有的语句有分号,有的语句没有?

MatLab脚本语言,程序员说一句,计算机做一句
MatLab每一条语句都有输出,如果不希望计算机输出,就应该在语句后加分号
例:输入指令(注意没有分号)

>> a = [1, 2, 3]

计算机输出:

>> a = [1 2 3] 

和输入一模一样,是不是很傻,所以加分号不让计算机输出

>>a = [1, 2, 3];

一般没有分号的输出语句,在程序的最后几行

10.注释

MatLab的注释符号为%
选中代码按以下快捷键可以快速注释:
多行注释快捷键:Ctrl + R
取消注释快捷键:Ctrl + T

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/330800.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号