본문 바로가기

카테고리 없음

[VB 6.0] 무한 계산! String 연산을 이용한 덧셈 함수

음... python을 제외한 거의 모든 언어들이 무한 계산을 지원하지 않는다는 점이 약간 불편하기도 하여서... 한번 만들어봤습니다. 물론 vb6.0에서만 가능하고, 다른 언어로 변환 또는 수정해서 사용하신다면 주석으로 출처를 남겨주시면 감사하겠습니다~~~ 그리고 주석은 지우지 마세요...
이 함수의 특징 : String 연산으로 무한적으로 연산이 가능하다. String으로 연산이 빠르다.
응용 : 사칙연산
=============================================================
Function addstr(ByVal data1 As String, ByVal data2 As String) As String 'Infinity add, by  Jinmo
Dim tmp As Integer
Dim i As Integer
i = 0
Do While (Len(data1) - i > 0 Or Len(data2) - i > 0)
If Len(data1) - i <= 0 Then
Stop
p1 = 0
Else: p1 = Val(Mid(data1, Len(data1) - i, 1))
End If
If Len(data2) - i <= 0 Then
p2 = 0
Else: p2 = Val(Mid(data2, Len(data2) - i, 1))
End If
If p1 + p2 >= 10 Then
p1 = (p1 + p2) Mod 10
p2 = 0
b = True
Else
b = False
End If
addstr = p1 + p2 + tmp & addstr
i = i + 1
If b = True Then tmp = 1
If b = False Then tmp = 0
Loop
If tmp = 1 Then
addstr = 1 & addstr
End If
End Function