งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Computer Programming for Engineers

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Computer Programming for Engineers"— ใบสำเนางานนำเสนอ:

1 259201 Computer Programming for Engineers
Week 9 Engineering Problem #2

2 Payback Period ในการลงทุนโครงการ ใดๆ หากต้องการพิจารณาว่าโครงการนั้นๆ คุ้มค่าหรือไม่ สามารถใช้ดัชนีชี้วัดทางการเงินได้หลายตัว เช่น IRR, NPV ฯลฯ หนึ่งในนั้น มีดัชนีทางการเงินที่เรียกว่า Payback Period โดยที่ Payback Period นี้ จะบอกระยะเวลาคุ้มทุน (ระยะเวลาคืนทุน) โดยคำนวณบนพื้นฐานของเงินลงทุน และรายได้ที่เกิดขึ้น

3 Payback Period เช่น หากโครงการหนึ่งๆ ลงทุน 65 ล้านบาท มีผลกำไร 3 ปีแรก ปีละ 10 ล้านบาท ปีถัดๆ ไป มีกำไรเพิ่มขึ้นเป็น 15 ล้านบาท โครงการนี้จะคืนทุนในระยะเวลากี่ปี เป็นต้น

4 Payback Period เช่น หากโครงการหนึ่งๆ ลงทุน 65 ล้านบาท มีผลกำไร 3 ปีแรก ปีละ 10 ล้านบาท ปีถัดๆ ไป มีกำไรเพิ่มขึ้นเป็น 15 ล้านบาท โครงการนี้จะคืนทุนในระยะเวลากี่ปี เป็นต้น ตอบ คืนทุนภายในปีที่ 6 (หลังจากนั้นเป็นกำไร) PB after 5 years = PB at year 6

5 Payback Period โจทย์ หากต้องการเขียนโปรแกรม ให้ผู้ใช้เลือกเงินลงทุน (Investment) และเลือกกำไรที่คาดว่าจะได้รับในแต่ละปี (Expected Profit) สำหรับการลงทุนระยะ 10 ปี แล้วคำนวณหาจุดคุ้มทุน (Payback Period) และแสดงผลว่าในแต่ละปีมีดุลของบัญชี (Balance) เท่าไร จะเขียนโปรแกรมออกมาได้อย่างไร โดยที่ Payback if Balance > 0 เมื่อ Balance = – Investment + Accumulated Profit Accumulated Profit = ผลรวมกำไรจากปีที่ 1 ถึงปีที่พิจารณา

6 Payback Period Input: เงินลงทุน (Investment)
กำไรที่คาดว่าจะได้รับในแต่ละปี (Expected Income) Output ดุลบัญชี (Balance) ปีที่คืนทุน (PayBack year) Algorithm Payback if Balance > 0 Balance = – Investment + Accumulated Profit Accumulated Profit = ผลรวมกำไรจากปีที่ 1 ถึงปีที่พิจารณา

7 Payback Period ส่วนที่ 1 ของโปรแกรม
รับค่าเงินลงทุน .... ใช้ฟังก์ชั่น Input รับค่ากำไรที่คาดว่าจะได้รับในแต่ละปี ใช้ฟังก์ชั่น Input สำหรับการลงทุนระยะ 10 ปี ...ใช้ for i = 1 : 10 1 Invest = input('How much you want to invest?: '); 2 for i = 1 : 10 3 fprintf('What is the expected income in year %d',i); 4 Income(i) = input(': '); 5 end

8 Payback Period ส่วนที่ 2 ของโปรแกรม
หากำไรสะสม .... ใช้ตัวแปร SumIncome โดยที่ SumIncome = SumIcone + Income(i) สำหรับการลงทุนระยะ 10 ปี ...ใช้ for i = 1 : 10 SumIncome = 0; for i = 1 : 10 8 SumIncome = SumIncome + Income(i); 9 end

9 Payback Period ส่วนที่ 3 ของโปรแกรม หาดุลบัญชี .... ใช้ตัวแปร Balance
โดยที่ Balance = -Invest + SumIncome แสดงผลดุลบัญชี ...ใช้ fprintf สำหรับการลงทุนระยะ 10 ปี ...ใช้ for i = 1 : 10 (ที่มีอยู่แล้ว) SumIncome = 0; for i = 1 : 10 8 SumIncome = SumIncome + Income(i); 9 Balance(i) = - Invest + SumIncome; fprintf('Year %d, expected balance = %.2f\n', i,Balance(i)); 11 end

