how do i remove this error? Function definitions are not permitted in this context.
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
sneha kriplani
el 29 de Jun. de 2015
Comentada: Adam
el 29 de Jun. de 2015
xyRange=[1,5]; %// Starting xy range of particles
numP=3; %// Number of particles generated each day
vx=0.6; vy=0.4; %// x and y velocity
X=[]; Y=[]; %// Vectors start out empty
for day=1:10
%// Generate 3 particles and add to end of vectors X and Y
X=[X;randi(xyRange,numP,1)];
Y=[Y;randi(xyRange,numP,1)];
%// Move all the particles
X=X+vx;
Y=Y+vy;
end
plot(X,Y,'kd');
grid on ;
axis([1,50,1,50]);
function [box] = coord(X,Y)
for j = floor(X/5)+1;
k = floor(Y/5);
box = k*10+j;
end
end
0 comentarios
Respuesta aceptada
Thorsten
el 29 de Jun. de 2015
You can write it w/o a function, and you don't need the inner for j= ... loop:
for day=1:10
%// Generate 3 particles and add to end of vectors X and Y
X=[X;randi(xyRange,numP,1)];
Y=[Y;randi(xyRange,numP,1)];
%// Move all the particles
X=X+vx;
Y=Y+vy;
end
plot(X,Y,'kd');
grid on ;
axis([1,50,1,50]);
j = floor(X/5)+1;
k = floor(Y/5);
box = k*10+j;
end
2 comentarios
Adam
el 29 de Jun. de 2015
You should give completely new questions their own thread really rather than tagging them onto a comment of an answer.
Más respuestas (1)
James Tursa
el 29 de Jun. de 2015
You have your sub function "coord" defined inside your for loop. Move it outside your for loop.
2 comentarios
Adam
el 29 de Jun. de 2015
also if that is a script you need to turn the whole thing into a function in order to define subfunctions.
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!