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()中的值,然后可能会修复它。这是针对以业务为中心的编程类,这意味着我的教师希望将程序分为演示,业务和数据层。如何在这个演示课程中保留这些问题并仍能实现我的目标?任何帮助深表感谢。