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