Длинная арифметика - произведение очень больших чисел - Visual Basic .NET
Формулировка задачи:
Всем доброго здоровичка!!! Кто-нибудь делал произведение очень больших чисел??? Числа берутся и ТекстБоксов. Подскажите пожалуйста с кодом на VB2008!!! Спасибо!!!
Решение задачи: «Длинная арифметика - произведение очень больших чисел»
textual
Листинг программы
Public Class Form1 Function mul(m1 As String, m2 As String) As String Dim a() As String, n As Byte Dim i1 As Long, i2 As Long, L1 As Long, L2 As Long L1 = Len(m1) : L2 = Len(m2) ReDim a(L1 + L2) For i2 = L2 To 1 Step -1 n = Mid$(m2, i2, 1) For i1 = L1 To 1 Step -1 a(i1 + i2) = Val(a(i1 + i2)) + n * Mid$(m1, i1, 1) If a(i1 + i2) > 9 Then a(i1 + i2 - 1) = Val(a(i1 + i2 - 1)) + a(i1 + i2) \ 10 a(i1 + i2) = a(i1 + i2) Mod 10 End If Next i1 Next i2 mul = Join(a, "") End Function Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load Dim res$ = "1" '321^234 Dim s$ = "321" For i% = 1 To 234 res = mul(res, s) Next Debug.Print(res) '1000! res = 1 For i% = 2 To 1000 res = mul(res, i) Next Debug.Print(res) End Sub End Class
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д