累加应用——
二进制数转十进制数
1【温故知新】累加功能的通用模板
python
中sum()
方法实现批量数据累加
2【问题】二进制转换为十进制的代码实现
以1011B
转换为十进制为例讲解转换步骤
方法1:逐位按权值求和(从左往右)
1011B=1*
2^3+0*2^2+1*2^1+1*2^①分析:二进制转换为十进制的过程就是一个批量数据累加的过程,因此程序就可以用累加语句模板来实现二进制转换为十进制的过程。
上述表达式①中可以看成是
4个x相加,每个
x有什么特征呢?
x是二进制数的某
1位数字*相应的权值。因此,代码如下:
方法2:逐位按权值求和(从右往左),这是取的方向不一样,结果是一致的。
1011B=1*
2^+1*2^1+0*2^2+1*2^3②代码如下:
上述代码中,如果熟练了就没有必要
a,b先分开,可以直接写一个表达式。我们这样
写为了让学生初学时更好理解。
方法3:运用秦九韶算法
,该算法
是中国南宋时期的数学家秦九韶提出的一种多项式简化算法。
具体可以问度娘
。通俗的说
十进制数
x,再其尾数
加1位数y,得到新的数
z,z=10*
x+y;同理对于任何二进制 ...


雷达卡


京公网安备 11010802022788号







