Python——函数

这篇博客探讨了Python编程中的数值转换方法,包括十进制小数转二进制、DNA匹配算法、计算一组数的最小公倍数以及整数的N进制字符串表示。通过实例和代码解析,详细阐述了各个功能的实现和应用。
摘要由CSDN通过智能技术生成
一、十进制小数转换成二进制小数

【问题描述】

编写程序,输入十进制小数(只考虑正数),把它转换为以字符串形式存储的二进制小数,输出该二进制小数字符串。对于转换得到的二进制小数,小数点后最多保留10位。小数点后不足10位,则输出这些位,尾部不补0;小数点后超出10位,则直接舍弃超出部分。

【输入形式】

十进制浮点小数
【输出形式】

对应输入小数的二进制小数字符串。若整数部分或者小数部分为0,则输出0。比如输入0,则意味着输出0.0 。
【样例输入】

1.2
【样例输出】

1.0011001100
【样例说明】
输入为10进制小数,将该小数转化成二进制后输出。推荐采用字符串来处理生成的二进制数,特别要注意0的处理

def zheng(m):
    s = ''
    while m != 0:
        r = m % 2
        m = m // 2
        s = str(r) + s
    return s


def xiao(x):
    s = ''
    i = 0
    while x != 0 and i <= 9:
        x = x * 2
        if x >= 1:
            s = s + '1'
            x = x - 1
        else:
            s = s + '0'
        i += 1
    return s


e = input()
b = eval(e)
c = int(b)
d = ''
for k in range(0, len(e)):
    if e[k] == '.':
        d = '0.' + e[k + 1:len(e)]
if c == 0 and d == '':
    print('0'+'.'+'0')
elif c 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

生如雪花

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值