How would I write a script to solve this problem. Assume that I have a vector named D. Using iteration (for) and conditionals (if and/or switch), separate vector D into four vectors posEven, negEven, posOdd, and negOdd.

1 回表示 (過去 30 日間)
*Find the maximum, minimum elements and get the summation and so on, but how would I solve the problem using conditional statement and iterations instead.***
a. posEven contains all of the positive even numbers in D b. negEven contains all of the negative even numbers in D c. posOdd contains all of the positive odd numbers in D d. negOdd contains all of the negative odd numbers in D
  3 件のコメント
Bryce Imbriale
Bryce Imbriale 2018 年 9 月 28 日
編集済み: Walter Roberson 2018 年 9 月 28 日
This is what i have so far but problebly looks super confusing.
>> D = [-4,-3,-2,-1,0,1,2,3,4]
posEven = []; posOdd = []; negEven = []; negOdd = [];
for val = D
if val > 0
if mod(val,2) == 0
posEven = [posEven val]
else
posOdd = [posOdd val]
end
elseif val < 0
if mod(val,2) == 0
negEven = [negEven val]
else
negOdd = [negOdd val]
end
end
end
D =
Columns 1 through 8
-4 -3 -2 -1 0 1 2 3
Column 9
4
negEven = -4 -2
negOdd = -3 -1
posOdd = 1 3
posEven = 2 4
Walter Roberson
Walter Roberson 2018 年 9 月 28 日
What difficulty are you observing?

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

回答 (1 件)

OCDER
OCDER 2018 年 9 月 28 日
編集済み: OCDER 2018 年 9 月 28 日
My guess is Bryce needs to "find the maximum and minimum elements, and get the summation" for each variable. But seems max, min, or sum cannot be used.
Start with:
maxPosEven = posEven(1);
for j = 2:numel(posEven)
if posEven(j) > maxPosEven %Adjust the inner contents for your case
maxPosEven = posEven(j);
end
end

カテゴリ

Help Center および File ExchangeProgramming についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by