matlab中@是什么意思

2024-11-13 20:29:41
推荐回答(5个)
回答1:

@是匿名函数的意思。

匿名函数就像传统编程语言中的内联函数,在单个MATLAB语句中定义。 它由单个MATLAB表达式和任意数量的输入和输出参数组成。

可以在MATLAB命令行或函数或脚本中定义一个匿名函数。这样就可以创建简单的函数,而无需为它们创建一个文件。

从表达式创建匿名函数的语法是:f = @(arglist)expression

定义式:f = @(x1, x2, ...) exper

@后面的括号里面是自变量,然后跟一个空格(没有空格也行),然后跟着关于x1, x2, ...的表达式。

扩展资料

示例:

编写一个名为power的匿名函数,它将使用两个数字作为输入,并将第一个数字返回到第二个数字的幂值。

创建脚本文件并在其中键入以下代码:

power = @(x, n) x.^n;

result1 = power(7, 3)

result2 = power(49, 0.5)

result3 = power(10, -10)

result4 = power (4.5, 1.5)

当运行该文件,得到以下结果:

result1 =  343

result2 =  7

result3 =  1.0000e-10

result4 =  9.5459

回答2:

@是匿名函数的意思。

 f = @(x)cos(x)+2*sin(x);

@(x)表示以x为变量,cos(x)+2*sin(x)为函数体

在别的函数中可以调用句柄f

比如,fplot(f,[-5,5]);

就是调用fplot函数来画匿名函数f在[-5,5]的图形。

回答3:

figure是建立图形的意思,系统自动从1,2,3,4...来建立图形,数字代表第几幅图形,figure(1),figure(2)就是第一第二副图的意思,在建立图形的时候,您注意一下它的标题就是figure1或figure2等等,对应到程序中就是您的例子语句
一般建立新图只需要一个figure就行,系统自动建立新图,可以简单一点,当然要加上也可以
另外介绍你一个相关的画图的:多子图,就是一张图中有好多小图,也是有标号的
使用以下命令
subplot(m,n,k)
subplot('Position',[left bottom width height])
m表示画几行
n表示画几列
k表示现在画的是第几幅图

回答4:

figure,就是控制窗口数量的,举个例子就明白了
直接显示两个图片:
imshow(A1);
imshow(A2);
则会出现两个窗口,一个窗口显示A1,一个窗口显示A2

figure,
imshow(A1);
imshow(A2);
则只会出现一个窗口,窗口先显示A1,后显示A2

回答5:

"=="是条件运算中的等于运算符,用来判断“==”左右两边的表达式或数值是否相等。若相等,则返回1,;否则,返回0。

在matlab中,"=="与C语言中的等于运算符"=="类似。


举例说明如下:

A = [1,2,3,3,2,3,2];  % 定义一个向量A
maxIndex = A==max(A); % 确定向量A中最大值所在位置
% max(A)表示取A的最大值,A==max(A)表示向量A中每个元素与max(A)的值进行比较,如果相等,则向量maxIndex对应位置1;否则,置0。
% 执行以上程序后,向量maxIndex=[0,0,1,1,0,1,0]