落丶影灬 发表于 2018-6-21 23:15:00

朕想知道

wangmeng7756 发表于 2018-6-22 15:48:29

不想知道

SINOSMG 发表于 2018-6-23 16:25:44

{:5_94:}

822053080 发表于 2018-6-24 15:28:16

{:5_91:}

Spring_Rain 发表于 2018-6-24 18:00:44

尝试用python写了下十进制与二进制互相转换的程序:
十进制转二进制:
'''
功能为把十进制数转换为二进制数。
已完工。
作者:Spring Rain
'''
def go(start):
    is_negative = False
    is_first_1 = False
    result = ""
    process = []
    num = int(start)

    if num < 0:# 判断是否为负
      is_negative = True
    else:
      result += "0"

    num = int(start.replace("-", ""))
    calculation_result = num
    remainder = 0
    while calculation_result >= 1:# 计算出二进制反序排列
      remainder = calculation_result % 2
      if remainder > 0:
            process.append("1")
      else:
            process.append("0")
      calculation_result = calculation_result // 2

    the_len_of_calculation_result = len(process)
    for i in range(1, len(process) + 1):# 将反序二进制转成正序二进制,并通过是否为负数进行第一位的控制
      true_i = the_len_of_calculation_result - i
      now = process
      if now == "0" and is_negative and is_first_1 == False:
            continue
      elif is_negative:
            is_first_1 = True
      result += now

    return result

if __name__ == "__main__":
    start = input("请输入十进制数:")
    result = go(start)
    print(result)



二进制转十进制:
'''
功能为把二进制数转换为十进制数。
已完工。
作者:Spring Rain
'''

def go(num):
    the_len = len(num)
    result = ""
    process = 0

    for i in range(0, the_len):# 进行转换计算,即十进制数 == 依次将每个二进制位的值 * 2的位权次方再相加
      now = int(num)
      go = 2 ** (the_len-1-i)
      process += now * go

    if num == "1":# 检测符号位,1则为负,0则为正
      result = "-" + str(process)
    else:
      result = str(process)

    return result


if __name__ == "__main__":
    start = input("请输入二进制数:")# get二进制数
    result = go(start)# 调用函数
    print("结果是", result)

Boomboomi 发表于 2018-6-25 19:37:22

郑真的很想知道

waw1228@qq.com 发表于 2018-6-25 21:09:12

朕当然想知道了

ahahazzxxff 发表于 2018-6-26 13:07:09

朕想知道

pastoralg 发表于 2018-6-27 12:58:12

朕想知道

yuandiyuandi123 发表于 2018-6-27 19:57:08

看答案

Assassin小白 发表于 2018-6-28 00:14:06

朕想知道

残梦洁月 发表于 2018-6-28 13:26:46

朕想知道

小尹同学 发表于 2018-6-29 14:53:07

快告诉我为什么

419167861 发表于 2018-6-29 17:40:21

郑想知道
{:10_249:}

孤世星辰 发表于 2018-6-30 10:24:24

感谢楼主

耳朵在旅行 发表于 2018-7-3 12:59:27

{:5_90:}

清风揽月shine 发表于 2018-7-4 10:30:46

嗯嗯

hsexing 发表于 2018-7-4 13:52:23

朕想知道

zz路人甲 发表于 2018-7-5 15:10:29

真想知道

xlt201314 发表于 2018-7-5 17:09:09

朕想知道
页: 47 48 49 50 51 52 53 54 55 56 [57] 58 59 60 61 62 63 64 65 66
查看完整版本: 进制转换