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

โปรแกรมค้นหาตัวเลขพร้อมเครื่องหมายจุลภาคใน Python


ภาพรวม

บทความนี้แสดงวิธีการจัดรูปแบบตัวเลขให้มีเครื่องหมายจุลภาค (Comma) คั่นระหว่างหมื่น พัน ล้าน เป็นต้น โดยใช้ภาษา Python ตัวอย่างเช่น ตัวเลข 512462687 จะกลายเป็น "512,462,687"

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

  1. แปลงตัวเลข n เป็นสตริง
  2. กลับลำดับสตริง (Reverse)
  3. เตรียมสตริงว่าง ans สำหรับเก็บผลลัพธ์
  4. วนลูปผ่านแต่ละตัวอักษรของสตริงที่กลับแล้ว:
    • ถ้าตำแหน่ง i หาร 3 ลงตัว และ i ไม่ใช่ 0 ให้เพิ่มเครื่องหมายจุลภาค ',' เข้าไปใน ans
    • นำตัวอักษรปัจจุบันมาต่อท้าย ans
  5. กลับลำดับ ans อีกครั้งเพื่อให้ได้ลำดับที่ถูกต้อง
  6. คืนค่า ans

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

def solve(n):
    res = str(n)
    res = res[::-1]
    ans = ""
    for i in range(len(res)):
        if i % 3 == 0 and i != 0:
            ans += ','
        ans += res[i]
    ans = ans[::-1]
    return ans

n = 512462687
print(solve(n))

อินพุต

512462687

เอาต์พุต

512,462,687

วิธีทางเลือก (Built-in)

Python มีฟังก์ชัน built-in ที่ทำได้ง่ายกว่าคือ format(n, ",") หรือ f-string f"{n:,}" ซึ่งแนะนำให้ใช้ในโค้ดจริงเพื่อความกระชับและประสิทธิภาพ