Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมค้นหาว่าต้องใช้เวลากี่ปีกว่าจะถึงจำนวน t ใน Python


สมมติว่าเรามีพารามิเตอร์ P,O,E,T หากเรามีเงินต้นเป็น P$ ที่เราต้องการลงทุนในตลาดหุ้น ตลาดหุ้นสลับกันไปมาระหว่าง E ที่กลับมาครั้งแรกกับดอกเบี้ย Opercent ต่อปี เราต้องตรวจสอบว่าต้องใช้เวลากี่ปีถึงจะได้ Tdollar เป็นอย่างน้อย

ดังนั้นหากอินพุตเท่ากับ P =200, O =10, E =25, T =300 ผลลัพธ์จะเป็น 3 เช่นในปีแรกเราจะได้ดอกเบี้ย 25% ดังนั้นจบลงด้วย 200+50 =250 แล้วปีหน้าเราจะได้ 10% ลงท้ายด้วย 250+25 =275 แล้วก็ได้ 10% อีกครั้งในปีหน้า ดังนั้นจะเป็น 275+27.5 =302.5 ซึ่งมากกว่า 300 ดังนั้นต้องใช้เวลา 3 ปี

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • ตอบ:=0
  • ในขณะที่ P
  • P :=P * 1+(E/100)
  • อัน :=ans + 1
  • ถ้า P
  • P :=P * 1+(O/100)
  • อัน :=ans + 1
  • คืนสินค้า
  • ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

    ตัวอย่าง

    class Solution:
       def solve(self, P, O, E, T):
          ans=0
          while P < T:
             P *= 1+(E/100)
             ans += 1
             if P < T:
                P *= 1+(O/100)
                ans += 1
          return ans
    ob = Solution()
    P = 200
    O = 10
    E = 25
    T = 300
    print(ob.solve(P,O,E,T))

    อินพุต

    P = 200, O = 10, E = 25, T = 300

    ผลลัพธ์

    3