friend 们
如何实现以下复杂逻辑?
flag1可以是“N”或“A”或“I”
flag2可以是“N”或“A”或“I”
flag3可以是“N”或“A”或“I”
函数(字符串标志1,字符串标志2,字符串标志3)
开始
该函数需要返回:
如果flag1,flag2和flag3为“N”,则
例如1)标志1为“A”,标志2为“I”,标志3为“I”
例如2)标志1为“I”,标志2为“A”,标志3为“I”
例如2)标志1为“A”,标志2为“N”,标志3为“I”
重播结果
结尾
感谢您的答复,但没有帖子给出答案。我知道是否还有其他约束条件,并且正在寻找实现以上psedocode的逻辑。这四个条件都是可能的,特别是#4很复杂,需要知道如何实现。
最佳答案
您对第4点的逻辑令人困惑...
我将为此使用一个枚举值,而不是字符串-它是类型安全得多的(例如,如果有人将"WIBBLEWOBBLE"
传递给您的方法该怎么办?它应该返回什么?)
enum Value { None, Active, Inactive, Both }
private Value GetValue(Value flag1, Value flag2, Value flag3) {
if (flag1 == flag2 && flag2 == flag3) // they are all the same
return flag1;
else return Value.Both; // there is a difference
}
关于c# - 复杂的逻辑,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3391184/