0

我正在 Visual Studio Express 2013 中编写一个简单的薪酬估算计算器,并且已经输入了大部分代码。然而,我试图克服的主要障碍之一是入口点的循环,直到用户输入一些东西供它[程序]处理。现在,如果我没记错的话,这必须是二合一操作。

  • 密钥验证,以便只接受数字和
  • 循环本身

我一直在尝试实现某些东西,并且在某种程度上它们可以工作,但最终失败了,一切都回到了程序无法将一个转换为另一个或从某个转换为另一个的问题上。

我需要循环的代码是七个部分。完整的部分示例是;

Console.Clear()
Console.WriteLine("")
Console.WriteLine("Minute Entry for MONDAY.")
Console.WriteLine("")
Console.WriteLine("════════════════════════════════════════════════════════════════════════════════")
Console.WriteLine("Enter number then press ENTER to continue...")
Console.WriteLine("")
MonMin = Console.ReadLine()
4

1 回答 1

0

如果您需要七个部分,则应该清楚您需要一个循环七次的 for 循环:

For i As Integer = 0 To 6

Next

在此循环的开头打印您的介绍性文字。您可以使用数组映射i到一天(例如Console.WriteLine("Minute Entry for " & days(i))).

正如您已经提到的,ReadLine必须将其封装在另一个进行验证的循环中:

Dim validEntry = False
While Not validEntry
    MonMin = Console.ReadLine()
    'Do the validation
End While

验证必须检查数字输入。例如

If IsNumeric(MonMin) Then validEntry = True

如果要打印错误消息,可以使用第二个变量来存储循环是否首次运行:

Dim firstTime = True
While Not validEntry
    If Not firstTime Then Console.WriteLine("The entered value is not valid")
    firstTime = False
    'Go on ...
End While

验证后,您可能希望将其保存MonMin到数组中。

于 2013-11-04T09:28:46.827 回答