2022Matlab小白入门详细教程

这篇具有很好参考价值的文章主要介绍了2022Matlab小白入门详细教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文适合哪些对象?

  1. 有一点点的编程基础的,想要学习Matlab的小白。
  2. 正在学习Matlab,基础也没搞明白的人。
  3. 大学生、研究生想要打数学建模相关竞赛,需要使用到该语言的人

最后一句:基础内容其实并不对,不要被外部的一些机构,书籍等误导,请对本文的所有内容完全掌握,内容很少,花两天学会,后续请花时间学习算法。

一、基本运算

基本加减乘除:

a=5+5 %加法,同理减法

b=2^3  %立方,

c=5*2 %乘法

x = 1; %分号用于不显示
y = x + 5

常见变量:
2022Matlab小白入门详细教程

二、变量

2.1 基础

在上面小节,我们看到的左边就是字母就叫做变量。很简单,这里随便举几个例子就学会了。
(1)计算=a*2,a=5

clear all %清空
clc % 情况工作区
a=5;
b=a*2;
b

(2)通过用户输入来获取变量x的值,计算y=x*3

x=input('请输入数字') %input用于接收数字
y=x*2

(3)使用预定变量,常见的比如pi,inf,eps,NaN

r=1
L=2* pi *r
S=pi*r*r

2.2 数据显示格式

默认情况下,MATLAB 四个小数位值显示数字。这就是所谓的 short format。如果想更精确,需要使用 format 命令。长(long ) 命令格式显示小数点后16位。

注:一般来说,我们不会太在乎精度,能保留四位数就可以了,所以这个不怎么用得到。

通过以下两种方式对比即可理解,注意逗号分开:

format long ,pi 
format  short ,pi

再来个例子:

format short %直接声明为短型
a=3.1415926

2.3 基本关系运算符

常见大于等于小于,如果为真返回1,否则返回0:

a=5
b=2
a>b %大于
a==b %等于
a<b %小于

三、向量

3.1 基础

就是数组,矩阵的形式,举两个例子就知道了。
(1)手动输入数组。元素时间用空格/逗号,分号分割。其中逗号与空格等价。分号用于换行,制作多行多列矩阵。

r = [7 8 9 10 11] 

r2 = [7 8 9 10 11]

c = [7;  8;  9;  10; 11]

d=[1 2 ;3 4 ;5 6]

(2)冒号创建。格式:x=开始:间隔:结尾

x=2:2:10

(3)linspace函数创建线性间隔向量。基本格式:linspace(开始,结束,元素个数),默认个数为100。

y=linspace(1,20,10)

3.2 向量点积

矩阵相乘,自然是点积,不是直接的乘法。以几个例子作为说明。
(1)直接.*

a=[1 2 3 4 5];
b=[6 7 8 9 10];
c=a.*b
sum(c)

(2)使用dot函数点积

d=dot(a,b)

3.3 向量交叉运算

使用cross函数,基本格式为:cross(a,b)。前提:a和b必须为三维向量。例如:

a=[1 2 3 ];
b=[6 7 8 ];
c=cross(a,b)

四、交互式命令

4.1 input用户输入

其实在前面已经提到过了,这里再强调一次。

x=input("请输入数字:");
x

4.2 disp显示命令

基本格式:disp(x),显示变量x的值。例如:

a=5*3;
b=a*5;
disp(b)

4.3 pause暂停命令

pause用于暂停程序。例如下面只执行pause上面语句:

a=5*2
pause
b=a*2

五、分支结构

5.1 if-end

语法格式为:

if  表达式
	语句组
end

例如:比较a和b的大小

clear all
clc
a=5;
b=2;
if a>b
    fprintf("a大于b")
end

5.2 if-else-end

例如:

clear all
clc
a=5;
b=2;
if a>b
    fprintf("a大于b")
else
    fprintf("a不大于b")
end

5.3 if-elif-end

例如:输入一个数字,判断奇数和偶数

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

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

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

六、循环结构

6.1 for循环

基本格式:

for 变量=表达式
  执行语句
end

表达式的通常格式为f:s:l,s默认为1,m表示开始,l表示结束。举个例子说明:遍历数字1到10

for a = 1:10 
  fprintf('值a: %d \n', a);
end

同理可以设置间隔:

for a = 1:2:10 
  fprintf('值a: %d \n', a);
end

间隔也可以为负数:

for a = 1.0: -0.1: 0.0
   disp(a)
end

