Flipping the numbers 1 to -1

3 ビュー (過去 30 日間)
Offroad Jeep
Offroad Jeep 2016 年 2 月 11 日
コメント済み: Offroad Jeep 2016 年 5 月 17 日
Hi, to all the members. Consider a matrix 'a' now we take a random number, if random number is >= to 0.5 change the first element from 1 to -1 then calculate mag,if not keep it as 1...... then for next step if random number is < 0.5 keep the matrix and calculate mag, now again take random number and check if now the random number is >=0.5 flip the second element calculate mag.......etc keep on going till the 25th element.
for example
a = 1 1 1 1 random = 0.2324 first element remains same mag = 4
now again take random number random = 0.5649 now a becomes a = -1 1 1 1 mag = 2 now again take random random = 0.6978 a = -1 -1 1 1 mag = 0
random = 0.2345 a = -1 -1 1 1 mag = 0
random = 0.7995 a = -1 -1 -1 1 mag = -1
random = 0.3453 a = -1 -1 -1 1 mag = -1
random = 0.9874 a = -1 -1 -1 -1 mag = -4
end the loop
show mag values and plot against B mag = 4 2 0 0 -1 -1 -4
B =linspace(2,0,numel(mag)) plot(B,mag)
thanks for guidance
  7 件のコメント
Offroad Jeep
Offroad Jeep 2016 年 2 月 11 日
I will be grateful if you can help me in this regard.......... and i think i will be able to solve the problem where i want to fit this logic.......
Offroad Jeep
Offroad Jeep 2016 年 5 月 17 日

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

採用された回答

Stephen23
Stephen23 2016 年 2 月 11 日
編集済み: Stephen23 2016 年 2 月 12 日
Try using a while loop:
a = ones(1,4)
k=1;
mag=[];
while k<=numel(a)
x = rand()>=0.5;
a(k)=a(k)-2*x;
mag(end+1)=sum(a);
k=k+x;
end
Produces:
a =
-1 -1 -1 -1
mag =
4 4 2 2 2 0 -2 -4
  7 件のコメント
Stephen23
Stephen23 2016 年 2 月 12 日
If my answer resolves your question then please accept it.
Offroad Jeep
Offroad Jeep 2016 年 5 月 17 日

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

その他の回答 (1 件)

Jos (10584)
Jos (10584) 2016 年 2 月 11 日
help numel
help for
help rand
help if
help sum
% for k=1:N
% if ...
% A(k) = -A(k)
% B(k) = sum ...
% end
  1 件のコメント
Offroad Jeep
Offroad Jeep 2016 年 2 月 11 日
????????????

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

カテゴリ

Help Center および File ExchangeMatrices and Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by