如何从两个调用中获取返回值以乘法,将它们相加并打印结果?

  • 本文关键字:结果 打印 两个 返回值 获取 调用 c#
  • 更新时间 :
  • 英文 :


在 Main 方法中,从两个调用中获取返回值 乘法,将它们相加,然后打印结果。乘法 (2.5, 2( 应返回 5,乘法 (6, 7( 应返回 42,因此应得到的结果为 47。

使用 C# 我编写了以下代码,但是我只得到 42 的答案,并且在尝试添加它们时出现错误。关于如何添加两个调用以获得 47 而不是 42 的任何想法。这是树屋挑战的链接:

using System;
class Program
{    
static double Multiply(double firstParam, double secondParam)
{
return (firstParam * secondParam);
}
static void Main(string[] args)
{
Multiply(2.5, 2);
Multiply(6, 7);
}    
}

输出应为 47。

Multiply返回一个double,因此您可以将结果相加:

var total = Multiply(2.5, 2) + Multiply(6, 7);
Console.WriteLine($"result: {total}");

乘法应该只负责乘以数字,如果你试图返回乘法值的总和结果,这是违反单一责任的标志。因此,您可以执行以下操作之一:

double value1 = Multiply(2.5, 2);
double value2 = Multiply(6, 7);
double total = value1 + value2; // which is equal to 47 in your case

或者将乘法值的结果传递给 sum 方法,如下所示:

static double Sum(double d1, double d2)
{
return d1 + d2;
}

并像这样称呼它:

var total = Sum(value1, value2);

或者你可以像这样简单地做:

var total =  Multiply(2.5, 2) + Multiply(6, 7);

有很多方法可以做到这一点,但您可以捕获结果乘法

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
namespace Rextester
{
public class Program
{
public static double result = 0;
static double Multiply(double firstParam, double secondParam)
{
return result += firstParam * secondParam;
}
public static void Main(string[] args)
{
Multiply(2.5, 2);
Multiply(6, 7);
Console.WriteLine(result);
}
}
}

相关内容

  • 没有找到相关文章

最新更新