右侧也可以是向量:

for a = [2 3 4 5 6]
   disp(a)
end

6.2 while循环

基本格式:

while 表达式
   语句组
end

举个简单的例子:遍历小于10的数字,并累加求和

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

七、函数

7.1 普通函数

编写函数一般在.m文件中编写。函数文件由function语句引导,基本结构为:

function 输出形参表 = 函数名(输入形参表)
% 写一点关于函数的摘要
% 写一点参数说明
	函数体语句
end

手动新建函数:
2022Matlab小白入门详细教程
执行函数的形式:

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

例如编写一个函数:如果x>0,则y=2x;如果x<0,则y=xx;如果x=0,则y=0

function y= f(x)
%   x为一个整数
if x>0
    y=2*x;
elseif x==0
    y=0;
else
    y=x*x;
end
disp(y)
end

执行:
2022Matlab小白入门详细教程
这就是一个常见的普通函数。文件名与函数名保存是一致的。

7.2 匿名函数

匿名函数基本格式:

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

举两个例子如下(niming.m):

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

举个例子:计算一元二次方程(qiantao2.m)

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

测试案例:qiantao2(1,-2,1)
2022Matlab小白入门详细教程

再来个测试案例:qiantao2(2,4,-4)
2022Matlab小白入门详细教程

八、数据可视化

8.1 优美散点图

举个例子,有如下的数据,分别表示为年龄,人体血压高压:

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函数:

scatter(x,y1) %直接绘制

完整为:

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)

绘制如下:
2022Matlab小白入门详细教程
想要它好看点呢?绘制为红色,添加个r参数即可,它为red缩写:

scatter(x,y1,'r')  %填充颜色绘制为红色

绘制如下:
2022Matlab小白入门详细教程
如果你还想绘制更加好看呢?多彩一点!

c = linspace(1,10,length(x)); %创建向量

scatter(x,y1,[],c) 

绘制如下:
2022Matlab小白入门详细教程
再来,填充并标记的散点色彩图:

sz = 25;
c = linspace(1,10,length(x));
scatter(x,y1,sz,c,'filled') 

绘制如下:
2022Matlab小白入门详细教程
本节完整代码:

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)

scatter(x,y1,'r')  %填充颜色绘制为红色

c = linspace(1,10,length(x)); %创建向量

scatter(x,y1,[],c)

sz = 25;
c = linspace(1,10,length(x));
scatter(x,y1,sz,c,'filled') 

8.2 条形图

例如张三的各门课成绩分别为:94,54,65,87,使用这个数据,我们将绘制条形图。

x = [1:4]; %x个数一定要与y个数对应
y = [94,54,65,87];
bar(x,y) %使用bar函数
xlabel('科目')
ylabel('成绩')
title('条形图')

绘制如下:
2022Matlab小白入门详细教程

8.3 概率分析图

请参考:数学建模学习(5):最全概率分析之图表绘制详解
本片文章有着详细的教程,因此我便不再重述。

8.4 读取excel画图

请参考:数学建模学习(46):读取excel数据plot画图

九、更多请参考

参考matlab官方文档:

  • plot函数
  • scatter函数

如果你还想学习更多关于Matlab的一些函数使用方法,请持续学习文档。

十、本文代码获取

本篇教程所有代码获取方式:

公众号:玩转大数据
回复:20220710

内容如图:
2022Matlab小白入门详细教程

十一、数学建模算法讲解

请参考本专栏:数学建模丛小白到精通之路,本专栏一直更新,从未断过。

本专栏使用的编程语言:

  • Matlab
  • Python

我对你的期望:

  1. 掌握python基础,python基础专栏教程:python全栈基础教程
  2. 掌握matlab基础。本篇是对matlab的一些重点基础做了总结,要谈到细枝末节,请结合本专栏第一篇文章开始学习,如果你已经有一定基础,请直接看本片作为回顾即可。
  3. 熟悉Python中的pandas模块,虽然本专栏并没有专门对该模块写过教程,但我希望你能自学该模块,因为专栏中的后续学习中都用到了该模块。

我的祝愿:希望大家拿奖到手软!——川川菜鸟文章来源地址https://www.toymoban.com/news/detail-400870.html

