c# - 如何在 C# 中设置三种方法来接受用户输入并对输入进行数学计算?

标签 c# object methods console

这是初学者的作业,所以我理解人们不想只给我答案。但如果可能的话,我会很感激被指出正确的方向,因为我非常坚持这个提示:

在控制台应用程序项目的类文件中,我需要创建一个名为“Operator”的对象。它必须有三种方法与之相关联,加法、减法和除法各一种。程序文件必须要求用户键入一个整数,然后将其传递给每个方法,然后作为结果返回到控制台。他们没有指定要加/减/除什么,所以我将使用方法 1 将“4”添加到用户输入,方法 2 减去“3”,最后一个方法除以“1”。

对象应该有自己的 cs 文件,方法应该在程序文件中创建和调用。我知道有一种方法可以将类和方法放在同一个文件中,但对于这个作业,他们希望它们分开。

我假设运算符对象不应该有任何属性,因为它没有我能想到的特征;它只是一个用数字做事的抽象对象。所以我设置了一个非常简单的运算符对象,里面除了类名什么都没有:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace threemethods
{
    public class Operator
    {

    }
}

我意识到到目前为止这可能是错误的,但我不知道类文件中还需要什么,因为这些方法都将在程序文件中。 现在,我真正挣扎的地方是程序。我不知道将所有内容放在哪里,因为我见过的所有示例都不涉及用户输入,而且大多数都不是在外部完成的。我知道 Console.WriteLine("Pick a number") 可能会进入主要方法,加法/减法/除法将是主要方法下面的单独方法。但除此之外,我不知道应该遵循什么模板。我也不确定如何将结果从一种方法“传递”到另一种方法,直到使用了所有方法。同样,我不希望它为我完成,但我确实需要有关如何处理此问题的指导才能让我继续前进。即使是事情应该去向的大致轮廓也会真正有帮助。我的程序代码现在一团糟,我不能分享它,因为它没有意义。

非常感谢!

致阿米尔:

非常感谢您的帮助!您能否解释更多有关如何格式化您编写的控制台代码以调用这些方法的信息?我感到困惑的原因是我们被教导将这种格式用于 program.cs 文件:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace threemethods
{
    class Program
    {
     static void Main(int[] args)

然后是下面的主要方法。所以,当学校给我的格式有点不同时,我不确定如何正确地集成你的控制台代码。如果我将您的控制台代码放在程序文件中,您能告诉我应该向您的控制台添加什么代码才能使程序运行吗?例如,我在控制台代码之前的文件顶部写什么?

非常感谢!!对不起,如果我说的令人困惑!

最佳答案

更新:

这是关于控制台的cs文件:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Test
{
    class Program
    {
        public int Data { get; set; }
        static void Main(string[] args)
        {
            Console.WriteLine("Enter input:");
            string line = Console.ReadLine();

            var operatorObject = new Operator(); //You have to add reference, If is not.
            var result = operatorObject.GetAdd(data);

            Console.WriteLine(result);
            Console.ReadLine();
        }
    }
}

现在在这个 Operator.CS 文件中:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace threemethods
{
    public class Operator
    {
        public double GetAdd(int data)
        {
             data = data + 4;
             return GetSubtract(data);
        }    

        private  double GetSubtract(double data)
        {
             data = data - 3;
             return GetDivide(data);
        }

        private  double GetDivide(double data)
        {
             return data / 3;
        }
    }
}

要解决此问题,您必须将最后一个方法 2 设置为私有(private),并像我的示例一样使用其中一个方法。

有了这个示例,您可以只调用其中一个方法,开发变得如此简单。

如果您需要,我可以为您创建更多示例。

关于c# - 如何在 C# 中设置三种方法来接受用户输入并对输入进行数学计算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52582110/

相关文章:

Java - 给定接口(interface)与方法 - 如何传递参数?

c# - 为什么长时间运行的 Task 仍然会阻塞 UI?

Javascript 函数有子函数/变量

c# - .NET 中的反射

java - 将一条线分成两个不同的对象

javascript - 使用 lodash 将对象转换为数组

C++ 多线程类方法

javascript - jquery Ajax方法中的.load()可以用来加载图像吗?

c# - 尝试插入两个字母的字符时,指定的转换无效

c# - 在 UntyWebGl 中保存帧