2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 二进制计量单位#K M G T的换算

二进制计量单位#K M G T的换算

时间:2023-01-03 17:39:47

相关推荐

二进制计量单位#K M G T的换算

1K=210=1024,近似于十进制的“千”;1M=220=1024K,近似于十进制的“百万”;1G=230=1024M,近似于十进制的“十亿”;1T=240=1024G,近似于十进制的“万亿”。

任务

本关任务是用合适的计量单位表示一个数。具体来说,是将十进制整数 a 转换成 bU 形式,说明如下:

1)U 是某种二进制计量单位(本关只考虑 K、M、G、T);

2)b 是一个十进制数字,且 1≤b<1024;

3)b 保留一位小数(用round函数实现,如round(3.14, 1)

这个是我写的,刚开始搞错了范围,直接从a <k为条件,就开始除以k,结果可想而知,开始公式就错了。这个是改正以后的,有一点繁琐。

########## Begin ##########def unit_convert(a):K=2**10M=2**20G=2**30T=2**40if a<K:f=af=round(f,1)return (str(f))if a<M:f=a/Kf=round(f,1)return (str(f)+'K')if a<G:f=a/Mf=round(f,1)return (str(f)+'M')if a<T:f=a/Gf=round(f,1)return (str(f)+'G')else:f=a/Tf=round(f,1)return (str(f)+'T')return(f)########## End ##########a = int(input())b = unit_convert(a)print('%s = %s' % (a, b))

########## Begin ########## def unit_convert(a): if a>=2**40: b = round(a/(2**40), 1) return str(b)+'T' elif a>=2**30: b = round(a/(2**30), 1) return str(b)+'G' elif a>=2**20: b = round(a/(2**20), 1) return str(b)+'M' elif a>=2**10: b = round(a/(2**10), 1) return str(b)+'K' else: b = round(a, 1) return str(b) ########## End ########## a = int(input()) b = unit_convert(a) print('%s = %s' % (a, b))

########## Begin ##########def unit_convert(a):if a >= 2**40:b = f'{round(a/2**40, 1)}T'elif a >= 2**30:b = f'{round(a/2**30, 1)}G'elif a >= 2**20:b = f'{round(a/2**20, 1)}M'else:b = f'{round(a/2**10, 1)}K'return b########## End ##########a = int(input())b = unit_convert(a)print('%s = %s' % (a, b))

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。