Azzera filtri
Azzera filtri

Recursion revisited - can you help me?

4 visualizzazioni (ultimi 30 giorni)
Gerry Dumlao
Gerry Dumlao il 27 Giu 2021
function v = reversal(v)
if length(v) > 1
v = [v(end) reversal(v(1:end-1))];
end
end
  5 Commenti
Gerry Dumlao
Gerry Dumlao il 28 Giu 2021
function v = reversal2(v)
if length(v) > 1
ii=round(length(v) /2 );
v = [reversal2(v(ii+1:end)) , reversal2(v(1:ii))];
end
end
is this correct?
Walter Roberson
Walter Roberson il 28 Giu 2021
Tests out okay
V = char(randi([33 126], 1, 31))
V = '*^jMW@uXA#]RGVBM3|7;F?6YoAy"_;['
RV = reversal2(V)
RV = '[;_"yAoY6?F;7|3MBVGR]#AXu@WMj^*'
isequal(RV, fliplr(V))
ans = logical
1
V = char(randi([33 126], 1, 32))
V = 'Q|#`bcXGa;U3(WMtLD2'e;+}mQltHR5g'
RV = reversal2(V)
RV = 'g5RHtlQm}+;e'2DLtMW(3U;aGXcb`#|Q'
isequal(RV, fliplr(V))
ans = logical
1
function v = reversal2(v)
if length(v) > 1
ii=round(length(v) /2 );
v = [reversal2(v(ii+1:end)) , reversal2(v(1:ii))];
end
end

Accedi per commentare.

Risposte (2)

ghazal
ghazal il 2 Lug 2022
I have problem and this is my code, anyone can help me?
function v=reversal(v)
if length(v)==1
ii=round(length(v)/2);
v=[reversal(v(ii+1:end)) , reversal(v(1:ii))];
end
end
  3 Commenti
ghazal
ghazal il 3 Lug 2022
Thanks friend for your explanation actually I don't get where the problem is, but I changed my code to this and I get this Error!
Error:
Undefined function 'reversal' for input arguments of type 'double'.
Code:
function v = reversal2(v)
if length(v) > 1
ii=round(length(v) /2 );
v = [reversal2(v(ii+1:end)) , reversal2(v(1:ii))];
end
end
Walter Roberson
Walter Roberson il 4 Mar 2024
You would have a problem running function reversal when the function is named reversal2

Accedi per commentare.


Jeevan
Jeevan il 4 Mar 2024
code run without output

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by