convert a number to Hexadecimal[重要]

我自己的solution, obviously, 没有考虑负数的情况。但是我已经尽力了T^T  

如果硬要我做负数的话,比如-1, 我会直接求1的 hex。 然后invert, +1. 但是hex怎么invert T^T。。。

这个答案屌。。。直接把hex先看做binary来处理。收到灵感启发,对于负数,我觉得可以先convert 成binary,然后invert,然后+1。 然后以4个bit 4个bit的转换。 

傻逼啊。。。负数本身在binary里就是已经2's compliment了. 主要是num % 16 的问题。



补充知识:>>>



改进版代码


附:

binary to decimal:

我一开始是想能不能right shift数字,把1101 最左边先shift出来,乘2^3。 再shift后面的。发现似乎并不行。不过换一个方向也是一样的,这个一时间脑袋秀逗也可能没转过来。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容