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
15 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
JAYANTHI SANKARALINGAM
el 21 de Oct. de 2020
Respondida: Tarun Sangwan
el 27 de Mzo. de 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 comentarios
Respuesta aceptada
Ameer Hamza
el 21 de Oct. de 2020
Editada: Ameer Hamza
el 21 de Oct. de 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));
Más respuestas (3)
Sandeep Kumar Patel
el 13 de Abr. de 2022
Editada: DGM
el 10 de En. de 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 comentario
DGM
el 10 de En. de 2024
Editor's note: I added the comments here so that readers know the two lone characters that were actually changed.
Black Woods
el 12 de Dic. de 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 comentarios
Tarun Sangwan
el 27 de Mzo. de 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 comentarios
Ver también
Categorías
Más información sobre Simulink Environment Customization en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!