我想基于对另一个整数流(比如X)的模运算生成一个伪随机bool流,所以操作将是
return ( X % 2);
唯一的问题是X是一个整数流,总是以1结尾,所以例如像1211,1221,1231,1241那样的东西....有没有办法让我忽略最后一位(不使用字符串操作)所以测试并不总是通过或总是失败?
答案 0 :(得分:3)
那么(X / 10) % 2
呢?
答案 1 :(得分:2)
如果您不乐意使用最后一位,请使用倒数第二位:
return (x & 0x2) >> 1;
所以说你的流中的下一个数字是23:
1 0 1 1 1 // 23 in binary
& 0 0 0 1 0 // 0x2 in binary
-----------
0 0 0 1 0
向右移动一位(>> 1
)得到1.对于25,答案为0:
1 1 0 0 1
& 0 0 0 1 0
-----------
0 0 0 0 0
答案 2 :(得分:0)
return ( x%20/10 );