Digital root: Difference between revisions

(→‎Composition of pure functions: Changed argument order in doc string)
Line 3,158:
55 has additive persistence 2 and digital root 1</pre>
 
=={{header|VBA}}==
<lang vb>Option Base 1
Private Sub digital_root(n As Variant)
Dim s As String, t() As Integer
s = CStr(n)
ReDim t(Len(s))
For i = 1 To Len(s)
t(i) = Mid(s, i, 1)
Next i
Do
dr = WorksheetFunction.Sum(t)
s = CStr(dr)
ReDim t(Len(s))
For i = 1 To Len(s)
t(i) = Mid(s, i, 1)
Next i
persistence = persistence + 1
Loop Until Len(s) = 1
Debug.Print n; "has additive persistence"; persistence; "and digital root of "; dr & ";"
End Sub
Public Sub main()
digital_root 627615
digital_root 39390
digital_root 588225
digital_root 393900588225#
End Sub</lang>{{out}}
<pre> 627615 has additive persistence 2 and digital root of 9;
39390 has additive persistence 2 and digital root of 6;
588225 has additive persistence 2 and digital root of 3;
393900588225 has additive persistence 2 and digital root of 9;</pre>
=={{header|VBScript}}==
<lang vb>Function digital_root(n)
255

edits