有没有办法创建一个简单的java(或c,c ++,python)程序,当给定输入= 6时打印3(输出3),当给定输入= 3时输出= 6而不使用“if条件” ?
问问题
531 次
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 = 011b
和6 = 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 回答