MATLAB 怎样把循环里的值,存到外面?
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/20 19:35:28
n=10;B=zeros(1,n);fork=1:nr=k;%运算后数据B(k)=r;%存入矩阵内end;
你每次循环生成的值是什么形式——标量,向量,矩阵,或是不定?标量的情况最简单,如果是向量和矩阵,就要考虑你打算用什么样的形式存储了.通常采用两种方法(以标量为例):1、把新的结果存在下标为end+1的
楼上的回答基本思路是对的,应该使用ndgrid函数来做.但楼上的代码存在两个问题:一是做法比较繁琐,二是只适用于A-F六个变量元素数量相同的情况. 参考代码:A = [1
你最好描述下你要的程序要实现什么现在看来,应该是你循环切换,但没走出之前的循环我根据我对你的目的的揣测,修改如下,你看下:shi=1:23;mode1=0;mode2=0;ju=[0,1,1,12,4
你不会让写代码吧,这个直接用一个条件语句就能办到啊
isOK=1;forn=1:mif((O(1)-A(2,n))^2+(O(2)-A(3,n))^2>(A(1,n)+A(1,m+1))^2)isOK=0;break;endifisOKA(2,m+1)
建议利用元胞数组,如每循环一次产生一个data矩阵,那么我可以这样保存在data_save中n=100;fori=1:nforj=1:n%一些相关程序,产生矩阵datadata_save(i,j)={
y=func(0,10)%definefunctiony=func(y,x)ifx>0y=x+func(y,x-1);elsey=x;endend再问:谢谢。可能我没能表达清楚,下面是我的程序。A=z
算数列收敛的吗?用while写...D=...;%给出D(1)D(2)=f(D(1));e=abs(D(2)-D(1));%给e赋初值i=2;whilee>thresholdD(i+1)=f(D(i)
改了点东西,你看你是不是这个意思?clearall;clc;%初始数据sensor_number=5;%阵元数N_x=1024;%快拍数f=8*10^9;%信号频率l=3*10^8/f;%波长d=0.
clcclearfori=1:40ifmod(i,2)==0y(i)=0;elsey(i)=1endendY=reshape(y,4,10)
你说的不是很清楚可以把矩阵合并%%A/B/C/D四矩阵%%%新矩阵EE=[ABCD]然后for循环时候取矩阵E对应的列数.
不能用循环,因为他们的名字不一样.如果一样,那还可以.定义一个二位数组,二就是一个矩阵,一次,给一行赋值就可以.如:fori=1:na(i,:)=.;end
C初始值是多少?再问:whileC>5;B0=atand(Z/sqrt(X^2+Y^2));N0=a/sqrt(1-e*sind(B0)^2);B1=atand(tand(B0)+N0*e*sind(
clc;clearx=1:5;x1=x;A(5,5)=0;for i=1:5 for j=1:5 &
D1(t*10+1)=T*d1;F1(t*10+1)=Tr*f1;再问:不对再答:symsrWaWbVzabhPze1xe1ye1zD11D21D31F11F21F31d1=[25.5;-14.75;
SA=0;fori=1:3A=2*i+1SA=SA+Aend
这是可以的,你去试一试吧!其是循环变量i在for……end程序里不能改,但while只是一个条件判断,所以就可以任意改咯.再问:能给我看一下程序吗whilei
有加压泵,让水在管道里循环了
第一个改成j=0:(2*n-1);w=cos(pi*j./n)+i*sin(pi*j./n)再问:那这一部分fork=2:nt=A(k)*w(j)^(k-1)还有比较优的算法吗?个人感觉计算次方会更复