Matlab 2023b学习笔记2——变量与数据类型

目录

一、注释写法

二、变量命名规则

1.变量名区分大小写

2.变量名长度不超过63位

3.变量名以字母开头,可以由字母、数字和下划线组成,但不能使用标点

​编辑

4.变量名应简洁明了,通过变量名可以直观看出变量所表示的物理意义

[三、 数据类型](#三、 数据类型)

1.数字

​编辑

2.字符与字符串

1.abs()

2.char()

3.num2str()

4.length()

5.doc

3.矩阵


一、注释写法

在Matlab中,注释有两种写法:一种是单百分号加空格,另一种是双百分号加空格,两种的区别在于双百分号的字体会更粗,而且会自动生成一条线用来分隔代码:

二、变量命名规则

1.变量名区分大小写

2.变量名长度不超过63位

如果超出63为会被自动截断为63位,可能会造成一些不必要的麻烦。

3.变量名以字母开头,可以由字母、数字和下划线组成,但不能使用标点

4.变量名应简洁明了,通过变量名可以直观看出变量所表示的物理意义

没啥好说的。

三、 数据类型

Matlab中数据类型分为数字、字符与字符串、矩阵、元胞数组以及结构体。

1.数字

加减乘除的写法也在图片里。

2.字符与字符串

在Matlab中, 字符串或单个字符都用单引号括住。

同时,Matlab也提供了许多对字符与字符串进行操作的函数:

1.abs()

此函数的用处是将字符与字符串内的内容转换为ASCII输出:

2.char()

此函数的作用是将传入的 数字对应的字符输出,如果有多个值,可以用逗号隔开:

3.num2str()

此函数的作用是将传入的数字转换成无法计算的字符串:

4.length()

此函数的作用是计算字符串的长度,空格也会数进去:

5.doc

doc后面跟你想要了解的函数,按下回车就会弹出帮助窗口,自动定位到doc后面的内容:

3.矩阵

定义矩阵时,用方括号括住,每一行元素之间用空格或逗号隔开,换行时使用分号:

在定义好一个矩阵后,我们在矩阵后加一个单引号,即可将该矩阵转置,行变列,列变行:

我们也可以把矩阵中的所有元素以列打开放在同一列上,只需要在矩阵后加(:):

使用inv()即可求矩阵的逆矩阵:

矩阵乘法也是使用*号,将刚才所得两个矩阵相乘:

使用zeros()来生成零矩阵,可以传入三个参数,第一个参数为行,第二个参数为列,第三个参数为维度:

我们也可以生成随机的矩阵,具体函数如下:

1.rand生成均匀分布的伪随机数,分布在(0~1)之间

  • rand(m,n)生成m行n列的均匀分布的伪随机数
  • rand(m,n,'double')生成指定精度的均匀分布的伪随机数,参数还可以是'single'
  • rand(RandStream,m,n)利用指定的RandStream(可以认为是种子)生成伪随机数

2.randn生成标准正态分布的伪随机数(均值为0,方差为1)

  • 主要语法与上面的一样

3.randi生成均匀分布的伪随机整数

  • randi(iMax)在开区间(0,iMax)生成均匀分布的为随机整数
  • randi(iMax,m,n)在开区间(0,iMax)生成m×n型随机矩阵
  • r=randi([iMin,iMax],m,n)在开区间(iMin,iMax)

我们可以用上述内容单独对有着三维的矩阵赋值一维:

可以看到,E矩阵前两维还是0矩阵,第三维变成了随机矩阵。

相关推荐
云间月13141 小时前
飞算JavaAI智慧教育场景实践:从个性化学习到教学管理的全链路技术革新
学习·飞算javaai挑战赛
weixin_456904273 小时前
一文讲清楚Pytorch 张量、链式求导、正向传播、反向求导、计算图等基础知识
人工智能·pytorch·学习
Blossom.1183 小时前
把 AI 推理塞进「 8 位 MCU 」——0.5 KB RAM 跑通关键词唤醒的魔幻之旅
人工智能·笔记·单片机·嵌入式硬件·深度学习·机器学习·搜索引擎
草莓熊Lotso4 小时前
《吃透 C++ 类和对象(中):const 成员函数与取地址运算符重载解析》
c语言·开发语言·c++·笔记·其他
Python私教4 小时前
从“Hello World”到“高并发中间件”:Go 语言 2025 系统学习路线图
学习·中间件·golang
玖別ԅ(¯﹃¯ԅ)5 小时前
PID学习笔记6-倒立摆的实现
笔记·stm32·单片机
想学全栈的菜鸟阿董6 小时前
Django5个人笔记
笔记
Brookty6 小时前
【Java学习】锁、线程死锁、线程安全2
java·开发语言·学习·java-ee
ZZHow102412 小时前
JavaWeb开发_Day05
java·笔记·web