【选做▪应用】数码管
背景
数码管是一种廉价的十进制数字显示装置,它的基本工作原理是:一个数码管有 7 段,我们将它对应成八位二进制的 8 位。这 8 位的编号从左向右分别是 7、6、5、4、3、2、1、0。数码管的一段对应二进制的一位,如果要点亮某一段,则需要将相应的二进制位置 1,其余不亮的段要将对应的位置 0。下图表示了 7 个二进制在数码管上对应的位置:
2
+---+
3| |4
| 1 |
+---+
5| |6
| 0 |
+---+
例如,我们要显示出数字"1”,则应该点亮数码管的第4和6段。这样对应的8位二进制数就是:0101 0000。如果用十六进方式表示出来就是 50。
同理,要显示出"3”,应该点亮:0、1、2、4、6;对应的二进表示为:0101 0111,用十六进制表示就是 57。
请编写一个程序,用 5 个数码管显示一个 16 位 (bit) 的正整数。
说明:如果需要显示的数据不足5位,则在数据前面补0。例如120要显示为00120。
输入
程序的输入是一系列 16 位(bit)的正整数(10进制形式),数与数之间允许用空白符隔开,当数字为 0 时程序结束。
输出
针对每个正整数,输出 5 个字节的十六进制数,它们可以表示 5 个数码管的状态。其中右侧第 1 个数表示输入数字的个位,第 2 个数表示十位,以此类推。
输入 #1
10103 30301 0
输出 #1
50 7D 50 7D 57 57 7D 57 7D 50
提示
无提示