10 Payback Period ส่วนที่ 4 ของโปรแกรม
เพิ่มเติมเงื่อนไข เมื่อดุลบัญชีเป็นบวกค่าแรก ให้แสดงผลว่าเป็นปีคุ้มทุน ... ใช้ฟังก์ชั่น if 6 SumIncome = 0; 7 PBYear = 0; 8 for i = 1 : 10 9 SumIncome = SumIncome + Income(i); Balance(i) = - Invest + SumIncome; fprintf('Year %d, expected balance = %.2f\n', i,Balance(i)); if Balance(i) > 0 && PBYear <= 0 PBYear = i; fprintf('Payback from Year %d\n', PBYear); end 16 end

11 Payback Period

12 Payback Period ทดลอง #1 โครงการ A ลงทุน 65 ล้านบาท มีผลกำไร 3 ปีแรก ปีละ 10 ล้านบาท ปีถัดๆ ไป มีกำไรเพิ่มขึ้นเป็น 15 ล้านบาท

13 Payback Period ทดลอง #2 โครงการ A ลงทุน 105 ล้านบาท มีผลกำไร 3 ปีแรก ปีละ 8 ล้านบาท 3 ปีถัดๆ ไป มีกำไรเพิ่มขึ้นเป็น 12 ล้านบาท และปีที่เหลือ มีกำไรเพิ่มขึ้นเป็น 15 ล้านบาท

14 Payback Period + Scrap Value
ในการลงทุนบางโครงการ สินทรัพย์อาจมีค่า และสามารถนำมาพิจารณาร่วมกับดุลบัญชี เช่น โครงการหอพัก หากเจ้าของหอพัก ลงทุน 65 ล้านบาท ทำหอพัก เมื่อเลิกกิจการ อาจขายอาคารต่อ ได้ราคา 30 ล้านบาท

15 Payback Period + Scrap Value
Scrap Value เงิน 30 ล้านบาทนี้ เรียกว่าเป็นมูลค่าซาก Scrap Value ซึ่งโดยปกติมีค่าผกผันกับระยะเวลา เช่น เลิกกิจการในปีที่ 1 (อาคารยังใหม่อยู่) อาจขายได้ราคา 30 ล้านบาท แต่ถ้าเลิกกิจการในปีที่ 5 (อาคารเริ่มเก่า) อาจขายได้ราคา 15 ล้านบาท หรือถ้าเลิกกิจการในปีที่ 10 (อาคารเก่ามากๆ) อาจขายได้เหลือ 5 ล้านบาท

16 Payback Period + Scrap Value
สมมติให้ สมการในการคำนวณมูลค่าซากเป็น Scrap Value year i) = Invest/ (Year + 0.5) เช่น Year 1: Scrap Value (1) = 65/( ) = 43.33 Year 2: Scrap Value (2) = 65/( ) = 26.00 Year 3: Scrap Value (3) = 65/( ) = 18.57 โดยที่ Balance = – Invest + SumIncome + year i);

17 Payback Period + Scrap Value
โจทย์ หากต้องการเขียนโปรแกรม ให้ผู้ใช้เลือกเงินลงทุน (Investment) และเลือกกำไรที่คาดว่าจะได้รับในแต่ละปี (Expected Profit) สำหรับการลงทุนระยะ 10 ปี แล้วคำนวณหาจุดคุ้มทุน (Payback Period) และแสดงผลว่าในแต่ละปีมีดุลของบัญชี (Balance) เท่าไร โดยพิจารณามูลค่าซากด้วย จะเขียนโปรแกรมออกมาได้อย่างไร โดยที่ Payback if Balance > 0 เมื่อ Balance = – Investment + Accum.Profit + Scrap i) Accumulated Profit = ผลรวมกำไรจากปีที่ 1 ถึงปีที่พิจารณา Scrap Value = Invest/ (Year + 0.5)

18 Payback Period + Scrap Value
ส่วนที่เพิ่มเติม หา Scrap Value ในแต่ละปี 1 for i = 1 : 10 2 Scrap(i) = Invest/(i+0.5); 3 end และแก้ไขสมการ Balance Balance(i) = - Invest + SumIncome + Scrap(i);

19

20 Payback Period + Scrap Value

21 Payback Period + Scrap Value


ดาวน์โหลด ppt Computer Programming for Engineers

งานนำเสนอที่คล้ายกัน


Ads by Google