Hello, can anyone help me with this one? I have this array called 'd'. I want to generate a new array called ratio. Answers for array ratio should be calculated as the given example. d1,d2,... are numbers in descending order. I have around 100 numbers in array d. So I am trying to run a code to do the calculations automatically. Thank you.
d=[d1;d2;d3;d4] % example d=[4;3;2;1]
size=length(d)
ratio=zeros(size,size-1)
%calculations
ratio=[0 0 0 ;
d1/d2 0 0 ;
d1/d3 d2/d3 0 ;
d1/d4 d2/d4 d3/d4 ]

 Réponse acceptée

Ameer Hamza
Ameer Hamza le 20 Avr 2020
Modifié(e) : Ameer Hamza le 20 Avr 2020

1 vote

try this
d = [4 3 2 1];
ratio = tril(d./d.', -1);
ratio(:,end) = [];
Result:
ratio =
0 0 0
1.3333 0 0
2.0000 1.5000 0
4.0000 3.0000 2.0000

2 commentaires

Dinu Th.
Dinu Th. le 20 Avr 2020
Thank you for the quick response. It works.
Ameer Hamza
Ameer Hamza le 20 Avr 2020
I am glad to be of help.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by