C#如何让我的程序两次调用我的表示类方法?

时间:2014-09-14 19:33:36

标签: c# .net methods

class MultTableApp
{
    static void Main(string[] args)
    {
        //instantiate new multtable object and pass base values through
        MultTable table1 = new MultTable(GetFirstBaseValue(), GetSecondBaseValue());
        table1.MultTableHeader(); 
        table1.CreateMultTable(); 
        Console.Read(); 
    }

    public static int GetFirstBaseValue()
    {
        int first;
        Console.WriteLine("Please enter the first base value (must be between 2 and 8): ");
        first = int.Parse(Console.ReadLine());

        while (first < 2 || first > 7)
        {
            Console.WriteLine("\nPlease enter the first base value (must be between 2 and 8): ");
            first = int.Parse(Console.ReadLine());
        }

        return first; 
    }

    public static int GetSecondBaseValue()
    {
        int second;
        Console.WriteLine("\nPlease enter the second base value (must be between 2 - 8 "
                            + "and larger than first value): ");
        second = int.Parse(Console.ReadLine());

        while (second <= GetFirstBaseValue() || second > 8)
        {
            Console.WriteLine("\nPlease enter the second base value (must be between 2 - 8 "
                            + "and larger than first value): ");
            second = int.Parse(Console.ReadLine());
        }

        return second;
    }
}

此程序接受第一个值和第二个值,然后显示第一个值到第二个值范围的乘法表(所以如果我输入2表示第一个值,然后输入8表示第二个值,程序将创建一个数字乘法表2-8)。通过这个类,它会询问用户输入,然后通过新的对象参数将输入传递给逻辑层。我没有包含我的逻辑层,因为它已经被弄清楚了。我的问题在于我的表示层有两个方法GetFirstValue()和GetSecondValue()。我的程序调用两次方法。

我已经介入了该程序,并且在使用GetFirstValue()作为我在GetSecondValue()方法的while循环中的参数的一部分时遇到了问题。实际上,我甚至认为它在第一次调用时在第二种方法中返回一个值。在程序请求两个值之后,它再次调用GetFirstValue()方法然后创建乘法表就好了,但我不认为我在考虑GetSecondValue()中的while循环。

我的猜测是我需要找到一种方法在第二种方法中正确使用GetFirstValue()中的值,然后可能会修复它。这是针对以业务为中心的编程类,这意味着我的教师希望将程序分为演示,业务和数据层。如何在这个演示课程中保留这些问题并仍能实现我的目标?任何帮助深表感谢。

0 个答案:

没有答案