编程语言
首页 > 编程语言> > 有关数学算法(一)

有关数学算法(一)

作者:互联网

摘抄自《程序员的数学》 作者:结城浩
本篇主要介绍一些程序员用得上的数学概念。
计数
十进制数的构成:2503=2x103+5x102+0x101+3x100
十进制数的构成:1100=1x23+1x22+0x21+0x20=4+8+0+0=12
※100=1
十进制转二进制的代码:

 static double ChangeIntoBinary(int decimalism)
 {
     int tempNum = decimalism;
     int remainder;
     double binary = default;
     int i = 0;
     do
     {
         remainder = tempNum % 2;//获得余数
         tempNum /= 2;//每次循环结果除于2
         if (remainder == 1) { binary += remainder * Math.Pow(10, i); }
         //如果余数不为0,则结果为1*10的i次方的累加
         i++;

     } while (tempNum != 0);//当结果为0不能再被2整除时结束循环,另1/2=0余1。
     return binary;
 }

为什么100=1?
103=1000
102=100
101=10
100=?
观察得每减少一次方,下方的数则为上方的数的1/10。
同样可知道10-1=1/10

逻辑:
1.非 :¬A,¬¬A=A(双重否定等于肯定)
2.与:A∧B
在这里插入图片描述
3.或:A∨B
在这里插入图片描述
4.异或:A⊕B(非A即B)
在这里插入图片描述
5.相等:A=B
在这里插入图片描述
6.蕴含:A⇒B(不是A,或者是B)
在这里插入图片描述
德·摩根定律:
(¬A)∨(¬B)=¬(A∧B)
(¬A)∧(¬B)=¬(A∨B)
代码版

(!A)||(!B)=!(A&&B)
(!A)&&(!B)=!(A||B)

复杂的逻辑运算可以用卡诺图简化

以上,希望对大家学习有帮助。

标签:10,binary,int,有关,tempNum,算法,数学,100,remainder
来源: https://blog.csdn.net/Jay12243/article/details/113128215