หน้าหลัก » ภาษาไพธอน (Python) » โค้ด Python แปลงเลขฐานสิบ เป็นเลขฐานสอง

โค้ด Python แปลงเลขฐานสิบ เป็นเลขฐานสอง




ตัวอย่างโค้ดภาษา Python ในการเขียนโปรแกรม แปลงเลขฐานสิบให้เป็นเลขฐานสอง

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

'''
 Author    : CS Developers
 Author URI: https://www.comscidev.com
 Facebook  : https://www.facebook.com/CSDevelopers
 File name : CSD023.py
'''

decimal_input = int(input("ป้อนตัวเลขฐานสิบ : "))
binary = []
decimal = decimal_input

while decimal > 0:
    binary.append(str(decimal % 2))
    decimal = int(decimal / 2)

binary.reverse()

print(f"{decimal_input} ฐานสิบ แปลงเป็นเลขฐานสองเท่ากับ {''.join(binary)}")

คำอธิบาย

  1. รับค่าตัวเลขฐานสิบ แล้วแปลงเป็น int number และเก็บไว้ในตัวแปร decimal_input
  2. กำหนดให้ตัวแปร binary เป็น list
  3. กำหนดค่าให้ตัวแปร decimal เท่ากับตัวแปร decimal_input เพื่อใช้ตัวแปร decimal ในการวนลูป และใช้ตัวแปร decimal_input ไว้แสดงตอนสุดท้าย
  4. วนลูปเพื่อเพิ่มค่าเข้าไปในตัวแปร binary โดยนำตัวแปร decimal มา mod ด้วย 2 (หารเอาเศษ) แล้วแปลงเป็น string ก่อนจะเพิ่มเข้าไปในตัวแปร binary
  5. นำตัวแปร decimal หารด้วย 2 แล้วแปลงเป็น int number และเก็บไว้ในตัวแปร decimal
  6. binary.reverse() คือการกลับค่าในตัวแปร binary (หน้าไปหลัง หลังมาหน้า) เช่น ก่อน reverse จะได้ [‘1’, ‘0’, ‘0’, ‘1’, ‘1’] เมื่อ reverse จะได้ [‘1’, ‘1’, ‘0’, ‘0’, ‘1’]
  7. นำค่าในตัวแปร decimal_input และ binary มาแสดงผล โดย ”.join(binary) เป็นการนำค่าใน list มาต่อเป็น string โดยไม่ต้องใช้ลูป

ผลลัพธ์

โค้ด Python แปลงเลขฐานสิบ เป็นเลขฐานสอง