Please help me to solve the issue for the following code
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Prabha Kumaresan
am 26 Jan. 2018
Kommentiert: Prabha Kumaresan
am 29 Jan. 2018
I have asked this question already but I couldnt get the answers what i actually need.
A=[0.01 0.02 0.03 0 0 0 0.02;
0.02 0.03 0.04 0 0 0 0.03;
0.03 0.02 0.02 0 0 0 0.04]
s=sum(sum(A))
if i run the code it gives the value 0.3100.
But how to replace the numbers such that the sum of A should be 0.35. could anyone help me on this
1 Kommentar
Rik
am 26 Jan. 2018
If you don't get an answer to work, you should comment there, NOT open a new question.
Akzeptierte Antwort
Rik
am 26 Jan. 2018
A=[0.01 0.02 0.03 0 0 0 0.02;
0.02 0.03 0.04 0 0 0 0.03;
0.03 0.02 0.02 0 0 0 0.04];
A = 0.35*A/sum(A(:))
s=sum(A(:))
2 Kommentare
Walter Roberson
am 29 Jan. 2018
Why should that line not be included? If it gets you the answer you want, then why not use it?
If you want to generate A so that it already has the right sum, then use Roger's randfixedsum() from the File Exchange.
Weitere Antworten (1)
Prabha Kumaresan
am 29 Jan. 2018
2 Kommentare
Walter Roberson
am 29 Jan. 2018
Bearbeitet: Walter Roberson
am 29 Jan. 2018
I do not understand that remark.
Perhaps you need
new_A = 0.35*A./sum(A(:));
additions_to_A = new_A - A;
and now the additions of numbers to A that you need to reach the desired total is in the matrix additions_to_A, and you can get the desired matrix by using
desired_matrix = A + additions_to_A;
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!