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

โปรแกรมหาจำนวนเงินที่จัดรูปแบบจากเซนต์ที่กำหนดใน Python

สมมติว่ามีตัวเลขบวก n แทนจำนวนเซนต์ เราต้องหาจำนวนเงินที่จัดรูปแบบเป็นสกุลเงิน

เช่น ถ้าอินพุตคือ n = 123456 ผลลัพธ์จะเป็น "1,234.56"

ขั้นตอนการแก้ปัญหา

  • cents := n เป็นสตริง
  • ถ้าขนาดของ cents < 2 คืนค่า '0.0' + cents
  • ถ้าขนาดของ cents == 2 คืนค่า '0.' + cents
  • currency := สับสตริงของ cents ยกเว้นสองหลักสุดท้าย
  • cents := '.' + สองหลักสุดท้าย
  • while ขนาดของ currency > 3 ทำ
    • cents := ',' + สามหลักสุดท้ายของ currency + cents
    • currency := สับสตริงของ currency ยกเว้นสามหลักสุดท้าย
  • cents := currency + cents
  • คืนค่า cents

ตัวอย่างโค้ด

class Solution:
    def solve(self, n):
        cents = str(n)
        if len(cents) < 2:
            return '0.0' + cents
        if len(cents) == 2:
            return '0.' + cents
        currency = cents[:-2]
        cents = '.' + cents[-2:]
        while len(currency) > 3:
            cents = ',' + currency[-3:] + cents
            currency = currency[:-3]
        cents = currency + cents
        return cents

ob = Solution()
print(ob.solve(523644))

อินพุต

523644

เอาต์พุต

5,236.44