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

 採用された回答

Image Analyst
Image Analyst 2014 年 2 月 10 日

0 投票

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 件のコメント

Matthew
Matthew 2014 年 2 月 10 日
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

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File Exchange で Loops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by