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

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




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

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

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

binary = str(input("ป้อนตัวเลขฐานสอง : "))
decimal = 0
pos = len(binary)

for i in binary:
    pos = pos - 1
    if int(i) != 0:
        decimal = decimal + 2**pos

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

อธิบายโค้ด

  1. รับค่าตัวเลขฐานสอง แล้วแปลงเป็น string และเก็บไว้ในตัวแปร binary
  2. กำหนดให้ตัวแปร decimal มีค่าเป็น 0
  3. หาความยาวของข้อความในตัวแปร binary โดยใช้ len(binary) และเก็บไว้ในตัวแปร pos
  4. ลูปนำค่าในตัวแปร binary ออกมา โดยในแต่ละรอบจะเก็บไว้ในตัวแปร i
  5. ลดค่าในตัวแปร pos ออกทีละ 1 ในแต่ละรอบ
  6. ถ้าตัวแปร i ที่เปลี่ยนเป็น int แล้วมีค่าไม่เท่ากับ 0 ให้ คำนวณหาค่าในแต่ละตำแหน่ง 2 ยกกำลัง ตำแหน่ง เช่น 24 + 23 + 20 = 16 + 8 + 1 แล้วเก็บไว้ในตัวแปร decimal (บวกค่าเข้าไปในตัวแปร decimal)
  7. นำค่าในตัวแปร binary และตัวแปร decimal มาแสดงผล

ผลลัพธ์

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