大神帮我改改我写的matlab程序。。。我用FOR循环求出的e(i)为什么只是一个数而不是一组数?

X=xlsread(‘datax.xls’);
Y=xlsread(‘datay.xls’);
Z=xlsread(‘dataz.xls’);
K=ones(2500,1);
S=[];
Temp=[x,y,k];
S=[s;temp];
A=Z\S;
a=A(1,1);
b=A(1,2);
c=A(1,3);
for i=1:2500;
e(i)=z(i,1)*10e-003-a*s(i,1)-b*s(i,2)-c;
end
e(i);
[ma,I]=max(e(i));
max(e(i));
If max(e(i))<0.001
Output(‘合格’)
Else if
Output(’不合格’);

把e(i)换成e,不加括号,你加了就是第2500那一个数。追问

其他的地方写的有问题么? 求e的最大值的那个函数和最后输出合格与不合格的地方有没有错的?

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-30
[ma,I]=max(e);//这个是数组
max(e);
If max(max(e))<0.001// 错误
Output(‘合格’)
Else if
Output(’不合格’);
第2个回答  2013-04-29
你最后i=2500 当然 e(i)是e数组中第2500个数字当然是一个追问

其他的地方写的有问题么? 求e的最大值的那个函数和最后输出合格与不合格的地方有没有错的?

追答

因该没有

...我用FOR循环求出的e(i)为什么只是一个数而不是一组数?
把e(i)换成e,不加括号,你加了就是第2500那一个数。

MATLAB 如何让输出结果为数值而不是字母
1、楼上回答有问题,数值运算无法实现高精度算法(vpa);另一方面,循环体里面对s赋值,和s是否定义成符号变量没有关系,第一行代码完全可以省略。2、for循环的范围x = 20:2根本就是空的,循环体不可能执行。猜测你是不是想要x=0:-1:2?3、事实上,p=actorial(20)本身已经超出浮点数的精度,...

matlab中for循环只有一个结果是什么情况,下面是我的程序,可以帮忙看一...
for i = 1:num_loop C = CC(i,1);A11 = (-1.\/C.*10e9)*(1-Vm.*(a1.\/(2.*T.*Vm.^0.5)+a2.\/T)).\/(R0.*exp((a0+a1.*Vm.^0.5+a2.*Vm).\/T));A12 = (-1.\/C.*10e9).*(Vm.*(a0+a1.*Vm.^0.5+a2.*Vm)).\/(T.^2.*(R0.*exp((a0+a1.*Vm.^0...

MATLAB中for循环变量值不增加
从代码看,循环后i和j没有不变的理由(除非m、n为1,循环体只执行一次,实际上没有循环)。顺便说一下,MATLAB的for循环是基于索引的,即使你在循环体里面修改控制变量i、j的值,也不会影响循环的执行次数(实际上在循环体里面修改的i、j可以看成临时创建的局部变量)。

matlab,for循环结果只有一个
matlab,for循环结果只有一个 n0=(4*beta*ap^2\/m\/V)^0.5; 这个语句更新n0变量,并没有对上一次生成的n0进行保存。所以建议程序做一点小小的改动。在for循环之前,初始化一个变量N=[];同时for循环中增加一条语句:

为什么把matlab结果输出文本文档,只输出了最后一个数?
你定义的b是一个一元变量,而不是一个向量,所以后面的赋值就把以前的给覆盖了,你就只能看到最后一赋值了。你可以把程序改为:clc,clear a=load('data5B.txt');k=0;for i=1:601 for j=1:801 if a(i,j)>12 k=k+1;b(k)=a(i,j);dlmwrite('b.txt',b)end end end ...

matlab如何使用for循环修改一大段程序中的某些内容?
应该是可以的,比如每次循环更改的是二位字符,想法是根据i的值来生成每次需要的修改数或字符。如i=1时,由i生成字符串b=strcat(num2str(i),num2str(i+1)); 结果就是‘12’,用作title;然后再生成相应数字,c=str2num(b);这时c=12,相应的21也可以倒着生成字符串,再转换为数字就是21了。

matlab: 为什么我的程序中for循环只执行了一次? 谢谢
试一下我的修改:work_3(nmat); %多行两列的矩阵 A_1 = A(:,1);A_2 = A(:,2);s1 = numel(unique(A_2)); % length(unique(A_2));count = hist(A_2,unique(A_2));p = 1; k = 1; q = count(1);D = work_5(A_1,p,q);for j = 1:(s1-1)if (length(D)...

用Matlab做for循环,怎样存储每一次循环结果?
程序输出for_count = 20,即这里执行了20次循环。但如果按照C++中的FOR循环功能去理解,这里应该只执行7次循环,且i_record的最终结果为[3,6,9,12,15,18,21]。4、如果在MATLAB中编程时需要在循环的过程中改变步长、终止等参数,建议使用while命令,对于TEST.m,直接修改为如下代码即可。

matlab,for循环问题
就是从1到r-1,然后从r+1到rows,跳过了r不操作。例子如下:>> a = zeros(1,5)a = 0 0 0 0 0 >> for i = [1:2 4:5] a(i) = 2; end a = 2 2 0 2 2 请采纳。

相似回答