Having trouble with functions

1 view (last 30 days)
Matthew Benjamin
Matthew Benjamin on 10 Feb 2014
Commented: Matthew on 10 Feb 2014
So I have this problem for school and I don't know how to take an element out of an array or matrix and put it into another one. Here is the question:
Create a function meancomp that compares the mean value of the odd numbered elements with the mean value of the even numbered elements and returns:
0, if they are equal
1, if the mean of the odd numbered elements is greater,
2, if the mean of the even numbered elements is greater"
This is what I have:
for m=1:length(x)
if mod(x,2)==0 % code end

Accepted Answer

Image Analyst
Image Analyst on 10 Feb 2014
No. Just extract them like this
oddElements = A(1:2:end);
same for even but you start at 2 instead of 1, though you can still end at "end". To find the mean of an array, use mean
oddMean = mean(oddElements);
I trust you can take it from there because you know how if/else statements work.
  1 Comment
Matthew
Matthew on 10 Feb 2014
This was extremley helpful, thank you.
My problem now is making the if/else statements into one function called meancomp. This is what I have and it only displays '2'.
function p=meancomp(A)
oddElements=A(1:2:end);
evenElements=A(2:2:end);
oddMean=mean(oddElements);
evenMean=mean(evenElements);
if evenMean==oddMean
disp('0');
elseif evenMean<oddMean
disp('1');
else
disp('2');
end
end

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!