MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [求助]一个很简单的问题,可是就是不知道问题出在哪儿? (https://www.labfans.com/bbs/showthread.php?t=5300)

pikky 2008-11-13 15:36

[求助]一个很简单的问题,可是就是不知道问题出在哪儿?
 
for i=1:200,
a=7.5e-9;
if x(i)==a
n(1)=x(i);
end
end
这样,我得到了正确的n(1)值


但是我这样写:
for i=1:200,
b=(5+2.5)*1e-9;
if x(i)==b
n(2)=x(i);
end
end
却告诉我n(2)没有赋值。为什么啊???头大死了,怎么都搞不定。

meteora1005 2008-11-13 15:54

回复: [求助]一个很简单的问题,可是就是不知道问题出在哪儿?
 
应该先对n初始化一下,比如:n=ones(2,1);

pikky 2008-11-13 16:14

回复: [求助]一个很简单的问题,可是就是不知道问题出在哪儿?
 
谢谢你的回复。
不过我初始化后结果还是不对。

anbcjys 2008-11-14 07:56

回复: [求助]一个很简单的问题,可是就是不知道问题出在哪儿?
 
x 是多少 可能没有和b相等的

laosam280 2008-11-17 17:15

回复: [求助]一个很简单的问题,可是就是不知道问题出在哪儿?
 
for i=1:200,
b=(5+2.5)*1e-9;
if x(i)==b
n(2)=x(i);
end
end
这个程序肯定是会报错的,循环体里的n你是怎么定义的呢?

mathjiang 2008-11-17 18:17

回复: [求助]一个很简单的问题,可是就是不知道问题出在哪儿?
 
除了语句书写不规范外,for i=1:200,
b=(5+2.5)*1e-9;
if x(i)==b
n(2)=x(i);
end
end
每有错哈,当然先要给x赋值。

mathjiang 2008-11-17 18:21

回复: [求助]一个很简单的问题,可是就是不知道问题出在哪儿?
 
试一下下述语句:
l=200;m=20; %m的值是随便赋的哈.
x=rand(1,l)
b=x(m);
for i=1:l
if x(i)==b
n(2)=x(i)
end
end
运行出来n为 2 dim 向量. 在2008a下通过哈。


所有时间均为北京时间。现在的时间是 15:38

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.