matlab 当已知两个矩阵满足分别一定条件时_程序继续执行,MATLAB程序设计基础
2.1常量与变量
2.1.1 特殊常量
变量名
功 能 说 明
ANS(ans)
缺省变量名,以应答最近一次操作运算结果
i或j
虚数单位
Pi
圆周率
NaN
Not-a-number,表示不定值
tic
秒表开始执行
INF(inf)
代表无穷大
toc
秒表停止
Date
日历
Clock
时钟
2.1.2一般变量
变量命名遵守的原则:
1、 变量名区分大小写
2、 变量名长度不超过31位,超过的将被忽略
3、 变量名以字母开头,可以由字母、数字、下划线组成,但不能使用标点
2.2数组
2.2.1 建立数组
方法:1、逐个元素输入法 x=[1 2 ; 2 3;4 5]
2、冒号法 x=初始值:步长:终止值
3、特殊方法 x=linspace(初始量,终止量,数组元素个数)
y=logspace(初始量,终止量,数组元素个数)
2.2.2 引用数组
1、 一维数组
调用格式 x(n) x(n1:n2)
2、 二维数组
调用格式 x(m,:) x(:,n) x(m,n) x(m,n1:n2)
2.3运算符
2.3.1 算术运算符
操作符
功能说明
操作符
功能说明
+
加
\
算术左除
-
减
.\
点左除
*
算术乘
/
算术右除(传统)
.*
点乘
./
点右除
^
算术乘方
´
算术转置
.^
点乘方
.´
点转置
2.3.2 关系运算符
操作符
功能说明
==
等于
~=
不等于
>
大于
<
小于
>=
大于等于
<=
小于等于
2.3.3 MATLAB逻辑关系运算符
逻辑运算符
逻辑运算
说明
&
And
逻辑与
∣
or
或
~
Not
非
Xor
Xor
异或
逻辑运算规则
输入
与
或
异或
非
a
b
a&b
a|b
xor(a,b)
~a
0
0
0
0
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
0
0
例1:逻辑矩阵A=[1 1 ;0 1]、B=[0 1; 0 0],逻辑标量b=0,求c1=A&b ,c2=A|b, c3=xor(A,B)
2.3.4 逻辑函数
逻辑函数
函数意义
all
判断是否所有元素为非零值
any
判断是否存在一个元素为非零值
exist
查看变量或函数是否存在
find
找出向量或矩阵中非零元素的位置标识
isempty
判断矩阵是否为空矩阵
isequal
判断几个对象是否相等
isnumeric
判断对象是否为数值型
例2:向量a=[1 3 5] ,矩阵A=[1 2 3 ;0 4 5] ,求B1=all(a) B2=all(A)
B3=all(A,2)
例3:向量a=[0 3 0] ,矩阵A=[1 0 3;0 0 5] ,求B1=any(a) B2=any(A)
B3=any(A,2)
例 4:矩阵A=[1 0 3;0 0 5] ,求k=find(A) [I,j]=find(A) [I,j,v]=find(A)
例5:矩阵A=[0.34 0.6] ,B=[0.34;0.6] ,C=[‘who’],判断A与B、A与C是否相等
例6:矩阵A=[0.34 0.6] , B=[1+2*i 0.6+3*i] ,C=[‘who’],判断A、B、C是否为数据矩阵。
2.3.5 MATLAB特殊运算符
需要特别指出,下表中的特殊运算符是指在英语输入状态下输入的字符,若在汉字输入状态下输入则无效。
MATLAB特殊运算
符号
功能说明
:
冒号,在MATLAB中非常重要
;
分号,用于分隔行
,
逗号,用于分隔列
( )
圆括号,指出在算术表达式中先后次序
[ ]
方括号,用于构成向量和矩阵
{ }
大括号,用于构成单元数组
.
小数点或域访问符
..
父目录
…
用于语句行尾端表示该行未完
%
用于注释
!
用于调用操作系统命令
=
用于赋值
经常使用的MATLAB特殊运算符,功能说明如下:
(1)冒号(:)
①使用冒号可以输入行向量,其格式为:x = a : inc : b 。
a 是数组的第一个元素,inc是步长(两个元素的间隔),步长可正可负; a、inc、b三者之间用冒号分隔;当inc=1时可以省略。
【例2-1】在MATLAB命令窗口输入指令并回车(以下举例同此)。
(1)a= 10:5:30(2)a= 10:-1:0(3)a= 10:15
②使用冒号能够从向量、矩阵和数组中选出指定元素、行和列。
【例2-2】使用冒号选出指定元素。
1 2 3
A = 4 5 6
7 8 9
A= [1 2 3;4 5 6;7 8 9 ];
A(1:2,3)
③使用冒号能够从一个大矩阵中选取小矩阵。
【例2-3】使用冒号选取小矩阵示例。
1 2 3
A = 4 5 6
7 8 9
A= [ 1 2 3;4 5 6;7 8 9 ];
B= A(2:3,:)
(2)方括号([ ])
方括号可以输入矩阵,也可用方括号删除矩阵的行和列,此时方括号[ ]代表空阵。
【例2-4】用方括号删除矩阵的行和列。
A= magic(4);A
A(:,3)=[ ];
A
2.3.6数组函数
MATLAB 的基本数组函数
函数名
功能
函数名
功能
exp
指数
angle
复数的相角
log
自然指数
conj
复数的共轭
log10
常用对数
imag
复数的虚部
sqrt
平方根
real
复数的实部
abs
绝对值(复数的模)
sign
符号函数
2.3.7矩阵函数
1、矩阵生成函数
(1)zeros ( )函数
zeros ( )函数能够生成元素全为0的矩阵
(2)ones ( )函数
ones ( )函数能够生成元素全为1的矩阵
(3) magic ( )函数
在MATLAB中,magic ( )函数是一个特殊的函数,该函数能够自动生成一种特别的N 阶方阵(其中,N =1,3,4,5…)叫做魔方阵,这些N阶方阵具有一个共同的奇妙特性,即每一行,每一列或对角线上的元素之和都相等。
(4)diag ( ) 函数
diag ( ) 函数可以生成对角矩阵
(5)triu ( ) 函数
triu ( ) 函数可以生成上三角矩形
(6)tril ( )函数
tril ( )函数可以生成下三角矩形
(7)size ( )函数
size ( )函数用来返回指定矩阵的行数和列数
(8) eye( )函数
eye( ) 函数可以生成指定行数和列数的单位矩阵。
eye( )函数和size ( )函数常常一起使用,用以生成与指定矩阵同维的单位矩阵。
2.4 m文件
M文件可以在程序编译器、文本编译器中编写,都以‘.m’为扩展名存储。MTALAB语言中的m文件可以分为命令文件和函数文件两种。
2.4.1 命令文件
命令文件比函数文件简单,没有输入参数和输出参数,只是命令行的组合。
例 :分别绘制花瓣图案: (程序见’ 2.4.1.m’)
2.4.2 函数文件
用来定义一个函数,必须指出函数名、输入输出参数,并有MTALAB语句序列的操作与处理,从而生成所需要的数据。
函数文件格式包括:
(1) 函数定义行:定义函数名、输入输出参数。
(2) 帮助信息第一行:反映该m文件概括性的信息
(3) 帮助正文:从第二行到非注释行之间的注释为帮助正文
(4) 函数体:所有计算过程和输入输出参数的MTALAB代码
(5) 注释:以%开头
例:定义一个名为f.m的函数文件,并调用该函数。(object1.m)
2.4.3 m文件的调试
1、 m文件错误的种类
2、 识别错误:
2.5程序设计
2.5.1 顺序结构
依次执行程序各条语句。(2.5.1.m)
2.5.2 分支结构
1、 条件语句(if—else--end)
[一般形式] if
‘真’执行
Else
‘假’ 执行
end
[简化形式] if
‘真’执行
End
[嵌套形式] if
‘1真’执行
elseif
‘2真’执行
elseif
‘3真’执行
…..
Else
‘假’ 执行
end
例 (2.5.2.1m,a1.m)
2、开关语句(为了解决多分支判断)switch—case—end 即使多条case语句为真,程序只执行遇到的第一条case语句。
[一般形式] switch x
case 选择判断值1 {}
判断语句1
case 选择判断值2
判断语句2
….
otherwise
判断执行语句
end
例(f0233.m)
2.5.3 循环结构
1、 循环语句1(for--end)
适用于已知循环次数,不知道循环运算目标的问题
[调用形式] for 循环变量=
循环体
end
例(2.5.3.1.m)生成一个4行5列的矩阵
2、 循环语句2(while--end)
以条件满足与否来判断循环是否结束
适用于已知循环运算目标,不知道循环次数的问题
[一般形式] while
循环体
end
例 while i==5
A(i)=2;
end
A(i)
3、 循环语句的终止
在while 循环语句中,必须有修改循环控制变量的命令,否则该循环陷入死循环,除非循环语句中有退出循环控制命令(如break语句)。
matlab 当已知两个矩阵满足分别一定条件时_程序继续执行,MATLAB程序设计基础相关推荐
- [MATLAB]从已知矩阵中取出子阵
首先要知道冒号表示法,如下: EX: 如上有4×6矩阵,假设我们要取出第一行,第二行,第四行,则可以有B=A([1 2 4],:) 假设要取出第一行,第二行,第四行的1-2列和4-6列,可以有B=A( ...
- matlab 行列式 未知量,[求助]已知N*N矩阵的行列式,矩阵内有一个未知量?
回复: [求助]已知N*N矩阵的行列式,矩阵内有一个未知量? :biggrin: 原来的题目可能没有说清楚,我的意思如下: 比如有这么一个行列式 a = 1 0 1 0 2 0 0 1 0 2 0 5 ...
- matlab已知函数表达式画函数图像,怎么用matlab画已知函数表达式的一个函数图像?函数比较复杂的……...
点击查看怎么用matlab画已知函数表达式的一个函数图像?函数比较复杂的--具体信息 答:要具体哦,如果一个自变量,函数图像就是曲线,用plot 如果是2个自变量,函数图像就是曲面了,如f=3*exp ...
- Matlab利用已知方阵创建斜对角矩阵
Matlab利用已知方阵创建斜对角矩阵 A=[ 1 2 3 4 ;7 8 9 10 ;13 14 15 16 ;19 20 21 22 ]; 对于小矩阵,直接利用for循环解决 n = size(A, ...
- matlab状态空间法算反馈阵,matlab中已知系统的状态方程怎样绘制系统阶跃响应曲线...
matlab中,怎样设置坐标系统的原点在左上角? axisijx=-pi:0.1:pi;y=sin(x);plot(x,y,'g:'); 谁能帮我做Matlab的作业:分析系统能否通过状态反馈实现镇定 ...
- matlab 椭圆参数传递,用MATLAB绘图已知椭圆参数方程
用MATLAB绘图已知椭圆参数方程为 cos ,[0,2] sin x a t t y b t π= ? ∈ ? = ? 一.实验名称 MATLAB绘图功能 二.实验目的及要求 1.理解MATLAB绘 ...
- matlab 参数方程绘图,用matlab绘图已知椭圆参数方程
用matlab绘图已知椭圆参数方程 1 用MATLAB绘图已知椭圆参数方程为 cos , [0,2 ] sin x a t t y b t 一.实验名称 MATLAB绘图功 ...
- 已知两个时间戳判断这两个时间是否在同一天
已知两个时间戳判断这两个时间是否在同一天 int Same_Day() { char Time1[11] = "1516766666";char Time2[11] = " ...
- 已知两个向量的夹角和其中一个向量,求另一个向量
假设已知两个向量 A 和 B 之间的夹角为 θ,向量 A 的长度为 |A|,求向量 B. 可以使用向量叉积来求解. B = |A| * (cos(θ) * i + sin(θ) * j) , i,j ...
最新文章
- hdu1074 状态压缩dp+记录方案
- 全球及中国豪华游轮行业投资策略分析及“十四五“发展规划建议报告2021-2027年版
- ABAP实例:一个现金流量表的代码
- tensorflow 开始——创建定制化 Estimator(创建自定义评估器)
- DNN出错:The compiler failed with error code 1.
- python企业级框架_Python六大开源框架对比:Web2py略胜一筹
- ae saber插件_入门AE:影视特效中的黑洞是怎么做的?附带教程
- Program terminated with signal SIGSEGV, Segmentation fault.
- if 组件是否存在_UE4 UMG简介+Slate组件问题排查
- 关于tomcat的思考
- SAP License:PM实务
- 初学JAVA,开发环境的搭建(JDK和Eclipse的安装)
- 锌合金铸件压铸方案的优化与应用 | 智铸超云案例分享
- VS2015 如何打包winform 安装程序
- win10无法修改mac地址_电脑MAC地址(物理地址)修改方法
- 室内导航怎么实现?怎么做到零成本实现室内导航?
- PMP学习考试感悟之——坚持、努力是唯一法宝
- 华为服务器修改root密码,华为云服务器root权限设置密码
- 基恩士XG-XvisionEditor程序的上传与下载
- 雷林鹏分享:PHP date() 函数
热门文章
- php http 类,php写的http请求封装类
- linux 源码目录结构,分析Android 源代码编译前后的目录结构
- 服务器采购框架合同协议书范本,手写一个满足WSGI协议的Server
- php实现文本替换,php 如何实现文字替换
- mysql 天数减1_mysql 日期加减天数
- python中文文本分析_python使用snownlp进行中文文本处理以及分词和情感分析 - pytorch中文网...
- python数据科学实践 常象宇_Python数据科学实践
- vue实现查询多条记录_vue.js 实现天气查询
- win10开机密码忘记了的解锁教程
- Android前端音视频数据接入GB28181平台意义