遍历列表里面的内容 如果都为0 最终状态为 "N" , 假如都大于一个定值X 则最终状态为 "A" 否则为状态 "P"
此段逻辑代码怎样写比较好呀? 数据结构学的不好 感觉自己写的很别扭
此段逻辑代码怎样写比较好呀? 数据结构学的不好 感觉自己写的很别扭
解决方案 »
- C# Arcgis engine 二次开发 动态生成网格
- 急,求高手解答。DataGridView重写OnCellMouseDown引发的问题
- 高分求LDAP访问Active Derictory问题的解决方案,请大虾们指教。(急急急急急急急急急急……)
- 原来C#从语法规范上就支持交错数组,爽!比Delphi长进多了
- 急!!初学者请教,送40分。
- .net页面设计和windows窗体
- 请问各位高手,关于MSMQ的问题
- 帮帮忙,急死了!!谁有支持数据源的风向图(也叫玫瑰图,wind rose chart)的控件啊??
- 水晶报表里如何做主表和子表的关联???
- 请各位帮助?请指出“异常”发生的确切位置?
- 关于求已知数组最大值的问题
- 大家有web下treeview节点可以任意拖动的例子吗---在线等
很抱歉,没有时间详细解释。通过搜索引擎查找问题及回复的关键词可能会有帮助。
int x=60;
string status="";
for(i=0;i<arr1.length;i++)
{
if(arr1[i]==0)
j++;
if(arr1[i]>x)
k++;
}if(j==arr1.length)
status="N";
else if(k==arr1.length)
status="A";
else
status="P";
排序是个好办法
效率比二楼高对列表绑定的数据源进行排序
比如数据源dt排序
dt.default.sort("value","ASC");
还要操作才可以string strStatus = "";
if(dt.rows[0]["value"] == 0 && dt.rows[dt.rows.count -1]["value"] == 0)
{
strStatus = "N";
}
else if(dt.rows[0]["value"] > X)
{
strStatus = "A";
}
else
{
strStatus = "P";
}Response.Write("<script>alert('类型:"+strStatus+"')</script>");
string res = "N";
int n = 4;//特定值
for (int i = 0; i < nums.Length; i++)
{
if (nums[i] <= n)
res = "P";
res = "A";
}
Console.WriteLine("最终状态为" + res);
看第一个数就能排除至少一个状态
第一个数是0的话看是否全是0,有一个不是就返回p,否则返回N
第一个数不是0的话看是否全大于X,有一个不是也返回p,否则返回A
Case 1 :如果(X<0 )以X = -1为例,遍历表的内容全为0 那么最终状态是 无法确定是“N” 还是“A”
Case 2 :如果(X>=0)以X = 1为例,遍历表的内容全为0 那么最终状态是 无法确定是“N” 还是“p”
ArrayList arr = new Arraylist()
int constValue = 4;//特定值
bool isN = false;
bool isA = false;
bool isP = false;
string returnValue = "P"
foreach ( int arrValue in arr)
{
isN =isN&&(arrValue==0);
isA =isA&&(arrValue>constValue);
}
if (isN)
{
returnValue="N";
} else
if (isA)
{
returnValue="A"
}
/*
这里缺少一种情况:当constValue为小于0的一个值时
那么返回值可以满足"N"的同时也可以满足为"A",不知道楼主想怎么处理,
我的这段逻辑就是把它归为"N"*/
int constValue = 4;//特定值
bool isN = false;
bool isA = false;
bool isP = false;
string returnValue = "P"
foreach ( int arrValue in arr)
{
isN =isN&&(arrValue==0);
isA =isA&&(arrValue>constValue);
}
if (isN)
{
returnValue="N";
} else
if (isA)
{
returnValue="A"
}
/*
这里缺少一种情况:当constValue为小于0的一个值时
那么返回值可以满足"N"的同时也可以满足为"A",不知道楼主想怎么处理,
我的这段逻辑就是把它归为"N"*/
List <int> arr = new Arraylist <int>()
foreach (int arrValue in arr )
{
if (arrValue-0==0)
{
zeronum ++;
}
else if (arrValue- X >0)
{
dayunum++;
}
else
{//设置状态为P并跳出 ;
}
}
if (zeronum == 数组的长度)
{//设置状态为N;
}
if (dayunum == 数组的长度)
{//设置状态为A ;
}
我的大体思路是这样拉.下班拉,自己将就着看吧.
6楼的方法好象少了个break不过方法和我想的一样nums = { 6, 7, 8, 5, 9 };
string res = "N";
int n = 4;//特定值
for (int i = 0; i < nums.Length; i++)
{
if (nums[i] <= n)
{
res = "P";
break;
}
res = "A";
}
Console.WriteLine("最终状态为" + res);