| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 969 人关注过本帖
标题:关于提示“变量没有定义”的问题
只看楼主 加入收藏
峥嵘子
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-5-4
收藏
 问题点数:0 回复次数:2 
关于提示“变量没有定义”的问题
两个函数文件,一个命令文件
运行之后,提示:
??? Input argument "x" is undefined.

Error in ==> disturb at 3
y=prod(x-j)+igsilu*x.^k;
Error in ==> mainf at 14
        a(i)=fzero(disturb,i);
为什么呢?


函数:disturb
function y=disturb(x,igsilu,k)
j=1:1:20;
y=prod(x-j)+igsilu*x.^k;

函数:generation
function y=generation(x)
j=1:1:20;
y=prod(x-j);

命令文件:%定义全局变量
global igsilu k
%给出实验的组数,共十组
for n=1:1:10
    %从键盘输入扰动扰动ε和常量k
    igsilu=input('please enter a data as ε:');
    k=input('please enter a data as k:');
    a=1:1:20;
    %计算,画图比较
    for i=1:1:20
        a(i)=fzero(disturb,i);
    end
    plot(a,generation(a),'ro')
    hold on
    i=1:1:20;
    plot(i,generation(i),'b*')
    hold off
    grid
end
搜索更多相关主题的帖子: 变量没有定义 提示 
2008-10-03 22:38
meteora1106
Rank: 2
等 级:新手上路
威 望:5
帖 子:126
专家分:0
注 册:2008-9-15
收藏
得分:0 
错误在这一句a(i)=fzero(disturb,i);fzero的用法根本就是错的,fzero是用来求函数的零点的,可你用在这个地方我不知道是要作什么。
2008-10-04 18:36
峥嵘子
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-5-4
收藏
得分:0 
我是要求X,用fzero
问题解决,方法是调整了disturb函数,如下:

函数:disturb
function y=disturb(x)
global igsilu k
j=1:1:20;
y=prod(x-j)+igsilu*x.^k;

这样就可以了
2008-10-06 19:33
快速回复:关于提示“变量没有定义”的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022840 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved