当前位置: 首页 > 知识库问答 >
问题:

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

阙佐
2023-03-14

我正在寻找一种方法来计算步数:

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. 我不知道在哪里将某种变量输入到计算0方法中。

一直在尝试通过微软的指南阅读有关 :? 运算符的信息,但我仍然难以理解 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);
        }
    }
}

很抱歉让人困惑。我将尝试缩小范围:如何将计数器放入计算0

我的任务的主要范围是对提供的fhcimolin方法进行全面测试,并将该方法与Calculate0进行比较。一个小的附带任务是计算计算步骤。但是我不知道我最初是如何在 Calculate0 中实现计数器的。

我有另一个版本的< code>Calculate0,看起来像fhcimolin的答案,我可以在那里放一个计数器。我需要计算两者中有多少计算步骤。

共有1个答案

马凡
2023-03-14

如果我没弄错您的逻辑,您可能希望您的< code>Calculate0方法如下所示:

public static int Calculate0(int end, int init, int lim, int bon)
{
    return end <= 0 ? calc0Steps : Math.Min(2 * lim, bon == 0 ? init : init + (2 * bon - lim / bon) * end);
}

这将相当于:

public static int Calculate0(int end, int init, int lim, int bon)
{
    if (end <= 0)
    {
        return calc0Steps;
    }
    else
    {
        int aux;

        if (bon == 0) {
            aux = init;
        }
        else
        {
            aux = init + (2 * bon - lim / bon) * end;
        }

        return Math.Min(2 * lim, aux);
    }
}
 类似资料:
  • 问题内容: 最近,我一直在玩 TensorFlow, 并提到该框架无法使用我所有可用的计算资源。在卷积神经网络教程中,他们提到 天真地采用模型参数的异步更新会导致次优的训练性能,因为单个模型副本可能会在模型参数的陈旧副本上进行训练。相反,采用完全同步更新将与最慢的模型副本一样慢。 尽管他们在教程和白皮书中都提到了这一点,但我并没有真正找到在本地计算机上进行异步并行计算的方法。可能吗 还是它是Ten

  • Vue中和之间的主要区别是什么。js? 它们看起来一样,可以互换。

  • MXNet使用异步计算来提升计算性能。理解它的工作原理既有助于开发更高效的程序,又有助于在内存资源有限的情况下主动降低计算性能从而减小内存开销。我们先导入本节中实验需要的包或模块。 from mxnet import autograd, gluon, nd from mxnet.gluon import loss as gloss, nn import os import subproces

  • 我想数一数一条流的不同元素,我想知道为什么 不行,日蚀告诉我 类型收集器中的方法toMap(Function,Function,BinaryOperator)不适用于参数((s)- 顺便说一句,我知道这个解决方案: 所以我有两个问题: 我的第一个方法有什么错误 编辑:我自己解决了第一个问题: Java需要一个函数作为第二个参数。

  • 本文向大家介绍MySQL的查询计划中ken_len的值计算方法,包括了MySQL的查询计划中ken_len的值计算方法的使用技巧和注意事项,需要的朋友参考一下 key_len的含义 在MySQL中,可以通过explain查看SQL语句所走的路径,如下所示: 其中,key_len表示使用的索引长度,是以字节为单位。在上面的例子中,由于int型占用4个字节,而索引中只包含了1列,所以,key_len是

  • 问题内容: 我有一个对象,该对象带有一种方法,希望以类似以下方式向库客户端(尤其是脚本客户端)公开: 但是我可以使用的原始“东西”是一组事件驱动的类: 在其中,ImplementingThing接受输入,执行一些不可思议的工作,例如将任务排队入队列,然后稍后在发生结果时,在可能与调用ImplementingThing.doSomethingAsync()相同的线程上调用该线程。 有没有一种方法可以