matlab自定义函数代码,总有未定义什么什么的错误出现是怎么回事?

function [minx,maxx]=minJT(f,x0,h0,eps)

format long;
if nargin == 3
eps = 1.0e-6
end
x1=x0;
h=h0;
f1=subs(f,findsym(f),x1);
x2=x0+h;
f2=subs(f,findsym(f),x2);
if f1>f2
h=2*h;
x3=x0+h;
f3=subs(f,findsym(f),x3);
else
h=-h;
x3=x1;
f3=f1;
x1=x2;
f1=f2;
x2=x3;
f2=f3;
end
x3=x0+h;
f3=subs(f,findsym(f),x3);
while f2>f3
h=2*h;
x1=x2;
f1=f2;
x2=x3;
f2=f3;
x3=x0+h;
f3=subs(f,findsym(f),x3);
end
c=x2;
fc=f2;
if h>0
a=x1;
fa=f1;
b=x3;
fb=f3;
else
a=x3;
fa=f3;
b=x1;
fb=f1;
end
minx=a;
maxx=b;
format short;

运行后的错误是这样的:

??? Input argument "x0" is undefined.

Error in ==> Untitled29 at 8
x1=x0;
请大家帮忙改一下!

运行了一下,你说的这个没有问题,倒是后面有些你自定义的函数报错了。

针对你的问题,可能是你调用函数的格式不对。见图

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-09-29
是不是因为你的调用语句不对啊

你是怎么调用[minx,maxx]=minJT(f,x0,h0,eps)这个函数的

matlab自定义函数代码,总有未定义什么什么的错误出现是怎么回事?
运行了一下,你说的这个没有问题,倒是后面有些你自定义的函数报错了。针对你的问题,可能是你调用函数的格式不对。见图

为啥我的MATLAB任何指令都显示未定义函数或变量,就连“退出”都提示显示...
1、无法自动识别硬盘控制器 使用非正版的个别操作系统光盘,在安装系统时,容易出现此错误。原因是非正版光盘自动加载的硬盘控制器驱动不符合电脑自身需要的驱动。这种情况就建议换正版光盘安装操作系统。2、手动更新错误的驱动程序 windows操作系统正常使用,但手动更新驱动程序把硬盘控制器的驱动程序更新错误,...

MATLAB错误:未定义函数或变量 'transform_data'。
不是matlab版本的问题,是因为这个函数不是系统函数,你也没定义,所以就报错。另外 你输入代码是一行一行输入的吗? 一般是 新建.m文件的。

matlab报错未定义
matlab报错 未定义与 'char' 类型的输入参数相对应的函数 'int'是设置错误造成的,解决方法为:1、函数isletter可以判断字符是不是字母类型。可以对字符数组使用,返回等尺寸的逻辑值数组。2、isspace函数可以判断字符是不是空格,同样可以用于字符数组(字符串是一维字符数组)。3、使用char函数构造含有多...

matlab未定义变量或函数
当在MATLAB中遇到"未定义函数或变量"的错误时,有以下步骤可以解决:首先,使用MATLAB的内置帮助功能来了解变量类型。通过在命令窗口输入"help class",可以查阅关于数据类型的说明。接着,尝试检查一个变量,如"a=123",通过输入"class(a)",并按回车键,你会看到变量a的数据类型为double。这是MATLAB中...

为什么Matlab代码会途中突然提示“未定义函数或变量x”
一般来说,matlab在给一个变量赋值之前,是不需要定义的。

matlab未定义函数或变量'var'如何解决?
这个问题通常是由于MATLAB路径设置不正确或者缺少必要的工具箱或脚本导致的。以下是一些可能的解决方法:1. 首先,确认是否正确安装了神经网络工具箱。如果没有安装,请下载并安装该工具箱。2. 如果已经安装了该工具箱,请确保正确添加了工具箱的路径。可以通过在MATLAB命令窗口中输入`addpath('path\/to\/tool...

为什么Matlab代码会途中突然提示“未定义函数或变量x”
一般来说,matlab在给一个变量赋值之前,是不需要定义的。比如可以直接写x=3;(百度知道有BUG么?只能看到题目,看不到正文)但是如果你之前并没有对x赋值,就写b=x*3,那肯定会报错埃所以检查你的代码,看你在用这个x之前

matlab中调用函数,为什么总是说被调用的函数未定义呢?
可能是你这个m文件的名称没有和自定义的函数名称一致。应该要一样的,保存之后才能成功调用。因为我刚刚发现我就在这里出错了,把m文件命名成了work2,但是函数名定义的时候写的f2。

为什么在win7中的matlab中的自定义函数文件中老提示未定义变量?
需要检查一下你代码的书写方式是否正确,比如:% By lyqmath function main()clc; clear all; close all;y = f(4)function y=f(x)y=x^2

相似回答