2

有没有办法创建一个简单的java(或c,c ++,python)程序,当给定输入= 6时打印3(输出3),当给定输入= 3时输出= 6而不使用“if条件” ?

4

4 回答 4

2

假设您很高兴它在不是 6 或 3 的输入上产生其他输出,那么您可以只计算 9-x。

于 2013-10-26T17:12:45.760 回答
1

您总是可以只使用 switch-case 语句。此外,如果您只想要这两个答案,您也可以将输入作为 int 并执行 9-[your int] 并打印该答案。

于 2013-10-26T17:23:49.373 回答
1

您可以使用 XOR 位操作。它比较位对,如果位相等则返回 0,如果位不同则返回 1。
我们有3 = 011b6 = 110b。此数字相差 1 位和 3 位(位),因此 XOR 掩码将为101b = 5. 代码示例:

public static int testMethod(int value){
    return System.out.println(value ^ 5);
 }
于 2017-08-01T13:34:36.323 回答
0

没有 if 或没有控制流语句/条件语句?你可以使用 switch 语句

private void tes(int i) {
    switch (i) {
        ///give output 6 where input is 3
        case 3:
            System.out.println(6);
            break;
        ///give output 3 where input is 6
        case 6:
            System.out.println(3);
            break;
    }
}
于 2013-10-26T17:50:17.633 回答