[VB.NET]VB编程问题急救
发布时间:2020-12-16 23:36:42 所属栏目:大数据 来源:网络整理
导读:VB编程问题急救 各位帮忙编个程序,本人感激不尽啊 在窗体上输出1到500的所有同构数的。 所谓同构数:指本身的平方的末几位于自身相同的数。 例如:5的平方25,最后一位为5 又例如:25的平方625,最后两位为25 要求:Form的Click事件发生时,输出程序运行结
VB编程问题急救 各位帮忙编个程序,本人感激不尽啊 在窗体上输出1到500的所有同构数的。 所谓同构数:指本身的平方的末几位于自身相同的数。 例如:5的平方25,最后一位为5 又例如:25的平方625,最后两位为25 要求:Form的Click事件发生时,输出程序运行结果 __________________________________________________________________________ Private Sub FormInVB_Click(ByVal sender As Object,ByVal e As System.EventArgs) Handles Me.Click Dim nLoop As Integer = 1 While (nLoop < 501) If (CheckTail(nLoop,nLoop * nLoop)) Then Debug.WriteLine(nLoop.ToString() + : + (nLoop * nLoop).ToString()) End If nLoop = nLoop + 1 End While End Sub Private Function CheckTail(ByVal num1 As Integer,ByVal num2 As Integer) As Boolean If (num1 = 0) Then Return True End If If ((num1 Mod 10) = (num2 Mod 10)) Then Return ((True) And (CheckTail(Decimal.Floor(num1 / 10),Decimal.Floor(num2 / 10)))) Else Return False End If End Function __________________________________________________________________________ 输出 1 : 1 5 : 25 6 : 36 25 : 625 76 : 5776 376 : 141376 __________________________________________________________________________ 唉,看来VB比C慢很多,把循环中的if判断去掉,计算 While (nLoop < 50000001) (C里面是 while ( nLoop < 50000001L ) ),VB需要 1.796 秒,而 C 只需要 0.125,相差十几倍啊 __________________________________________________________________________ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |