粉丝3300获赞8196



大家好,欢迎收看 mat love 教学视频系列,这里是我的 qq 号和微信号,欢迎大家加我为好友一起探讨 mat love 问题。今天我给大家讲解的是详解数据差值的 mat love 实线,这里是我们今天 教学内容。首先给大家讲解一下一类问题的数学描述,然后给大家讲解一下礼盒和差值的区别,接着会结合具体的案例讲解在 matele 当中如何实现和应用一位差值和二位差值, 最后会给大家对多维差值做一个简介。首先我们来看一下一类数学问题的一个具体描述。 我们已知有一系列的散点数据, x 和 y, x 一, y 一, x 二, y 二, x 三, y 三, x n, y n 这些是一,这些是一系列的已知的散点数据。 然后需要大家根据这些已知的散点数据来评估一下,当 x 的数值在 x q 的时候,他所对应的这个输出值 yq。 比如我们已知五个散点,已知五个散点数据 x y, 这五个散点 x 一, x 二, x 三, x 四, x 五,他们对应的输出值是 y 一, y 二, y 三, y 四和 y 五。我们已知这样的一个五个散点的数据。 然后需要大家来求解一下,当 x 等于 xq 的时候,他所对应的这个数值 yq 应该为多少? 好求解这样的一个问题的话啊,我们通常使用的方法是构造出一个函数, y 等于 ps, 我们用 y 等于 ps 这个函数来近似的替代或者是说来逼近这五个散点的这样的一个数据。 因为这五个散点本身可能是满足一定的函数关系的,但是我们并不知道这个五个散点他所具备的这个具体的函数关系是多少?或者是说即便我们知道这五个散点的一个函数关系,有可能他这个函数关系非常非常的复杂,我们不方便去计算和应用, 所以说这时候我们需要构造出来一个啊,比较简单一点的,或者是说啊比较实用的一个函数,瓦尔等于 px, 我们用瓦尔等于 px 来近似的来代替这个啊 散点数据他所对应的一个函数关系。好,如果我们能构造出这样的一个啊简单的,或者是说比较实用的,方便计算的这样的一个函数, y 等于 px, 用 y 等于 px 来代替这呃散这些散点的这个函数关系的话,那这时候如果我需要求 xq 处的这个值 yq 的话,那我们直直接将这个 xq 我们带入到这个构造出来这个函数里面,自然而然我们就可以求出这个 yq 的这个值了。 好,这是一个,这是一类问题的一个数学描述他的一个背景,然后我们来构造这样的一个函数吧,等于 px 的话,在数学里面有两大类的一个方法, 一种叫数据礼盒的方法,另外一种叫数据差值的一个方法。关于礼盒,礼盒和差值, 可能很多同学啊之前或多或少听过,或者是说也试着去做过一些礼盒与差值的这样的一些程序, 但是可能也有很大一部分同学对礼盒和差值,他的这个啊具体的这个呃关系,或者是说他们的区别不是很了解,这个基本的这个概念没有搞清楚,有时候会导致得到一些错误的一个结论, 所以说我们在正式的讲这一讲,正式的来讲这一讲里面的案例之前,来给大家理一理理和和差值的它的一个区别。我们来看一下下面的这三个图。第一张图 就是我们已知的这些散点数据 xy, 比如说我们有五个这样的一个已知的一个散点。第二张图我们可以看到有这样的一条线,哎,他, 他顺着这些啊,差指点而过,但是他这些线他没有完全的去过这五个差指点。好,对于这种情况的话啊,我们叫礼盒,礼盒的话,这个礼盒曲线他是不一定需要经过这个所有的这个已知的这个离散的数据点的。 我们再来看一下第三张图,这是插直的,这是啊,这是这条曲线啊,大家可以看一下这条曲线刚好过这五个离散的这个数据点 啊,如果是说在这种情况的话,当这个曲线刚好全部过这个已知的离散数据点的话,那么这个啊,这条曲线的话,他就是一个插直曲线。 好,我们直观上来看礼盒和插枕他这个区别,对于礼盒来说,这个礼盒曲线他不一定会啊完全通过这啊已知的这个五个理 看着这个数据点,但是对于差值来说的话,差值曲线一定是需要完全通过这五个零。您现在收看的是五分钟时长的预览版 matelab 教学视频,获取完整版的 matel 教学视频 及更多的 matelab 学习资源,请联系作者的 qq 号和微信号,作者的 qq 号和微信号的昵称都是上下求索,扫一下下面的这两个二维码可以加作者的个人微信以及一个 matelab 的公众号。

各位同学大家好,下面我们继续介绍迈特拉伯的使用,继续介绍他的核心内容。今天我们介绍迈特拉伯的函数, 利用 matter 软件写程序对账程序。文件我们一般分成两种类型,第一种类型呢就是所谓的脚本文件, 脚本文件,第二种我们统称为函数文件,这个区别就是说 脚本文件里面他不会出现三根线这样一个关键字, 那么函数文件他一定会有翻跟线,这样 不只是有,而且啊,而且第一行或者说第一个不是注视的行,他一定要有三个线,并且啊为啊第一行 或者说啊第一个不是注视的行, 这就是说函数文件的特征。 那么脚本文件比较简单,就是相当我们新建一个脚本,然后啊你在这里面直接写代码,用到写上二加上三,然后我们可以选择这个 啊运行,我们也可以把它保存,保存,保存的文件名只要符合定义就可以了。保存,那我们点这个运行,也可以在这个命定仓口看到这个运行的结果。 我们在这个呃平时碰到一些学生常常犯的错误,喜欢用自己的学号作为文件名来保存,比较新建一个文件,他输入啊一 加上三,想看出这个结果是不是他保存为十号,因为他的十号是十二号保存,这个时候啊我们啊这里他保存了,然后啊再点运行,他发现怎么都是十二, 是一个常见的错误,就是说保存不要成数字,如果成数字,那么他就得到了运行十二,这结果是十二了哦,对于这种脚本文件,就是他里面不含有三个线, 那么剩下的就是所谓的函数文件。函数文件一般来说,第一行是有分开线的, 对函数文件来说,我们需要清楚两两个地方,一般来说,对函数文件我们要有啊,啊,要有两个文件 来运行他,一个是所谓的函数的定义文件定义文件,第二个就是函数的调用文件,在脚本里面调用, 这个一般是在脚本文件里面吊用,或者说在命令窗口直接吊用啊,命令窗口,然后啊,对于函数文件来说,我们要求这两个文件在同一个目录下 你才能够进行啊,同一个目录下还要求这个函数文鉴明, 必须与啊,必须与文件名与函数名相同, 必须连接完成,这是我们有几个要注意的地方,下面我们来详细讲解这些内容。 对于 metal 来说,这个函数啊,你可以完全理解为像我们数学上的函数一样的,我们数学上一般来说一个函数是 y 等于 f x, 是吧? 例如说啊, y 等于正选三 ex, 那么这个就是代表函数名称,这个是质变量,这是应变量,例如说 y 等于 x 平方, 这样,那么在这里面 s 是字变调 se 变掉,结果是这样,那迈开步里面函数应该怎么定呢?我们要有两个文件文件音啊,文件音 先定义函数,文件先定义函数,那么第一行必须以翻跟线开始, 然后啊,对于这个函数来说,我们要记住它的自变量是 x, 它的函数值是 y, y 等于 f x, y 等于 f x, 那么这下面就 y 等于 x 的平方, s 平方, 那么这就是所谓的定义,这就是定义啊,函数文件,函数文件,那么使用怎么使用呢?使用我们就要在文件二里面调用,文件二里面调用,比如说我 s 复制给印, 那么我可以算 y 等于 fs, 这样就是为了吊用。那么函数应该怎么定义呢?就是这里是周围输入量或者输入参数,输入啊,这个输入参数,那么这个叫做 输出量,会输出参数。在函数定义的时候啊,那么从这一行开始以后啊,在下面我们都要把输入量当做已经知道的值,把 x 周围已经知道的比着某个数, 通过输入量去计算出位置量。外来这下面代码,我们需要把这个输出量给计算出来,输出量给计算,这是输出,已经知道这是位置,把它计算出来。好,我们演示一下这个函数的定义, 要第一函数第一行是翻跟线开始,然后我们输出量是 y, 输入量是 x, 函数名称是 f f, 那么这里 y 等于 x 平方,平方,那么我们保存,注意这个保存这里关键的地方是在于这里啊,保存你这里起的文件名,这是叫做文件名,以我们刚才这边啊, 我们刚才这边的函数名称,这是要相同的,我们刚才已经保存完了,就这两个地方是一致的, 这两个地方是一致的,那么这样我们就定义好函数文件,就是以这个开始,把 s 周围已经知道的输入量,把外作为位置量,下面函数的主体就是通过以质量把这个位置量给算出来,把这个算出来。 好,那么怎么使用呢?我们可以在命令航窗口调用它,那么调用它我们必须给 x 一个值, s 一个字, x 等一,那么我们在 y 等于 fx, 我们就可以看到这里就出现了 y 等一,但是这会出现两个 y 等一, 出现两个外等于你这只有行数路出现两个外,那么另外个原因就是在函数主体里面,这里面啊少了一个分号,而且这软件也提示我们这里确实省了一个分号。 好,我们现在不补上分号,我们也可以直接这样调用 f f 二, f 二,那么就相当于把二带入到这个 x 里面去,下面还是主体,就是把 y 给算出来,算出来就复制给 f 二,这就是相当于我们可以这样使用,等于四, 这里会出现两个四,一个是 y 等于四,一个是啊,这里 ans 等于四,那么 y 等于四呢?是在 这里面搜出来的,我们应该加上分号啊,加上分号之后不要忘了保存啊,我们再来试用调用 fo, 按向上的箭头就可以,我们看到这样就出现了,如果我们把这个函数值复制给 a 等于 fo, 那我们知道 a 就等于二了, a 就等于四, 哎,联系,这就是所谓的函数调用,那么我们在这里写的是函数名称 ffo 啊,我们一般习惯在一个新建脚本里面来调用刚才这个函数,我们知道 y 是 fx, 那我们怎么调用呢?我们一般是在这 s 等于一,对吧,我们写上 y 等于 f x 啊, 那么 x 等于 x 一等于三,那么 y 一等于 fx 一啊,那么这里都是相当于把 这个输入量是已经知道是等于三了啊,必须要确定输入量,那么韩叔给你算出这个值来,算出这个值,并且复制给外印,复制给外印。好,那我们可以运行这几行代码, 运行这代码,我们也可以把这个保存保存,然后啊运行这整个啊整个代码,我们可以看到得到结果,但是这样定义的话,我们会有一个啊问题,呃,在这里面你 s 必须是数 啊,才能平方,如果 x 是,我要求是一到三呢?一到三,对吧?那我们再调用 y 等于 fx, 我们可以看到这样运行这两行代码,那么 x 点一二三,那么 y 就出错了,他告诉你错误的原因是 s 平方不能算,那么事上我们再来看看函数的主体, s 等一二三,那么 s 就是这么一个项链,这个项链,那把这个项链带进去, 那么像量的平方,这是没有意义的,但是我们知道 y 的 x 平方是对每个 x 算,每个 x 平方应该是按元素起平方,所以这里一般要加一个点啊,代表每个元素的平方啊,每个元素的平方,这样好,那如果是这样加了点之后 啊,我们在运行,你发现人人是错误的啊,错误的,呃, 啊,这里是啊,啊,这里保存啊,如果没保存,那么人类是错误的啊,刚才这已经保存了。好,这个就是说啊,我们可以 s, 这个时候可以输入项链了啊,项链了,只有函数的意思,就是通过输入量得到输出量啊,输出量,好,我们再看几个例子, 这就所谓的函数的定义与使用,如果说我要你定义这样函数,我定义 y 等于 s 一的平方加 x 二的平方,那我们找这就是二元函数了,这二元函数,二元函数就有两个位置量,两个输入量,一个输出量,那我们可以这样定义, 我们新建一个文件,我们也是发根线开始 y 点一 f, 我们写两个 f, 有个 x 一 xo, 我们现在命名函数作为 ff 啊,下面呢,我们要通过 x 一和 xo, 我们算出这个 y 来, y, 那么等于 s 一的平方 加上 h o 这个点的原因我们刚才解释了,这个分号的原因我们也解释了,那这样我们就保存, 保存,我们啊直接就保存,不要去修改他的文件名。好,我们就可以使用这个函数,使用这个函数可以在脚本里面,我们可以搁在刚才这个脚本里面啊,使用刚才那些脚本都没有用。好,我们继续啊使用 就可以说 x 一啊, x 等于二啊, x 啊, y 等于二,对吧?那么这一等于 sf xy, 那我们跟这里稍微不同,不同没有关系,这里面只是告诉你下面啊, 如果 x 一知道的话,下面是把 x 一带你算,如果 x 二知道,下面把 x 二算,那么在这里调用函数,就是说你使用这个函数,只要这个 x 值在用之前知道他的值就可以。 x 之前我们知道已经复制给印了 y, 在这个进入函数之前啊,我们要知道这个值外等号,那么这个得到的结果算出来就是这里面的,算出来这个值 y 啊,输出量就是整个函数值,然后我们把整个函数值负值给这啊,所以呢符号不要。那么希望大家理解函数的本质意识, 本质意思就是说把 x 一 x 二作为已经知道量下面主体,把这个外算出来, 外算出来就是相当整个函数值,整个函数值,我复制了一个新的变量证啊,复制个新的变量证,这是相当有两个啊,有两个啊,输入啊,有一个输出, 我们也可以把两个输入合成一个输入,把它做一个项链放在一起,那么就产生了所谓的下面这种啊,我们 我们可以定义输出 ffo, 是吧?你用一个 x, 现在一开始虽然是一个 x, 但是我已经规定 x 就是一个项链有两个分量的项量,那么既然规定有两个分量项量,我下面要删除这个 y 呢? y, 那么就 x 的第一个分量, 第一个分量的平方加上 s 的第二个分量的平方,那么这样我们也就定义好了 f f, 好,我们保存,那么现在函数名称是 f f 二 啊,我们要调用的时候,那么这个时候使用 ffo, 如果我们这样调用的话,那这个就会出错了, 说错了,不信我们试试看。我们点运行,他告诉你这个输入参数太多,因为你这里逗号中间,那么就相当输入了两个参数,而函数第一里面只有一个 x, 所以你正确的用法就是把这两个做一个整体,用个中号表示啊,定义成一个起正中国号,那么也就是这整个就是一个,现在是一个整体附近去,他有两个分量好,我们就可以运行他,这就相当于 虽然是多元函数,但是可以作为项链函数啊,项链函数,那如果我们要定义这样一个函数呢?有两个输入,两个输出, 我们要定义啊, y 一等于 x 一平方,加上 x 二平方, y 二等于 x 一平方减 x 二平方,那我们再写函数就有四种方式来写,他 就四种方式来写字,第一种方式我们就啊,我们来说这样函数第一种方式就是说 我可以说 f u n c t i 啊,第一函数我的输出啊,是两个 y, 一百二啊,一百二,这样写,再把中间用逗号分开,那么等 一,我现在是 f f 啊,三个 f 吧,一,那么这个输入啊,我用两个 x 一 x 二,那下面就通过 x 一 x 二算出八一 y 二来输出。里面啊, 是用这样表示有两个输出啊,两个输出,那么 y 一呢,等于 x 一的平方啊,加上 x 二的平方,你可以加个点啊分号,那么 y 二呀,算是 y 二了,等于 x 一的平方减 x 二的平方, 那么这样我们就定义好了,这就相当于把它周围两个字变量啊,两个应变量,两个输入,两个输出。好,我们可以按照前面的方法把两个输入整合成一个,那么得得到第二种定义方式,那么也是 y 一 y 二等于 f f 二吧,那么 x, 对吧,那下面写,你就算出 y 一 y 一,怎么算呢? x 第一个分量的平方,加上 x 第二个分量的平方啊,那接下来是,嗯, y 二等于 x 第一个分量的平方, 减掉 x 第二个分量的平方啊,证明是好了,我们也可以把整个输出啊合在一起,作为一个矩阵来输出,那么就可以所谓的这样来定义三个线啊, 啊,下面啊,我们接着接着写到下面来,那么可以 y 等于 f f f 三啊,可以使用 x 一 xo, 那么要注意,现在两个输出都合在这里合成一个项链了,那我们就应该这样写, y 的第一个分量, 那么可以等于 x 一的平方啊, x 一点的平方加 x o 点的平方啊,分套啊, y o 等于 x 一点的平方,减 x o 点的平方。 那么第四种方式就是说我们把输入输出啊,都合成 一个 y 等于 f f 是 x 啊,那么这个是 s, 就有两个分量, y 有两个分量, y 一 y 二,我们分别把它算出来, s 有第一个分量啊,加上 x 第二个分量啊, s 一的第一个分量的平方减 s 第二个分量的平方,这就是所谓的多元函数的第一啊,多元函数第一,那么在调用的时候,如果你一定要调用这个,那你就必须啊这样 来调用,那么比如说我们要得到 ab 对吧? f f f 一二三这样调用,那么对这个呢,调用呢,就是让他把这个二三呢,用一个中国号括起来,那么这里调用就是 ab 等于 f f f 二二三啊,那么这里调用,那怎么调用呢?那么这里只能写个啊,写一个合在一起啊,写一个 c 啊,等于 f f f 三对吧,那这里二三对吧,这里写个 d 啊,等于,嗯, f f 四啊,二三好起来,那么我们要得到这个 c, 那么 c 有两个分量,那么你可以用 c 一取得第一个分量, c 二取第二个分量,第一第二选好啊,我们 来演示一下啊,第四个函数调用和调用,以及啊,第一啊,那么第四个函数呢?是这样第一的啊, 那么 y 等于 f f 四啊,输入使用一个 x 啊,我们要删除外的第一个分量来,那么点 x 第一个分量的平方,加上 x 第二个分量的平方啊, y 二 等于 s 第一个平方啊,减掉 s 第二个分量的平方啊,那么这样一下就有两个速度输出了啊,我们保存 作为这个函数,那么调用呢?我们在命令仓的可以直接调用,比如说啊, a 点一, f f 四是吧,二三,注意这里参数他值一个,但是是一个项链, 在我们这 a 就有两个分量了,十三和负五,那么 a 一不就得到十三, a 二就等于负五,这就是我们所要的函数的定义。好, 那么既然函数的定义和数学上的习惯是一样的,但是迈开步里面函数的定义稍微更广泛一点,这里输入输出啊,不一定是数,也可以其他的一些啊,数据类型,甚至是字幅串呢,函数名称呢,函数函数的地址啊等等都可以, 那么无非他属于我们统称为参数啊,就不再叫做自变量啊,自变量,那么对于参数的意义来说,对于参数的意义是,如果我有啊,任意多个,我在我在你调用之前,我不知道你会输入多少个参数,那么怎么来处理 任意多个参数的意思呢?那我们就使用这个命令啊,使用这个命令来处理任意多个参数为 a r 啊,这是变量的意思,变化的意思啊, a r g 表示参数的意思, argument, 那么 i n 是输入的啊,参数是可变的啊,或者我们使用 var arg out, 这是 out 输出, art put in put argument 啊,那么这是表示第一啊,任意多个输入会输出参数与任意个参数, 一个是用的输出,一个用的输入,那么我怎 我们来判断你得到多少个呀,我们 number 啊, n, 参数个数 a r g 啊,输入的参数个数 n, 那么以及 n, a r g alt, 那么这是输入参数课程,那么我们就要得到啊,实际输入参数的个数, 实际输入啊,或者输出啊, 唱一首歌送, 这样我们就可以来定义啊,很多个参数的意思,我们来举个例子啊,说明这个意思,现在就说,我来定义,你输入两个数,我就把两个数加起来,你输入三个数,我就把三个数加起来,那我们就这样定义 啊,我输出是一个纸盒,那么我,我要上啊,啊,我, 我两个 ssrum, 我输入参数,我是任意多个都可以, vir argument 啊,输入参数个数,那我们想得到,你到底是几个参数呢,对吧?这得到几个参数啊,那么 我们就想知道啊,你这参参数个数啊,这参数个数,那么我外啊,我就等于你所有的参,输入参数之和啊,输入参数之和,那么参数是放在这里面,对吧?那就啊, a r v a r a r g i n, 这是第一个参数啊,加上啊, 如果有两个参数,我们就加上第二个参数,那么如果有输入哈,有很多参数,我们就不如把它加起来, 这样我们就可以输入很多的参数了,那么我们等我们讲完循环,我们再来讲这个参数,我们法律输出一个简单哦,也就是这个时候啊,不管输入多个参数,我都可以运行,但是,呃,我,我都是 y, 等于哦,通过输入我算的输出来 啊,我们要把所有的参数都加起来,是吧?呃,这个方法我们后面再实现,现在我们就可以在这里调用 y 等于 ssum, 对吧?我选一二,对吧?输入两个参数也可以,我输入三个参数也可以啊,输入三个参数可以,甚至我们来来显示下,我知道你输入几个参数, disp, 我们输入说,我,我显示参数个数啊,我,我就显示你啊,参数个数, n, a, r, g, argia, 这是我显示你参数的个数。是这么多,那么这个时候我们来 啊,这里保存啊,保存,那我们看看, y 等于 s, s u m 啊,我一二看看是不是得到两个参数啊,得到两个参数啊,我们就直接把 y 复制给 n 啊,加 n 啊,就是把参数个数复制给 y 嘛,复制给 y, 那么我们看 y, 如果我输入三个参数呢,我就得到三个参数, y 就等于三了,显示,显示了三,就是显示命令可以把它删掉。 好,那如果我输了五个参数呢?一二三四五。好, 那么这个就是说我可以任意一个参输入,呃,输入参数,我可以用这个取得参数个数,我也可以任意输出个参数,我也可以取得输出个,所以我们可以看到内部命令往往会有多种用用法,如果你是两个参数,我怎么办?如果有三个参数怎么办? 我们举一个简单例子,如果你这个参数是两个啊,那么我们假设你参数个数用 n 表示啊,啊,如果啊, n 等于啊,如果只有一个参数, 那么我就什么呢?我就输出外来外,就等于啊,第一个参数值。好, 如果啊,我按是等于二两个参数,我 y 就等于两个参数之和,第一个参数加上 第二个参数。使用这个方法做一个参数,那么在它里面所有的参数啊,其实就是逗号分割的一个单元体,使用这个大括号取出他第一个单元里面就是第一个参数值啊,如果是两个参数,那我们就输出两个参数啊,结束, 结束。好,这样呢,我们就写好了这个代码,现在我们来看看,现在是如果是两个参数就等于三,是吧?如果是一个参数呢?嗯, 我就等于啊,他本身,对吧?等于他就第一个参数值啊,如果是两个参数,我们就把两个参数加起来,对吧?好,我们也可以说我们也是多个输出参数啊,我们可以变任意多个 啊,输出参数啊,任意多个输出,那么在这里如果输入是一个,那么我输出啊,啊,我的输出啊, 我,我第一个输出参数,那么我就是等于你输入参数,那么如果说 如果我有两个输入输入参数,那么我输出参数也来两个,第一个 是两个之和,第二是两个之差啊,第二个等于两个之差, 好,呃,保存,对吧?现在我们来看一看哈。如果输入是一个参数, 输入输出也是一个参数,那么 y 等一啊,二十 sum 二,那么 y 就等于二,那么如果输出是两个参数, j y 和这,那么输入啊,是啊, ssum 二和三, 那我们就知道第一个啊,直至外就他们两个之和,第二就他们之差,这就是所谓的可以控制任意多个输入输出参数也可以控啊,或者输出输入参数个数个数,那么特别的,如果我一个 没有输入分没有输出啊,这是可以的啊,那么就是说无输入参数啊,啊,无输出啊, 那么这要分几种情况,第一种情况就是有输入无输出。第二种,是啊,第一个是无输入,无输出啊,无输入,有输出啊,有输出。还可以啊, 有输入无输出啊, 那么有收入,对吧? 有输出,那我们前面就看到有输入输出,还有多少个的问题,那么像这个都比较简单,我们举个例子说, 你能说我这样写 functiv, 是吧?那么这个时候我不要写着 ff f 啊,五吧,那这样就是只有函数名称,没有输入,也没有输出,输入放在括号里面,那我们在地面,比如说我显示 啊,一个制服 a 啊,一个制服 a, 那这个函数就做这样的事情啊,或者说我我直接写行 y 点二啊,写个啊啊,写个 a 点二啊,定一个 a a 点二,好,那么定,如说我定义这样一个函数, 我没有输入,但是有输出的 ff f 六吧,啊,没有输入输出,我就是通过,不需要什么我把这个 y 给算出来啊,就要把这个函数未知的东西算出来点,哦, 就可以了。你甚至可以说,呃,我啊有输入啊,但是不要输出 f f f 七八,我只要一个 s, 告诉我 s 啊,我把 s 的 平方显示出来,就可以 s 平方打印出来,加给他打印出来,那么这些都可以看到,看到,哎,世上 那么这些啊,呃,这样一些无输入无输出的里面有一个特殊情况,就是说 当我这个没有输入的时候啊,你是可以点运行的时候,直接算他的结果啊,那么这个时候我们可以看到像我们前面这些函数都是有输入有输出,你点运行的话啊,那这个就不好办了,是吧?你想这个啊, 有输入有输出的话,你点运行,他就会提示你错了啊,听错了,像刚才这个是任意多个都可以,零个也可以,那么如果一个行业是无输入也无输出呢?那我们就好办啊,比如说,嗯, 我这个没有输入也没有输出啊,我就是显示,嗯,还有啊,好,那我们就做这个事情保存,对吧?那我们 就可以点运行了啊,这个函数啊,功能就是做啊,显示是哈喽,这样一个啊,单词,那么如果有输入话,那你就不行了,所以说你就要 提供输入,这是函数关于有输入和无输出的情况,那么有的时候我们就会出现你输入了两个参数啊,输入需要两个参数,结果你只输入一个参数,这就会出错了。 但是对输出的情况他不是一样的,如果你要求输出有两个参数,结果你只用了一个参数,我们来试一下啊,这样一个情况,好,我们啊,假设我们第一个函数啊,第一个函数 我有两个输出, y 和 z 啊,等于 f f 七啊, x, 嗯, y 对吧? x 六和 v 吧。啊, 我外呢?是哈,我要通过右位算出这个外和这来外,是的,右加上位, 我这样等于右减七位啊,右减位,那么这个函数就是有两个输入,有两个输出。好,我们来试一下,比如说我只提供一个输入, a 等于 f f 七啊,三个 f, 四个 f 七,我二和三,是吧,那我们就就算出了啊,一个五五就是他的第一个参数值,这是没有提供第二个输出参数。如果我们提供了第二个输出参数, a 和 b 等于 f f f 七 二和三,那我们可以看到这样就输出了两个,一个是 a, 等于两个字和 b 是,那这个时候我们就不能理解为负 负值了,这个时候我们就要理解函数调用,函数调用,那么在这个时候呢,我们也知道不能理解为负值,你可以理解函数调用,函数调用就说 把默认的啊,如果说后面的参数缺少了,那么后面参数啊啊,这些计算量就不给你付出啊,付出复制过去,只把这个外给你啊,算的第一个,也就说默认呢,只考虑第一个参数,就是在函数调用的时候,输出参数可以省略 啊,输出参数可以省略, 可以省电,甚至一个参数都不需要的情况,比如说我们 这里有两个输入,两个输出我,我没有,我输出一个都不提供,我直接 f, f 啊,七是吧,三和四是吧,那么这个时候他就是把这个第一个参数值作为默认的输出来啊,默认的输出来, 那么这就相当于他啊,可以省略的,或者哈可以补全啊。像我们说怎么补全一些参数呢?那我们可以使用前面那个技巧来补全一些参数, 那么如果我们要实现自动补全参数,那只有自己来实现啊,补全参数,呃,我们举一个例子来说啊,是这样处理补全参数的问题。呃,我们直接写一个代码啊,给大家演示下什么叫补全参数。嗯,新建一个 函数是 f u, n, c, t, i, 那么输出是 y 和 z 啊,输入啊是 f f, f 啊,是 f 六吧啊,不能重名 a 和 b, 那么这里要求是两个, 那么如果我想输入一个他也行的话,那我们就使用 narg, 哎,输入参数如果是只等一个,那么也可以啊,也可以,那我就自动把 b 补全为零,对吧?啊?结束,对吧?如果说输入参数 啊,等没有输入参数,我们也可以,我就把 a 补成零啊, b 补成零,这就所谓的一般来说默认值的问题 啊,就是我怎么设?如果有参数怎么办?那么这个时候我们就可以外就等 a 加上 b 啊,这我就可以等于 a 减去 b 啊, a 减去 b, 那么那么输出参数 我们也可以,如果你输出参数啊,如果输出参数你只得只有一个啊,只有一个,那这个时候我们说我就把 y 就改成 a 加上 b, a 减去 b, 就把这个整个的计算结果做一个项链把你输出来。好, 那么我们来看看这个什么意思?就是上面如果你只输入了一个参数,我们先保存, 那么我就默认币就是零,如果你两个都没有输入,我默认就是啊,都市零,都市零, 那么都市里如果你默认是两个数字参数,我就一个是两个字和一个字啊,如果你只给了一个参数,那我就是直接用销量说出来,那这个时候我们来测试它啊,测试它,首先比如说我正常的外和,这 就等于 f f f 六,对吧?我输了两个参数二和三,我们可以看到 y 就等于两个字和这等之一,对吧?那么现在呢?我们把这个删给删掉去 啊,那我们发现也可以,甚至歪和这外是两个字和这是两个字差,好,那如果说我哦也删掉去,一个常识都没有,我甚至这个胯也可以删掉去,那么这个时候我们发现都可以等于零也是对的。 好,现在我们假设后面是正常的,那但是前面呢,我们这里可以删掉一个,我们现在只有一个输出参数,一个输出参数 y, 那么这个是 y 就变成了项链啊,项链,项链。好,我们前面说 在任意多个参数我都可以处理啊,任意多个参数都可以处理。 好,下面我们来介绍这个啊,所谓的匿名函数啊,匿名函数, 匿名函数啊,虽然就是我有时候也叫做聚丙函数,这个词不太好理解,那么大家就可以看着所谓的匿名函数就是指的啊,我们 不需要函数的名称,函数只是放在这个啊,像这有五个抽屉,我并没有这个给这个抽屉叫做啊,这个衣服抽屉,鞋子抽屉,袜子抽屉,我没有,我就说这是这个抽屉,我只要知道地址就可以了, 所谓的记柄啊,分匿名函数都是一般是指的地址的意思啊,你可以理解为啊地址,那什么叫匿名函数呢?就是说 说,我这个函数没有名字了,没有名字我只有变量质,变量名字,我用个艾特符号代替他,然后我们下面函数的主体啊,是 x 平方加上二乘以 x 加上三,那么这样一个函数 把,这个函数我还可以复制给一个啊, f 复制给一个 f, 那么这个是 f, 就相当于函数名称了啊, f 就相当起的这个函数的地址 啊,那么我们把三放到这个地址里面,就放到这个函数里面去算,那我们就可以知道这个结果。好,我们来演示一下啊,那么事上,因为我们刚开始已经定义了这个函数 f 啊,已经定义函数 f, 那么我们把这个 f 删掉去啊,如果不删的话,那么你这样写 f 三,他不知道是使用哪一个 好,我们也可以测试一下他到底使用了哪一个啊,新建一个文件,是吧?那我们可以说我 f 等于 at 啊,这是匿名函数,我 x 平方啊,加上 x 平方,加上 ox, 加上三,对吧?那么接下来 fo 加上 fo, 我们运行他, 那我们看看他到底是调用了内部函数还是这个函数,那我们这是调用了这个函数啊,这就相当于 在这个地面并不需要二,但是这个里面我们也可以把这段复制给记啊,这个记,那么用记二表示,那我们就可以看到。呃,算出来记二也是十一啊,十一,那么在这里面我们可以看到这里有个函数,另一面函数 fg 啊,你可以把这个清掉去,没有关系 啊,这所谓的匿名函数。好,我们也可以这样使用,那内部函数是有一个啊, 上瘾函数,我们可以用 f, 等于艾特上瘾,我们取得上瘾函数的地址,接下来啊,我们输入 f 派, 那我们就实验是算出了什么上瘾派,对不对?算是上瘾派,用原来 f 是这个函数,我们运行这些,我们可能 f 已经改成了正确函数上映派。一,一点二二亿的服务十六次方,那么就接近您了,这就是正确函数啊, 这就取得函数的地址,嗯,取得函数地址,取得函数的地址啊,啊,我们知道我们在这里面已经有了 f f, 对吧?有,有这样函数,那我就可以使用艾特这个符号取得他的地址。 ff, 我们的两个 f 啊, f f 两个 f, 我们就取得他地址,那接下来我就使用 f 二三啊,我们来算这个啊, 就相当于算出啊 f f 二三,那么就是等一,这是啊,两个平方加起来,这就所谓的啊匿名函数,那么这个啊匿名函数呢?或者函数记柄呢?特别有用,比如说我们想对函数进行操作 啊,什么意思?什么意思叫做对函数操作呢?比如说你输入一个函数,那我就求出这个函数根,输入另外一个函数,我求出另外一个函数的根,是吧?求这根,那么这个时候你输入的函数是变化,我是要对函数进行处理,那 我们下面再求解这个根,对吧?求解根,那么我们这里就要使用一个函数放在这里啊,别墅呢? f, 对吧?我们要使用函数在零点附近的根,那下面就要使用 fx, 那这个时候我们就把函数的记啊地址传进来就可以了啊,传进来就可以了, 这就所谓的啊函数的地址和啊记柄函数,那么匿名函数是一个特别有用的啊,希望大家能够掌握,下面我们介绍指函数,指函数, 指函数就是一个文件里面有多个函数,比如说我,我上面有个翻跟线,对吧?翻跟线,我下面在同一个文件里面,我们下面还有个翻跟线,还有更多个翻跟线, 那么像这种函数,那么上面这一部分函数就叫的主函数,下面都叫的指函数,那么比如说这个是 f f f 啊八,那么这是主函数的函数名称,那你的文件名呢?就要和他是一样的 啊,如果主函数也可能有输入,也可能有输出,那么下面是指函数,那么只有主函数可以使用这个指函数,那么在外面呢,你只能使用主啊,在其他的文件里面,你只能使用主函数, 这指函数只能被他的主函数使用,这就是为了主函数和指函数的意思, 那么前面使用的匿名函数就特别有用,如果说我要在啊,在这个主函数里面 使用指函数,一般有两种方法,一种就是使用刚才这这种方法,一种是直接写函数名称的方法,都可以,你也可以有多个指函数,所谓多个指函数是指的这个意思啊。 f, 嗯啊,这是主函数啊, 啊,这是主函数,然后接下来啊,又是指函数啊啊啊,指函数,那么这样的话,一个组多个啊,多个指函数构成一个文件,构成一个文文件啊, 那么这些紫函数是相互独立的,相互独立的,那么紫函数可以互相调用。 呃,这是关于主函数和指函数,那么下面一个命令是 叫做千套函数啊,千套函数啊,就是说我最外面有一个函数,函数底面还有一个函数啊, y 表示 fx 啊,那么这个函数底面还有个函数 啊,还有一个函数啊, b 等于 f f, a 啊,但是我们这样写话,上面就变成主函数,这都在一个文件里面啊,一个文件里面上面都变成了啊,主函数,那这个时候我们要加按的啊, 这按的就表示这是最外面的,那么这里要加个按的,那么中间是函数的主体,函数的主体啊,这下面可能还含有其他的代码,这都是主函数的代码,那么这一部分呢,就是指啊,被欠套的函数,被欠套, 那么这就带按的,那么这种函数啊,一般我们用的极少,但是这个函数有个优点,有个优点就是说这里面的变量啊,如果在这个不是他的参数啊,那么这个变量在这里面是相同的变量啊,这可以共享变量, 共享变量,或者说你主这个啊,外最外,最外的这个函数,他其实是全集变量啊,全集变量, 比如说我这里面可以写 y 的 x 平方,那就是 m, x 是这个这个变量,那么在这里面你也可以直接使用 x, 那如果这里有 x, 那重复了,那么这个时候他就这个 这个被签到函数的,就会暂时把外面的盖住啊,出来又会恢复啊,所以说在这个签到 大人水里面一般很少使用,因为这个变量比较混乱啊,有的是全集,有的是非全集。好, 那么调用规则是这样的啊,调用规则是这样的,你这个外面的可以调内内部的,内部的不能互相调用啊, 那么在模特步里面还有其他的函数啊,第一个就是说使用的啊,依赖函数,那么现在已经废弃了啊,已经废弃了,不能用了啊,不能用了,我们也就不用介绍了啊。还有一个是使用符号 啊,符号函数啊,符号函数,那么就是说我们有符号变量啊,符号变量,那么这样一个问题,就是说函数互相重名的问题啊,重名啊,我定义了一个正确函数, 内部有电影函,内部函数,那到底啊,呃,以哪个为准呢?那么优先规则就是说啊,像我们刚才用的,你有匿名函数,又有这个函数,又那个函数到底是使用的 啊?我觉得这个没有必要介绍,一般来说是你自己定义的函数优先,然后说啊,目录下的函数哈,匿名函数优先,再是你目录下函数,再是内部函数,那么像这个就很混乱了,所以我们建议大家不要出现重名的啊,不要重名的啊,重名的函数 就是说一定要区分所有的函数名称来,函数名称来,那么关于函数,我们大概就是这些内容啊,今天讲到这里,谢谢大家。

