Summing the even index elements of a 1D array
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Camden Nelson
am 6 Mai 2023
Kommentiert: Camden Nelson
am 6 Mai 2023
I am trying to write a recursive function that sums the elements in even indexed position of a 1D array, but am not sure how to do this. I have some of the code started below, but it is obvously incorrect:
function [out] = mySumEven(A)
n = length(A);
if n == 1
out = 'No numbers in even positions';
elseif n == 2
out = A(2);
else
out = A(2) + mySumEven(A(4:n));
end
end
0 Kommentare
Akzeptierte Antwort
Atsushi Ueno
am 6 Mai 2023
Bearbeitet: Atsushi Ueno
am 6 Mai 2023
mySumEven([1 2 3 4 5 6 7 8 9])
function [out] = mySumEven(A)
n = length(A);
if n == 1
disp('No numbers in even positions'); % out = 'No numbers in even positions';
out = 0; % added
elseif n == 2
out = A(2);
else
out = A(2) + mySumEven(A(3:n)); % out = A(2) + mySumEven(A(4:n));
end
end
2 Kommentare
Atsushi Ueno
am 6 Mai 2023
MATLAB can add numerical values and character vectors. The output is as numeric vector. It means every charactor code have been added by 1.
1 + [1 2 3 4]
1 + 'No numbers in even positions'
char(ans)
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!