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语句)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/561535.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 四人帮,Java PatternDesign of GOF(四人帮巨著,享誉15年)第十五模式

Java PatternDesign of GOF(四人帮力作,享誉15年)第十五模式Java PatternDesign of GOF(四人帮力作,享誉15年)第十五模式板桥里人 http://www.jdon.com 2002/04/21(转载请保留)Chain of Responsibility(CoR) 是用一系列类(classes)试图处理一个请求reque…

php火车订票系统设计论文,基于JSP的火车票订票系统 JSP146(毕业设计+论文)

摘 要随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分使用计算机对火车信息进行管理,具有手工管理所无法比拟…

php cachelock,巧用lock解决缓存击穿的解决方案

背景缓存击穿是指缓存中没有但数据库中有的数据(一般是缓存时间到期),这时由于并发用户特别多,同时读缓存没读到数据,又同时去数据库去取数据,引起数据库压力瞬间增大,造成过大压力。解决方案1、设置热点数据永远不过期…

nginx php 防止跨站,Nginx下多网站单独php-fpm进程目录权限防跨站

Nginx下开多个虚拟机网站防跨站是首要的任务,PHP5.3之前的版本不支持open_basedir,只能通过控制PHP-cgi进程及目录用户权限进行限制,防止跨站访问。先了解一下网站正常运行所用到的用户、目录权限:Nginx进程运行用户:接…

php wmi,window_Win7系统中的wmi控件是什么?有什么用?,  wmi控件是什么Windows - phpStudy...

Win7系统中的wmi控件是什么?有什么用?wmi控件是什么Windows Management Instrumentation (WMI) 控件是一种工具,可以用它配置远程计算机或本地计算机上的 WMI 设置。wmi控件功能1、备份储存库可以配置 WMI 控件以定期备份 WMI 储存库&#xf…

php使用aes256加密,PHP中的AES-256加密

看看mcrypt moduleAES-Rijndael的例子取自here$iv_size mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC);$iv mcrypt_create_iv($iv_size, MCRYPT_DEV_URANDOM);$key pack(H*, "bcb04b7e103a0cd8b54763051cef08bc55abe029fdebae5e1d417e2ffb2a00a3");#…

mysql 目录更改 php,Linux下更改MySQL目录

MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步: 1、home目录下建立da更改MySQL目录MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步:1、home目录下建立data…

php扩展返回字符数组,PHP扩展之数组字符串处理

今天介绍一下PHP扩展来处理数组和字符串,附带一个对比原生PHP的处理效率:我的测试机是装的PHP5.6.12,实现下面这个功能:function phprandstr($a, $z, $n) {$b array();$max count($a);for ($i 0; $i $tmp "";for ($j 0; $j $z…

jsp源码oracle数据库,JSP与oracle数据库交互案例

本案例为咖啡销售情况录入查询系统一、数据输入系统:1. 设计输入信息页面代码如下:咖啡管理系统——录入系统欢迎来到录入系统vcm0gYWN0aW9uPQ"inputaction.jsp" method"post" name"form1" id"form1">咖啡名…

oracle查询可更新结果集,jdbc 可更新结果集

jdbc中ResultSet在jdk 5.0以后默认都是可滚动的,不可更新的。可滚动的意思是我们可以调用absolute(),previous(), first()等操作来更新结果集中的指针位置。当我们需要结果集可更新的时候,可以设置它的值为ResultSet.CONCUR_UPDATABLE&#…

oracle 28000错误码,Oracle数据库 ORA-28000 错误处理方式

Oracle数据库ORA-28000错误处理方式ORA-28000:the account is locked-的解决办法ORA-28000:the account is locked第一步:使用PL/SQL,登录名为system,数据库名称不变,选择类型的时候把Normal修改为Sysdba;第二步:选择myjob,查看us…

为什么选择matlab,matlab选择语句

matlab程序if语句用法MATLAB中我们常常用到条件判断语句结构,通过实例介绍这个结构的用法: 1、if。..end结构,运行下面的句子,此条件语句是判断5是否大于3,如果大于3,就将1赋值给; 2、if。.else…

崔华 oracle简历,2013数据库大会:崔华-基于Oracle的SQL优化案例分析

2013数据库大会:崔华-基于Oracle的SQL优化案例分析崔华的新书即将出版,其数据库大会上的演讲也非常精彩,他的新书十分值得期待。2013年中国数据库技术大会第二天的"Oracle架构与优化"专场中,来自中航信资深Oracle数据库工程师崔华为…

模板消息 php实例,PHP微信模板消息操作示例

本文实例讲述了PHP微信模板消息操作方法。分享给大家供大家参考,具体如下:微信SDK:class Oauth {//获得全局access_tokenpublic function get_token(){//如果已经存在直接返回access_token//if($_SESSION[access_token] && $_SESSION…

非阻塞 php,PHP异步非阻塞之路

需求一个简单的需求,提交大量数据到远程服务器,此时并不需要等待返回。另一个需求,获取API数据,同时查询数据库,并行处理,加快响应速度。配置问题set_time_limitignore_user_abortfastcgi_finish_request只…

linux进程监控自动重启,Linux监控进程,进程关闭自动重启方案

Linux监控进程,进程关闭自动重启方案corntabshell脚本检测进程这个方案简单不用额外安装软件。缺点是存在间隔,corntab设置1秒执行一次shell脚本也是存在间隔的#!/bin/bash#author smallForest#email 1032817724qq.comproc_name"xiaofei.php" …

https脚本调linux执行器,linux平台下一键配置网站https

部署过SSL证书的人都知道,申请和部署一张SSL证书是相当繁琐而漫长的过程,枯燥无味的部署指南、非常容易出错的命令、复杂的编辑配置等等,在linux平台下,更加痛不欲生。LZ试用了SSL证书自动配置工具,支持linux平台下自动…

linux内核是否支持nfs,嵌入式命令:查看设备是否支持nfs

1:查看设备是否支持nfs功能命令: cat /proc/filesystems若有一行为 nodev nfs,则开发板Linux内核支持NFS,反之需要配置内核同样方法查看Linux主机内核是否支持NFS挂载文件系统的时候遇到:[rootHZCTC-hadoop-0-81 hadoo…

linux6同步时间,centos 6.x 同步网络时间

1. linux时间介绍Linux的时间分为System Clock(系统时间)和Real Time Clock (硬件时间,简称RTC)。系统时间:指当前Linux Kernel中的时间。硬件时间:主板上有电池供电的时间。2. 手动设置时间查看系统时间的命令:date设置系统时间的…

linux6.5如何打开ftp服务,CentOs6.5上快速搭建ftp服务器

1、用root 进入系统2、使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了vsftp,使用这个命令会在屏幕上显示vsftpd的版本3、使用命令rpm -e vsftpd 即可卸载ftp4、再使用rpm -qa|grep vsftpd 查看系统是否已删除ftp,若删除成功…