Jon*_*an. 0 iphone math objective-c formula
我有4个数字0-3这是一个枚举(objective-c),我想使用公式得到相反的结果.因此,如果将0置于公式中,则返回2,如果输入2,则返回0(与1和3相同).
原因是(并且它与编程有关)我希望得到与枚举相反而不必执行if或switch语句.但这意味着任何公式(如果可能的话必须是非复杂的,因此它比使用if或switch更有效.
公式很简单:
n = n ^ 2;
Run Code Online (Sandbox Code Playgroud)
0 - 3的位值以及如何排除或更改它们:
n ^10
---------------
0 = 00 : 10 = 2
1 = 01 : 11 = 3
2 = 10 : 00 = 0
3 = 11 : 01 = 1
Run Code Online (Sandbox Code Playgroud)
测试(用C#编写):
for (int n = 0; n <= 3; n++) {
Console.WriteLine("{0} : {1}", n, n ^ 2);
}
Run Code Online (Sandbox Code Playgroud)
输出:
0 : 2
1 : 3
2 : 0
3 : 1
Run Code Online (Sandbox Code Playgroud)