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)
相关推荐
qq_433554545 分钟前
C++ 面向对象编程:+号运算符重载,左移运算符重载
开发语言·c++
数据小爬虫@24 分钟前
如何高效利用Python爬虫按关键字搜索苏宁商品
开发语言·爬虫·python
ZJ_.26 分钟前
WPSJS:让 WPS 办公与 JavaScript 完美联动
开发语言·前端·javascript·vscode·ecmascript·wps
Narutolxy31 分钟前
深入探讨 Go 中的高级表单验证与翻译:Gin 与 Validator 的实践之道20241223
开发语言·golang·gin
Hello.Reader39 分钟前
全面解析 Golang Gin 框架
开发语言·golang·gin
禁默1 小时前
深入浅出:AWT的基本组件及其应用
java·开发语言·界面编程
Code哈哈笑1 小时前
【Java 学习】深度剖析Java多态:从向上转型到向下转型,解锁动态绑定的奥秘,让代码更优雅灵活
java·开发语言·学习
程序猿进阶1 小时前
深入解析 Spring WebFlux:原理与应用
java·开发语言·后端·spring·面试·架构·springboot
qq_433618441 小时前
shell 编程(二)
开发语言·bash·shell
charlie1145141911 小时前
C++ STL CookBook
开发语言·c++·stl·c++20