matlab小白入门的基本使用

一.基本运算

加:a=5+5 减:a=5-2 立方:a=2^3 乘:a=2*3

|---------|-----------------------------------------------------------------------------------|
| ans | 默认变量名,应答最近依次操作运算结果 |
| eps | 浮点数的相对误差 |
| i,j | 虚数单位,定义==-1 |
| inf | 代表无穷大 |
| ++NaN++ | 代表++不定值++(不是数字) |
| pi | 圆周率 |

二.变量

2.1简单获取

1.计算=a*3,a=2

Matlab 复制代码
clear all %清空
clc %情况工作区
a=2;
b=a*3;
b
  1. 通过用户输入来获取变量
Matlab 复制代码
x=input('请输入数字') %input用于接收数字
y=x*3

3.使用预定变量

Matlab 复制代码
r=1
L=2*pi*r
S=pi*r*r

2.2数据显示格式

format long 显示小数点后16位

format short 显示小数点后4位

Matlab 复制代码
%e.i1
format long,pi
format short,pi
%e.i2
format short
a=1.2365846

2.3关系运算符

真:返回1 假:返回0

Matlab 复制代码
a=5,b=3
a>b   %大于
a==b  %等于
a<b  %小于

三.向量

3.1数组/矩阵

1.手动输入数组。

元素之间用空格/逗号,分号用于换行,制作多行多列矩阵

Matlab 复制代码
r1 = [7 8 9 10]
r2 = [1,6,9,5]
r3 = [1;5;6;2]
r4 = [1 2;8 2;5 9]

2.冒号创建

x = 开始:间隔:结尾

Matlab 复制代码
x=1:2:13

3.linspace函数创建线性间隔向量

linspace(开始,结束,元素个数)默认个数100

Matlab 复制代码
y=linspace(1,30,10)

3.2向量点积

1.直接.*

Matlab 复制代码
a = [1 5 6 3];
b = [4 5 6 2];
c=a.*b
sum(c)

2.使用dot函数点积

Matlab 复制代码
d=dot(a,b)

3.3向量交叉运算

使用cross函数 cross(a,b) 注意:a和b必须为三维向量

Matlab 复制代码
a = [1 2 3];
b = [4 5 6];
c=cross(a,b)

四.交互式命令

4.1input用户输入

Matlab 复制代码
x = input('请输入数字:');
x

4.2disp显示命令

disp(x) 显示变量x的值

Matlab 复制代码
a = 2*6;
b = a*5;
disp(b)

4.3pause暂停命令

Matlab 复制代码
a = 2*6;
pause
b = a*5;

五.分支结构

5.1if-end

if 表达式

语句组

end

ei.

Matlab 复制代码
clear all
clc
a=6;
b=1;
if a>b
    fprintf('a大于b')
end

5.2if-else-end

Matlab 复制代码
clear all
clc
a=6;
b=1;
if a>b
    fprintf('a大于b')
else
    fprintf('a不大于b')
end

5.3if-elif-end

判断输入的数字的奇偶性

Matlab 复制代码
clear all
clc
x=input('请输入数字:')
c=rem(x,2)  %求余数的函数
if c==1
    fprintf('x为奇数')
elseif c==0
    fprintf('x为偶数')
else 
    fprintf('非数字')
end

5.4嵌套if

if 表达式

语句组

if 表达式

语句组

end

end

判断学号是否正确,且为偶数

Matlab 复制代码
clear all
clc
y==input('请输入学号:')
if y==124
    if rem(y,2)==0
        fprint('学号正确,且为偶数')
    end
else
    fprintf('学号错误')
end

六.循环结构

6.1for循环

for 变量=表达式

执行语句

end
表达式格式通常为 f:s:l

f:开始,l:结束,s:默认为1

%d \n 表明结果只能输入十进制整数,\n是普通字符中的换行符

遍历数字1到100

Matlab 复制代码
for a=1:100
    fprintf('值a : %d \n',a)
end

可以设置间隔,间隔可以是负数

Matlab 复制代码
for a=1:10:100
    fprintf('值a : %d \n',a)
