Matlab返回

135 阅读5分钟

Matlab return

MATLAB返回简介

在计算机编程中,返回语句被定义为执行后,将控制权从调用的子程序返回到父子程序。执行流程在程序代码中紧随指令之后的那一点恢复,这一点被称为其返回地址,代码的运行范围可以定义为被调用的子程序。在没有父子程序的情况下,返回语句将执行的控制权返回到命令提示符。在本专题中,我们将学习Matlab的返回。

语法

返回命令将控制权重定向到调用的脚本或函数,而不是让MATLAB执行被调用子程序中的其余连续命令。当一个脚本或函数包含一个返回,并且没有被任何调用程序所调用时,MATLAB会将控制权重定向到命令提示符。

在这两种情况下,语法都是单一的命令指令,即:返回

返回语句的使用情况

根据程序的技术要求,在不同的条件下使用返回指令。它也可以用于数据有效性的检查功能。下面讨论一些重要的用例。

1.将控制权带入键盘

如果程序需要用户在某些特定条件发生时采取行动,可以直接调用当前的子程序或函数,而不需要由任何父子程序触发,当执行 "返回 "命令时,控制流返回到命令提示符或键盘上。

例子。

下面的代码片断定义了一个函数findindex(),其中的return命令有两个用途。

  1. 对输入数据进行验证检查
  2. 一旦找到匹配的数据,将控制权返回给键盘

%Defining findindex() , the called subroutine function Index = findindex(inputval,referenceArray) %Using return statement for data validation Index = NaN; if inputval< 0 disp('invalid input') return end %Using return statement on achieving the program objective i.e. finding matching element for Index = 1:length(referenceArray) if referenceArray(Index) == inputval return; else disp('Match not found') end end endfunction

**情况1:**当输入的数据为负数时,返回语句被执行

findindex(-15,[12 34 54 15 32])

输出。

Matlab return output 1

**情况2:**当发现与输入数据匹配时,返回语句被执行。

findindex(15,[12 34 54 15 32])

输出。

Matlab return output 2

2.将执行流从被调用的子程序重定向到父(调用)子程序

如果程序需要在某些特定条件发生时将控制流重新分配给调用子程序或调用函数。它可以在其父子程序触发当前子程序或函数中的电流时进行,并执行 "返回 "命令。

例子。

下面的代码片断在另一个函数callfunction()中定义了一个函数findindex(),其中的return命令有两个用途。

  • 对findindex()函数的输入数据进行验证检查
  • 从findfunction()的返回命令中将控制权返回给callfunction()

%Defining findindex() , the called subroutine function Index = findindex(inputval,referenceArray) %Using return statement for data validation Index = NaN;if inputval< 0 returnend %Using return statement on achieving the program objective for Index = 1:length(referenceArray) if referenceArray(Index) == inputval return; elsedisp('Match not found')endendendfunction %Defining callfunction() , the calling subroutine function resultfunc = callfunction(inputval,referenceArray)result=findindex(inputval,referenceArray); if isnan(result)disp('Match is not found.') elsedisp(['Match is found at ' num2str(result)]) endendfunction

**情况1:**当输入的数据为负数时,返回语句被执行。

callfunction(-12, [10 21 14 15 20 12 20])

Matlab return output 3

**情况2:**当发现与输入数据相匹配时,返回语句被执行。

callfunction(12, [10 21 14 15 20 12 20])

输出。

output 4

3.循环中的返回和继续语句的用法

程序可以灵活地决定在哪种情况下控制流应该改道到其调用的子程序或命令提示符,以及在哪种情况下控制流将被强制留在当前系统中。

例子。

下面的代码片段在另一个函数callfunction()中定义了一个函数findindex(),其中的返回命令有两个用途。

  • 对findindex()函数的输入数据进行验证检查
  • 当找到匹配的元素时,将控制权从findfunction()的返回命令返回给callfunction(),当没有找到匹配的元素时,使用'continue'命令使流程留在循环中。

例子。

%Defining findindex() function Index = findindex(inputval,referenceArray) Index = NaN; if inputval< 0 return end %Beginning of the loop for Index = 1:length(referenceArray) if referenceArray(Index) == inputval disp('Executing return statement') return ; else disp('Executing continue statement') continue; end end endfunction

**情况1:**返回语句在给定的负数输入时被执行

findindex(-15,[12 34 54 15 32])

输出。

output 5

**案例2:**在找到匹配或不匹配的元素时执行返回和继续语句

findindex(15,[12 34 54 15 32])

输出。

output 6

Matlab返回的优点

使用返回语句可以防止在所需条件得到满足后执行不需要的功能。因此,它提高了代码质量,优化了代码的执行。由于它减少了要执行的指令的数量,它也减少了程序的执行时间。因此,它

使得执行速度加快,从而提高了性能。与 "继续 "语句相关的返回语句的使用为程序提供了灵活性,可以决定是重新安排控制流,还是让它在代码的当前范围内运行。

补充说明

在条件块(如if或switch)或循环控制语句(如for或while)中使用return时,程序员需要注意。在MATLAB中,当控制流到达条件块中的返回语句时,它只是退出了循环并退出了执行返回命令的脚本或函数。因此,直接将控制权返回给调用的子程序或命令提示。

在MATLAB中,不支持使用返回语句来返回值。为了发送一个返回值,需要设置每个'out'参数的值。函数可以返回一个以上的参数作为返回值。

推荐文章

这是一份关于Matlab返回的指南。在这里我们讨论了返回语句的使用情况以及例子、案例和输出。你也可以看看下面的文章来了解更多的信息

  1. Matlab fplot()
  2. 点积MATLAB
  3. 硕大的Matlab
  4. 矩阵矩阵(Matlab

The postMatlab returnappeared first onEDUCBA.