ตัวอย่างโค้ดภาษา 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}")
อธิบายโค้ด
- รับค่าตัวเลขฐานสอง แล้วแปลงเป็น string และเก็บไว้ในตัวแปร binary
- กำหนดให้ตัวแปร decimal มีค่าเป็น 0
- หาความยาวของข้อความในตัวแปร binary โดยใช้ len(binary) และเก็บไว้ในตัวแปร pos
- ลูปนำค่าในตัวแปร binary ออกมา โดยในแต่ละรอบจะเก็บไว้ในตัวแปร i
- ลดค่าในตัวแปร pos ออกทีละ 1 ในแต่ละรอบ
- ถ้าตัวแปร i ที่เปลี่ยนเป็น int แล้วมีค่าไม่เท่ากับ 0 ให้ คำนวณหาค่าในแต่ละตำแหน่ง 2 ยกกำลัง ตำแหน่ง เช่น 24 + 23 + 20 = 16 + 8 + 1 แล้วเก็บไว้ในตัวแปร decimal (บวกค่าเข้าไปในตัวแปร decimal)
- นำค่าในตัวแปร binary และตัวแปร decimal มาแสดงผล