计算三元方法中的计算步骤

时间:2019-03-12 16:11:44

标签: c#

我正在寻找一种以某种方式计算步数的方法:

public static int Calculate0(int end, int init, int lim, int bon)
{
    return end <= 0
        ? 0

        : Math.Min(2 * lim, bon == 0 ? init : init + (2 * bon - lim / bon) * end);
}

我猜我的问题有两种:

  1. 我不理解C#和
  2. 中特殊的:?运算符
  3. 我不知道在哪里向Calculate0方法中输入某种变量。

曾经尝试通过Microsoft's guide阅读有关:?运算符的信息,但我仍然很难理解Calculate0内部发生的事情。

我的代码当前看起来像这样。这可以吗?

using System;

namespace TestProject {
    internal class Program
    {
        private int calc0Steps = 0;

        public static void Main() {

            var calc0 = Program.Calculate0(1, 0, 1, 2);
            Console.WriteLine("Calculate: {0} | Steps: {1}", calc, calc0Steps);

        }

        public static int Calculate0(int end, int init, int lim, int bon)
        {
            return end <= 0
                ? 0

                : calc0Steps; Math.Min(2 * lim, bon == 0 ? init : init + (2 * bon - lim / bon) * end);
        }
    }
}

更新

对不起,我感到困惑。我将尝试缩小范围:如何在Calculate0中放入计数器?

我的主要任务是对fhcimolin提供的方法进行完整的测试,并将此方法与Calculate0进行比较。一个小的辅助任务是计算计算步骤。但是我不知道如何首先在Calculate0中实现一个计数器。

我有另一个Calculate0版本,看起来像fhcimolin的答案,可以放在柜台上。我需要计算这两个步骤中有多少个计算步骤。

0 个答案:

没有答案