Matlab ??? 输入参数“x”未定义

Matlab ??? 输入参数“x”未定义,matlab,Matlab,我输入: EDU>> %using the temporary variable levels EDU>> levels=range/quantise_range; levels=round(levels); quantisation_bits=log2(levels) 注意。任何地方都没有x变量 我的错误是: ??? Input argument "x" is undefined. Error in ==> range at 18 y = max(x)

我输入:

EDU>> %using the temporary variable levels
EDU>> levels=range/quantise_range;
levels=round(levels);
quantisation_bits=log2(levels)
注意。任何地方都没有x变量

我的错误是:

??? Input argument "x" is undefined.

Error in ==> range at 18
    y = max(x) - min(x);

EDU>> %combining above process into one statement
quantisation_bits=log2(round(range/quantise_range));
??? Input argument "x" is undefined.

Error in ==> range at 18
    y = max(x) - min(x);
有人愿意解释一下这个问题吗?我是编程新手,我真的不知道如何阅读错误提示

谢谢

此外,无论我对同一原则的误解是什么,我在这里发现该代码存在问题,错误也包括:

%为了创建自己的函数,我在行的末尾按shift+enter键以保持整洁:

EDU>> function what_am_i()
disp 'I am a function'
??? function what_am_i()
    |
Error: Function definitions are not
permitted in this context.

EDU>> 
function what_am_i()
disp' I am a function'
??? function what_am_i()    
    |
Error: Function definitions are not
permitted in this context.

EDU>> end
??? end
    |
Error: Illegal use of reserved keyword
"end".

您可能会混淆命令窗口和编辑器。 在命令窗口中,可以输入一些代码行,但不能创建函数。它更像一个计算器

如果您创建并保存文件,然后在编辑器中打开它们,此时Matlab开始更像一种编程语言。它保存了可以编写函数或算法的.m文件


Matlab提供了很多帮助。我建议访问他们的网站,搜索一下。或者只需谷歌matlab简介

除了@user1860611关于命令窗口中函数定义的回答外,还有一个与之相关的问题,即内置函数。看起来您试图将其作为变量名使用,但实际上并没有将其初始化为值,因此它仍然是一个函数

在这里的行中:

levels=range/quantise_range;
您实际上是在调用range函数,但没有向其传递参数

Error in ==> range at 18
y = max(x) - min(x);
错误消息告诉您称为range的函数已生成错误。没有名为x的变量并不重要,因为函数内部有一个变量