I'm trying to make sign function that return sign of the input the problem is i can't make it return a vector when i type signt(4) i get the resultat but when i put a matrix i get an error
I'm trying to make sign function that return sign of the input the problem is i can't make it return a vector when i type signt(4) i get the resultat but when i put a matrix i get an error
function y = signt(x)
n=length(x);
i=0;
while(i<n);
if x<0
y(i)=-1;
else
y(i)=1;
end
i=i+1;
end
end
end

 Réponse acceptée

Star Strider
Star Strider le 17 Mai 2015

1 vote

Begin ‘i’ at 1 and subscript ‘x’:
n=length(x);
i=1;
while(i<n);
if x(i)<0
y(i)=-1;
else
y(i)=1;
end
i=i+1;
end

2 commentaires

Imad Boucetta
Imad Boucetta le 17 Mai 2015
Modifié(e) : Imad Boucetta le 17 Mai 2015
Thank u sir but i get a :
Error in ==> singt at 2
n=length(x)
Star Strider
Star Strider le 17 Mai 2015
Change it to:
n=length(x);
i=0;
while(i<n);
i=i+1;
if x(i)<0
y(i)=-1;
else
y(i)=1;
end
end
That works for vectors and scalars.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Aerospace Blockset dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by