package com.asiainfo.cem_volte_hbase;/*** @ClassName Test* @Description 有意思的小算法* @Author qianxl* @Date 2019-08-02 17:34* @Version 1.0**/
public class Test {/***
* @param num1
* @param num2* @description: 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。* @return:* @author qianxl* @date: 2019/8/2 18:22* @since 1.0*/public static void add(int num1, int num2){int temp = 0;while (num1 != 0){temp = num1 ^ num2;num1 = (num1 & num2) << 1;num2 =temp;}System.out.println(num2);}/**** @param n* @description: 求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)* @return: {@link int}* @author qianxl* @date: 2019/8/2 18:43* @since 1.0*/public int sum(int n) {int sum =n;boolean t = n!=0 && (sum +=sum(n-1)) !=0;return sum;}public static int sum2(int n) {if (n == 0) {return n;}else{int sum = sum2(n-1) +n;return sum;}}/**** @param num1* @param num2* @description: 写一个函数,求两个整数之差,要求在函数体内不得使用+、-、*、/四则运算符号* @return: {@link int}* @author qianxl* @date: 2019/8/2 19:29* @since 1.0*/public static int miners (int num1, int num2) {return num1 ^ num2;}public static void main(String arg[]){add(3, 4);int i = sum2(5);System.out.println(i+"结果");int miners = miners(7, 6);System.out.println(miners + "减法 ");}
}
https://mp.weixin.qq.com/s/PKzgPN4CdCD40saDOfRGlA