string as input for function

this function handles a string as input:
function rev=stringrev(a)
n=length(a);
for i=1:n
b(i)=a(n-i+1);
end
rev=b;
but this does not:
function palindrom=checkpalin(a)
rev=stringrev(a);
if strcmp(rev,a)
palindrom=sprintf('%s is a palindrom', rev)
else
palindrom=sprintf('%s is not a palindrom', rev)
end
what is the difference?
This is what happens when I run them in matlab:
>> b='astsa'
b =
astsa
>> checkpalin(b)
??? Undefined function or method 'checkpalin' for input arguments of type 'char'.
>> a='iceice'
a =
iceice
>> stringrev(a)
ans =
ecieci
>>

 Réponse acceptée

Grzegorz Knor
Grzegorz Knor le 7 Nov 2011

0 votes

Are you sure that you have not done a typo in the filename? I've tested your functions, and they work.

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB Report Generator 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