How do you write a finction for TwoSums

8 visualizzazioni (ultimi 30 giorni)
It should take in an array of numbers and return the sum of odd numbers and the sum of even numbers. For example: [s1 s2] = TwoSums ([3 2 4 7 8]) %should return 10 and 14 [s1 s2] = TwoSums ([-1 -2 9 6 5 8]) %should return 13 and 12

Risposta accettata

Chandrasekhar
Chandrasekhar il 4 Mar 2014
Modificato: Chandrasekhar il 4 Mar 2014
arr = input('enter an array of numbers: ')
[s1 s2] = TwoSums(arr)
Function:
function [sum1,sum2] = TwoSums(arr)
sum1 = 0;
sum2 = 0;
for i = 1:length(arr)
if(rem(arr(i),2)==1)
sum1 = sum1+arr(i);
else
sum2= sum2+arr(i);
end
end
Please Accept the answer
  1 Commento
Jos (10584)
Jos (10584) il 4 Mar 2014
REM is vectorized!
isodd = rem(A,2)==1 % true for odd values in A
s1 = sum(A(isodd)) % sum of odd values
s2 = sum(A(~isodd)) % sum of even values

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by