В случае, когда по крайней мере два из трех логических значений истинны, это самый простой способ узнать:
BOOL a, b, c;
-(BOOL)checkAtLeastTwo
{
return a && (b || c) || (b && c);
}
Каким будет оптимальное решение, если имеется десять логических значений и хотя бы два из них должны быть истинными? Заранее спасибо.