回覆列表
  • 1 # 楷躍觀天下

    你可以使用二進制轉十六進制的方法來實現這個功能。將四個LED燈分別表示為A、B、C、D四個位,其中A代表最高位,D代表最低位,則可以根據0~15的十六進制數所對應的二進制數來顯示LED燈。

    以顯示數字3(十六進制表示為0x03)為例:

    - A、B、C三個LED燈需要亮燈,D滅燈

    - 對應二進制數為0011

    因此,當需要顯示0~15範圍內的任何一個十六進制數時,都可以通過上述方法來控制對應的LED燈亮滅情況。

    你可以編寫一個簡單的程序,通過輸入一個十六進制數來控制LED燈的狀態,並輸出當前數字在LED燈上的顯示。例如:

    ```python

    hex_num = input(\"請輸入一個0x0~0xF範圍內的十六進制數:\")

    dec_num = int(hex_num, 16)

    bin_str = bin(dec_num)[2:].zfill(4) # 將數字轉化為二進制字符串,並補零到4位

    led_display = \"A\" if bin_str[0] == \"1\" else \" \"

    led_display += \"B\" if bin_str[1] == \"1\" else \" \"

    led_display += \"C\" if bin_str[2] == \"1\" else \" \"

    led_display += \"D\" if bin_str[3] == \"1\" else \" \"

    print(f\"當前輸入的數字為 {dec_num},在LED燈上的顯示為 {led_display}\")

    ```

    這個程序可以根據用戶輸入的十六進制數控制LED燈的狀態,並輸出對應的LED燈顯示情況。