整数相加不用运算法

        /// a^b:异或运算,不进位加法运算。
        /// a&b:与运算,真真为真,(a&b)<<1:相同的进位
        /// </summary>
        /// <param name="a"></param>
        /// <param name="b"></param>
        /// <returns></returns>
        static int aplusb(int a, int b)
        {
            if (b == 0) return a;
            int nocarry = a ^ b;
            int carry = (a & b) << 1;
            return aplusb(nocarry, carry);
        }

 

posted @ 2020-11-26 13:54  江境纣州  阅读(18)  评论(0编辑  收藏  举报