end

右侧也可以是向量

Matlab 复制代码
for a = [2 5 9 3]
    disp(a)
end

6.2while循环

while 表达式

语句组

end

遍历小于10的数字,并累加求和

Matlab 复制代码
i=0;
sum=0;
while(i<10)
    sum=sum+i;
    i=i+1;
end
fprintf('累加和为:%d \n',sum)

七.函数

7.1普通函数

function 输出形参表 = 参数名(输入形参表)

写一点关于函数的摘要

写一点参数说明

函数体语句

end

!手动新建函数

执行函数的形式:

[输出实参表] = 函数名[输入实参表]

ei编写函数:如果x>0,则y=2x;如果x<0,则y=x^2;如果x=0,则y=2

Matlab 复制代码
function y=f(x)
if x>0
    y=2*x;
elseif x==0
    y=2;
else
    y=x^2;
end
disp(y)
end

7.2匿名函数

f = @(变量列表)表达式

Matlab 复制代码
close all;
clc;
b = @(x)(sin(x)+cos(x));  %创建关于x的匿名函数
c = b(pi)  %带入pi

d = @(x,y)(sin(x)+cos(y));   %创建关于x和y的匿名函数
e = d(pi,pi)  %带入pi值测试

7.3嵌套函数

function x = A(p1,p2)

...

function y= B(p3)

...

end

...

end

ei计算一元二次方程(qiantao2)

Matlab 复制代码
function [x1,x2] = qiantao2(a,b,c)
%定义函数qiantao2计算一元二次函数
d=0;  %初始化
function disc
d = sqrt(b^2-4*a*c);
end
disc;  %输出d
x1 = (-b+d)/(2*a);
x2 = (-b-d)/(2*a);
end

八.绘图

8.1散点图

Matlab 复制代码
x=[75;78;51;82;77;88;41;78;78;61;71;74;62;81;75;64;80;72;51;80;56;73];
y1=[208;146;168;149;208;102;130;155;163;154;145;147;143;161;145;120;153;158;123;163;177;148];
scatter(x,y1)  %直接绘制
Matlab 复制代码
%加颜色  r:红色
scatter(x,y1,'r')
sz = 25;
c = linspace(1,10,length(x));  %创建向量
scatter(x,y1,sz,c,'filled')

8.2条形图

ei张三各门成绩:94,62,85,25

Matlab 复制代码
x = [1:4];
y = [94 62 86 25];
bar(x,y)
xlabel('科目')
ylabel('成绩')
title('条形图')

8.3概率分析图

Matlab 复制代码
clear all;
clc;
A=[2 3 4 5 6 7 8]
tabulate(A) %绘制正整数频率使用

8.4读取excel画图

Matlab 复制代码
clear all;
clc;
filename = 'EdgeContour1.xls';
sheet = 1;
xlRange = 'A1:A3887';
ylRange='B1:B3887';
A = xlsread(filename,sheet,xlRange)
相关推荐
hccee13 分钟前
C# IO文件操作
开发语言·c#
hummhumm18 分钟前
第 25 章 - Golang 项目结构
java·开发语言·前端·后端·python·elasticsearch·golang
J老熊28 分钟前
JavaFX:简介、使用场景、常见问题及对比其他框架分析
java·开发语言·后端·面试·系统架构·软件工程
Matlab精灵40 分钟前
Matlab科研绘图:自定义内置多款配色函数
算法·matlab
zmd-zk42 分钟前
flink学习(2)——wordcount案例
大数据·开发语言·学习·flink
好奇的菜鸟1 小时前
Go语言中的引用类型:指针与传递机制
开发语言·后端·golang
Alive~o.01 小时前
Go语言进阶&依赖管理
开发语言·后端·golang
花海少爷1 小时前
第十章 JavaScript的应用课后习题
开发语言·javascript·ecmascript
手握风云-1 小时前
数据结构(Java版)第二期:包装类和泛型
java·开发语言·数据结构
喵叔哟1 小时前
重构代码中引入外部方法和引入本地扩展的区别
java·开发语言·重构