r = 1;
phi = linspace (0, pi, 30);
theta = linspace (0, 2*pi, 30);
[phi, theta] = meshgrid(phi, theta);
x = r.*cos(theta).*sin(phi);
y = r.*sin(theta).*sin(phi);
z = r.*cos(phi);
% This Plots the sphere !
mhndl = mesh(x, y, z);
set(mhndl, ...
'EdgeColor', [0.6,0.6,0.6], ...
'EdgeAlpha', 0.5, ...
'FaceAlpha', 0.5);
axis equal
axis off
N = 10;
a = (2*r)/N;
j = r:a:r;
k = 0:(2*pi)/N:2*pi;
for i = 0:1:N;
x = sqrt(r*rj(i)*j(i+1))*cos(k(i+1));
y = sqrt(r*rj(i)*j(i+1))*sin(k(i+1));
end
hold on
plot3(x, y, j,'*');

I have to implement this algorithm to evenly plot N number of points on a sphere !
repeat N times {
Choose 'z' equidistributed from [r:r]?reeedfndr
Choose 'phi' equidistributed from [0:2*Pi]
Set x = (sqrt(r*r  z*z))* cos(phi);
Set y = (sqrt(r*r  z*z))* sin(phi);
}
I get this error :
"??? Subscript indices must either be real positive integers or logicals. "
The sphere plot is correct, this error is in the for loop !
Please Help !
