write a function called palindrome that takes one input argument a char vector and recursively determine whether that argument is a palindrome you are not allowed to use loops not built in function like srtcmp etc. the function returns true or false
9 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
JAYANTHI SANKARALINGAM
le 21 Oct 2020
Réponse apportée : Tarun Sangwan
le 27 Mar 2024
function ok=palindrome(txt)
iflength(txt)<=1
ok=true;
else
ok=(txt(1)==txt(end)&&palindrome(txt(2:end-1)));
end
end
hi,
It shows error in else statment in the above program, kindly give me a solution to solve the above problem.
0 commentaires
Réponse acceptée
Ameer Hamza
le 21 Oct 2020
Modifié(e) : Ameer Hamza
le 21 Oct 2020
There should be a space between if keyword and the condition
if length(txt)<=1
%^ insert a space here
Apart from that, the logic is correct, but you just have a misplaced bracket. Following is correct
ok=(txt(1)==txt(end))&&palindrome(txt(2:end-1));
Plus de réponses (3)
Sandeep Kumar Patel
le 13 Avr 2022
Modifié(e) : DGM
le 10 Jan 2024
function ok=palindrome(txt)
if length(txt)<=1 % added space
ok = true;
else
ok = (txt(1)==txt(end)) && palindrome(txt(2:end-1));
% close parentheses --^
end
end
1 commentaire
DGM
le 10 Jan 2024
Editor's note: I added the comments here so that readers know the two lone characters that were actually changed.
Black Woods
le 12 Déc 2022
function ans=palindrome(v)
if v(1)==v(end)
ans=true;
if length(v)==1 || length(v)==2
return
else
palindrome(v(2:length(v)-1));
end
else
ans=false;
end
end
0 commentaires
Tarun Sangwan
le 27 Mar 2024
function p = palindrome(n)
if length(n)/2<1
p = 2
else
p = n(1) == n(end)
p = [p palindrome(n(2:end-1))]
end
p = ~ismember(0,p)
0 commentaires
Voir également
Catégories
En savoir plus sur Matrix Indexing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!