Home |
Search |
Today's Posts |
#22
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I made a slight change and I'm getting 160899 has an answer. I had one loop
counter going once too many. Are you sure your answer is correct? I don't see what is wrong with my method of using string to get the answer. "Jerry W. Lewis" wrote: The correct answer is 102308. Jerry "Joel" wrote: I get the answer 145120 with the following code Sub largemultiply() Dim MyTotal As String MyTotal = "13" For i = 1 To 270 MyTotal = Multiply(MyTotal, "13") Next i Remainder = Divide(MyTotal, "162653") End Sub Function Multiply(parm1 As String, parm2 As String) As String Multiply = "" carry = 0 For i = 0 To (Len(parm1) - 1) mychar1 = Mid(parm1, Len(parm1) - i, 1) total = "" For j = 0 To (Len(parm2) - 1) mychar2 = Mid(parm2, Len(parm2) - j, 1) prod = (Val(mychar1) * Val(mychar2)) + carry carry = Int(prod / 10) Remainder = prod Mod 10 total = Trim(CStr(Remainder)) & total Next j If Multiply = "" Then Multiply = total Else Multiply = Add(Multiply, total, i) End If Next i End Function Function Add(Multiply, total, shift) carry = 0 If shift 0 Then Add = Right(Multiply, shift) Else Add = "" End If For i = 0 To Len(total) - 1 If Len(Multiply) (i + shift) Then add1 = Val(Mid(Multiply, Len(Multiply) - (i + shift), 1)) Else add1 = 0 End If add2 = Val(Mid(total, Len(total) - i, 1)) Sum = add1 + add2 + carry carry = Int(Sum / 10) bit = Sum Mod 10 Add = bit & Add Next i If carry < 0 Then Add = carry & Add End If End Function Function Divide(Quotent, Divisor) Dim Remainder As Long NDivisor = Val(Divisor) NewQuotent = Val(Left(Quotent, Len(Divisor))) loops = (Len(Quotent) - Len(Divisor)) For i = 0 To loops Remainder = NewQuotent Mod NDivisor If i < loops Then Newbit = Mid(Quotent, i + Len(Divisor) + 1, 1) NewQuotent = (Remainder * 10) + Val(Newbit) End If Next i Divide = Remainder End Function "Diogo" wrote: Need to calculate via Excel: mod(13^271;162653) Any thoughts???? Thanks |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
esudden extreme slowdown of charting | Charts and Charting in Excel | |||
Extreme, time-consuming processing | Excel Discussion (Misc queries) | |||
Extreme VB Scripting problems | Excel Programming | |||
Conditional Formating Extreme Question | Excel Worksheet Functions | |||
How can I minimalize the difference between extreme values on a c. | Charts and Charting in Excel |