到了这里,关于2022Matlab小白入门详细教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • nginx(NGINX)详细下载安装及使用教程(非常适合入门)

    文章目录 目录 前言 一、如何下载 1.打开nginx官网 2.点击下载 ​编辑 3.选择稳定版本(windows)​编辑  4.然后就是解析安装到指定目录下 二、启动nginx服务器 1.启动服务器 2、再是查看任务进程是否存在,dos或打开任务管理器都行  3、最后一步是打开我们的浏览器访问刚才的

    2024年02月16日
    浏览(50)
  • 适合小白的超详细yolov8环境配置+实例运行教程,从零开始教你如何使用yolov8训练自己的数据集(Windows+conda+pycharm)

      目录 一、前期准备+所需环境配置  1.1. 虚拟环境创建 1.2 下载yolov8源码,在pycharm中进行配置 1.2.1 下载源码 1.2.2 在pycharm终端中配置conda 1.3 在pycharm的terminal中激活虚拟环境  1.4 安装requirements.txt中的相关包 1.5 pip安装其他包 1.6 预训练权重的下载  1.7 验证环境配置是否成功

    2024年02月05日
    浏览(79)
  • GoogleTest从入门到入门,小白都能看懂的gtest详细教程

    单元测试 项目管理和技术管理中做单元测试,衡量一个软件是否正常的标准,良好的单元测试以及足够多的覆盖率,至少保证关键功能,关键业务的覆盖率接近100%。 gtest是谷歌公司发布的一个跨平台(Linux、Mac OS、Windows等)的C++单元测试框架,它提供了丰富的断言、致命和

    2024年02月07日
    浏览(51)
  • Android Studio入门级教程(详细)【小白必看】[通俗易懂]

    Android Studio如何使用 本文主要讲解一下Android Studio使用方法 步骤: 1.建立项目 首先点击new——new project新建项目 选择想要创建的Android 的模板,建议选择empty activity(空模板),然后next Name:给你的项目起一个名字 API level:选择Android 虚拟机的版本,版本越低运行起来越快 剩

    2024年02月08日
    浏览(55)
  • playwright教程 (一)适合小白

    playwright是微软发布的一款自动化测试工具,可以自动生成代码 在学习playwright前可以了解playwright文档,目前只有英文版!

    2024年02月10日
    浏览(36)
  • 零基础学Python入门教程非常详细(从小白到高级)

    第一章-第五章(5.1-5.4):简介、配置与基础知识 第六章:判断语句 Python它是一种直译式,面向对象,解释式的脚本语言。它和Java,C/C++,Go语言一样都是高级语言,但由于它是解释式语言,所以运行速度会比Java,C/C++等语言慢(虽说隔壁Go也是解释式语言,但比它快很多)。不

    2024年01月19日
    浏览(45)
  • 数据结构之单链表非常详细介绍(适合小白)

    之前有一篇文章介绍完顺序表,可以点击(顺序表文章)即可看到顺序表的知识后,我们就要开始学习链表了,链表的种类有很多,比如说 单链表 、 双向链表 、 循环或者非循环链表 以及 带头或者不带头链表等 ,那么链表和顺序表有哪些不同呢,相较于顺序表,链表做了哪些

    2024年02月06日
    浏览(42)
  • c++ set用法详解超详细 适合零基础小白

    目录 1.set简介  2.插入数据  3.删除数据  4.其它常用方法 set 是 C++ 标准库中的一个容器,属于关联容器的一种。它是一个有序集合,其中的元素是唯一的,即每个元素只能在集合中出现一次。 set 是基于红黑树实现的,这使得插入、删除和查找操作的时间复杂度都是 O(log n)。

    2024年04月28日
    浏览(45)
  • 适合小白学习的GAN(生成对抗网络)算法超详细解读

    “GANs are \\\'the coolest idea in deep learning in the last 20 years.\\\' ” --Yann LeCunn, Facebook’s AI chief   今天我们就来认识一下这个传说中被誉为过去20年来深度学习中最酷的想法——GAN。  GAN之父的主页: http://www.iangoodfellow.com/  GAN论文地址: https://arxiv.org/pdf/1406.2661.pdf 目录 前言  📢一、

    2024年02月02日
    浏览(47)
  • 安装pytorch+配置pycharm解释器(超级详细适合小白)

    创建pytorch虚拟环境(GPU版本) 1.进入anaconda的终端窗口 2.查看虚拟环境 3.创建虚拟环境 注:可以先换源,否则后面下载很慢,换源可以参考其他博客,这里不在赘述 4.创建完成之后,进入虚拟环境 5.进入pytorch官网,找到自己电脑可以接受的配置,复制安装指令 官网:https:

    2024年02月14日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包