你好,我是小恐龙,欢迎点击上方蓝色文字关注
向下滚动到文章末尾,快速给小恐龙留言。
小恐龙来解答最后一个问题:二维码解码
基本思想是这样的:给定一个字符,首先生成一个二维码,然后对其进行解码
二维码是由黑白方块组成的,所以解码其实非常简单。 就是逐行扫描,将黑色方块写为1,白色方块写为0。首先将二维码转换为二进制,然后将二进制转换为字符。 就是这样:
只要输入一个字符,就可以对其进行编码和解码。 小恐龙不懂ASCII码,所以他只能自己给字符az编号。 如果使用的话可以省略这一步,直接使用ASCII码。 您需要将二进制转换为十进制才能找到相应的字符。
例如字符a的ASCII码是97,对应的二进制码是。 这个小恐龙的算法在之前的文章中已经写过了。
现在的问题是将这个二进制转换为十进制:
那么,2的n次方如何计算呢? 后台一位粉丝给出了答案:
确实有一个计算模块:
然而,这只能计算e或10的n次方。 如果要计算2的n次方,有两种方法:
这是一个定制模块:
这种方法比较简单,但缺点是只能计算整数幂。 那么如果以后需要计算1/2的幂怎么办?
2.方法二其实小恐龙很早之前就写过这个:
为了方便阅读,这里再次写一下:
小恐龙特意写成x而不是n,只是为了说明任意实数幂都可以计算:
事实上,求幂在其他编程语言中非常容易。
,例如:
使用的是**
在 C 和 C++ 中,使用 pow(x,y)
VB和Li中使用的是^
……
最后附上二维码,将其“扫描”成二进制码: