Function definitions are not permitted in this context. is the error
Infos
Cette question est clôturée. Rouvrir pour modifier ou répondre.
Afficher commentaires plus anciens
function y=minutie(x)
i=ceil(size(x)/2);
if x(i,i)==0;
Y=0;
else
Y=sum(x(:))-1;
end
1 commentaire
Image Analyst
le 9 Mar 2016
Please complete your question.
Réponses (1)
Walter Roberson
le 9 Mar 2016
size(x) is a vector, even when x is a scalar or a vector. So i=ceil(size(x)/2) will have i be a vector. Then you use x(i,i) which is indexing x with that vector at each of the two indices, which would be a request to test 4 different locations (a 2 x 2 subarray). This would also fail if x is more than twice as long as it is wide or more than twice as wide as it is long.
Instead, check x(i(1), x(i(2))
Or, more simply, check
x( ceil(numel(x)/2) )
as that spot is going to be right in the middle of the array
Cette question est clôturée.
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!