【问题标题】:Issues writing my first function in MATLAB在 MATLAB 中编写我的第一个函数时遇到的问题
【发布时间】:2015-11-28 00:51:39
【问题描述】:

我是第一个为 MATLAB 编程和编写函数的新手。函数的名称应该是“piccalc”。 目的是接受“x”和“y”值作为输入参数。这些值必须代入 x^2+y^2,如果这个结果小于或等于 1,则返回 true。否则,返回假。 这是我目前所拥有的:

function[true,false]=picalc(x,y);
if x^2+y^2<=1
    return true 
else
    return false
end

谁能告诉我为什么这不起作用?就目前而言,我收到以下错误:

Error: File: picalc.m Line: 6 Column: 13
Unexpected MATLAB expression.

非常感谢您的专业知识!

【问题讨论】:

  • 这不是 MATLAB 中返回值的语法。正确的语法是outputvar = value; 不涉及“返回”。

标签: matlab


【解决方案1】:

在 MATLAB 中,return 不会将值作为函数调用的输出返回,而是将控制权返回给调用函数(请参阅文档 here)。因此,它不需要参数,因为它所做的只是将程序流重定向到调用包含return 语句的函数/语句的函数/语句。

你的函数应该这样写:

function result = picalc(x,y);
if x^2+y^2<=1
    result = true; 
else
    result = false;
end

函数声明左侧的变量是输出变量。通过为这个有价值的东西分配价值,你正在“返回”一个输出。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-17
    • 1970-01-01
    • 2023-01-04
    • 1970-01-01
    • 2010-12-27
    • 1970-01-01
    • 2018-04-18
    • 2013-09-21
    相关资源
    最近更新 更多