hi dear friends could you plz do me a favor and solve these two equations? the equations are for finding PV cost analysis.
i have two equations
b=53
n=20
1- A=(b+300)+250+100-400
2- P=(A*(1-(1+50)^-n)/50
b is variable b=1:5:50
the system is works for n=20 years. For every b variable i have to find P ;
thanks ;)

3 commentaires

Define all variables, after that just calculate ...
b=.................
n=.................
A=(b+300)+250+100-400;
P=A*(1-(1+50)^-n)/50;
Mamad Mamadi
Mamad Mamadi le 12 Avr 2020
we have to use for loop i think coz b is variable i mean put 5xb to find p1 and put 10xb to find p2 and so on till 50xb
Image Analyst
Image Analyst le 12 Avr 2020
Unless your teacher requires a loop, you don't need one. See Ameer's answer below.

Connectez-vous pour commenter.

 Réponse acceptée

Ameer Hamza
Ameer Hamza le 12 Avr 2020
Modifié(e) : Ameer Hamza le 12 Avr 2020
Both of the following codes are equivalent.
Vectorized:
n = 20;
b = 1:5:50;
A = (b+300)+250+100-400;
P = A*(1-(1+50)^-n)/50;
Result:
P =
Columns 1 through 7
5.0200 5.1200 5.2200 5.3200 5.4200 5.5200 5.6200
Columns 8 through 10
5.7200 5.8200 5.9200
For-loop
n = 20;
b = 1:5:50;
P = zeros(1,numel(b));
for i=1:numel(b)
A = (b(i)+300)+250+100-400;
P(i) = A*(1-(1+50)^-n)/50;
end
Result:
P =
Columns 1 through 7
5.0200 5.1200 5.2200 5.3200 5.4200 5.5200 5.6200
Columns 8 through 10
5.7200 5.8200 5.9200

16 commentaires

Image Analyst
Image Analyst le 12 Avr 2020
Can you format the code ONLY as Code, and not the command window stuff. Otherwise they can click Copy but get all the non-runnable stuff also. Then after they paste into a script, they'll have to delete the command window stuff or else get an error.
Ameer Hamza
Ameer Hamza le 12 Avr 2020
Good idea. Thanks for pointing out.
Mamad Mamadi
Mamad Mamadi le 14 Avr 2020
Ameer Hamza thank you very much for your great answer realy helped me. but i wanna say the results are different from my calculation in excel am i wrong in calculation?
the results:
and how is it possible to show the results of A1 to A50 like P1 to P50 ?
Ameer Hamza
Ameer Hamza le 14 Avr 2020
Modifié(e) : Ameer Hamza le 14 Avr 2020
Mamad, in your question, the b was not multiplied with 83. If you multiply it, you will get the same answer
n = 20;
b = [1 5:5:50];
A = (83*b+300)+250+100-400;
P = A*(1-(1+50)^-n)/50;
Mamad Mamadi
Mamad Mamadi le 14 Avr 2020
ok understood your right thank you bro ☺
Ameer Hamza
Ameer Hamza le 14 Avr 2020
I am glad to be of help.
Mamad Mamadi
Mamad Mamadi le 18 Avr 2020
Mr Ameer thanks for your helping, i wanted to mention that the codes you write give the wrong answer again coz i am new at matlab i didnt find the problem. i solved it in excel one by one but the answers are different?!! :( thanks
Ameer Hamza
Ameer Hamza le 18 Avr 2020
Can you post the MATLAB code you are running?
i changed the values.
clc; clear all;
Cc= 1311.28
M = 21
R = 514
S = 279
I = 0.05
a=83
n = 20;
b = 1:5:50;
P = zeros(1,numel(b));
for i=1:numel(b)
A(i) = (a*b(i)+Cc+M+R)-S;
P(i) = (A(i)*(1-(1+I)^-n))/I;
end
Ameer Hamza
Ameer Hamza le 19 Avr 2020
I am exactly getting the same values.
Mamad Mamadi
Mamad Mamadi le 19 Avr 2020
Modifié(e) : Mamad Mamadi le 19 Avr 2020
yes you are right sir but the problem is here coz when b=5 'A ' must be '1982' and P=24704 and so on.
Ameer Hamza
Ameer Hamza le 19 Avr 2020
But column E of your excel sheet shows when b=5, then A=1650 and P=25737. The column H and I must have a different formula.
Mamad Mamadi
Mamad Mamadi le 19 Avr 2020
both of them are the same formula sir.
in matlabs answer, when b=5 then A=2065 and P=25737 give us the wrong answer.
but in excel sheet the answer is, when b=5 then A=1982 and P=24704
Ameer Hamza
Ameer Hamza le 19 Avr 2020
Can you attach your excel file?
Mamad Mamadi
Mamad Mamadi le 19 Avr 2020
excel sheet
Ameer Hamza
Ameer Hamza le 19 Avr 2020
Mamad, In this comment: https://www.mathworks.com/matlabcentral/answers/517357-how-can-we-solve-this-2-equation#comment_827851 I also modified the value of 'b'. But you didn't changed it in your code. Closely see the difference between the value of 'b', I wrote in that comment and your code, and you will find the mistake.

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