Vb.net 我想让我的程序执行,直到我手动退出它
我用vb创建了一个控制台程序 . Net来计算输入的数字阶乘,但它在我退出之前只执行一次,如何让程序运行直到用户想要退出? 这是我使用的代码 模阶乘 Dim阶乘=1,i,num为整数 副标题() Write(“输入一个数字以查找它的阶乘:”) num=Console.ReadLine() 阶乘=1 对于i=1到num 阶乘=阶乘*i 下一个 WriteLine({0}的阶乘是{1}),num,阶乘) 端接头 端模块Vb.net 我想让我的程序执行,直到我手动退出它,vb.net,loops,iteration,Vb.net,Loops,Iteration,我用vb创建了一个控制台程序 . Net来计算输入的数字阶乘,但它在我退出之前只执行一次,如何让程序运行直到用户想要退出? 这是我使用的代码 模阶乘 Dim阶乘=1,i,num为整数 副标题() Write(“输入一个数字以查找它的阶乘:”) num=Console.ReadLine() 阶乘=1 对于i=1到num 阶乘=阶乘*i 下一个 WriteLine({0}的阶乘是{1}),num,阶乘) 端接头 端模块 控制台。ReadKey()将允许您让程序
控制台。ReadKey()
将允许您让程序等待按下任何键
如果您需要您的程序计算越来越多的阶乘,您应该将所有代码封装到无限循环中,如下所示:
Do
Something
Loop
要处理来自用户的多个输入,需要将代码放入循环中。您需要一种方式让用户指示该完成了(例如,键入“退出”而不是数字) 在将用户输入的字符串转换为整数之前,还应确保该字符串有效 最后,您应该考虑到阶乘非常大的可能性。对阶乘使用Long而不是整数会有所帮助,但阶乘可能仍然太大,因此您可以使用Try/Catch检查溢出并发送错误消息。如果您想处理任意大小的数字,您可以进行研究
Module factorial
Sub Main()
Do
Console.Write("Enter a number to find its factorial, or Quit to end the program:")
Dim inString As String = Console.ReadLine
If inString.ToUpper = "QUIT" Then Exit Sub
Dim num As Integer
If Integer.TryParse(inString, num) Then
Dim factorial As Long = 1
Try
For i As Integer = 2 To num
factorial *= i
Next
Console.WriteLine("Factorial of {0} is {1}", num, factorial)
Catch ex As OverflowException
Console.WriteLine("Factorial of {0} is too large", num)
End Try
End If
Loop
End Sub
End Module