当前位置: 代码迷 >> Delphi >> 求公式,该如何解决
  详细解决方案

求公式,该如何解决

热度:10428   发布时间:2013-02-26 00:00:00.0
求公式
各位大侠,下面这些数字,有公式可以替代不??????????小弟初学,求指教。
          case n1 of
            0: n2 := 3;
            16: n2 := 4;
            32: n2 := 7;
            48: n2 := 8;
            64: n2 := 7;
            80: n2 := 8;
          end;
          case n1 of
            1: n2 := 3;
            17: n2 := 4;
            33: n2 := 7;
            49: n2 := 8;
            65: n2 := 7;
            81: n2 := 8;
            97: n2 := 11;
            113: n2 := 12;
          end;

------解决方案--------------------------------------------------------
前面的n1是16的等差数列,至于n2,没看出规律
------解决方案--------------------------------------------------------
第一个 n1 DIV 16 用商查表,余数判断是否有效,如果就只有这几个数,从用公式的效率以及代码维护来讲,成本有点高.

第2个是(n-1) DIV 16 ,同样是用商查表,余数判断有效性
如果Item不多,建议就用Case吧
------解决方案--------------------------------------------------------
case有规律,但n2没看出是什么规律...
  相关解决方案