Skip to content

Commit c203ca6

Browse files
author
linzhijun
committed
fix
1 parent 4889a13 commit c203ca6

2 files changed

Lines changed: 6 additions & 6 deletions

File tree

csharp/ToolGood.Algorithm/Internals/Functions/Csharp/Function_LOOKCEILING.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,17 +28,17 @@ public override Operand Evaluate(AlgorithmEngine engine, Func<AlgorithmEngine, s
2828
List<decimal> list = new List<decimal>();
2929
FunctionUtil.F_base_GetList(args2, list);
3030
if(list.Count == 0) { return ParameterError(2); }
31-
list = list.OrderByDescending(n => n).ToList();
31+
list.Sort();
3232
var value = args1.NumberValue;
33-
var result = list[0];
33+
var result = list[list.Count - 1];
3434
if(result == value) { return args1; }
35-
for(int i = 1; i < list.Count; i++) {
35+
for(int i = list.Count - 2; i >= 0; i--) {
3636
var val = list[i];
3737
if(val > value) {
3838
result = val;
3939
} else if(val == value) {
4040
return args1;
41-
} else /*if(val < value)*/ {
41+
} else {
4242
break;
4343
}
4444
}

csharp/ToolGood.Algorithm/Internals/Functions/MathSum/Function_LARGE.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,12 @@ public override Operand Evaluate(AlgorithmEngine engine, Func<AlgorithmEngine, s
2929
var o = FunctionUtil.F_base_GetList(args1, list);
3030
if(o == false) { return ParameterError(1); }
3131

32-
list = list.OrderByDescending(q => q).ToList();
32+
list.Sort();
3333
int k = args2.IntValue;
3434
if(k < 1 - engine.ExcelIndex || k > list.Count - engine.ExcelIndex) {
3535
return ParameterError(2);
3636
}
37-
return Operand.Create(list[k - engine.ExcelIndex]);
37+
return Operand.Create(list[list.Count - k + engine.ExcelIndex - 1]);
3838
}
3939

4040
}

0 commit comments

Comments
 (0)