@i00 Seems like you and I are stuck in the same boat.
Public ReadOnly Property Pi(ByVal Optional limit As Int32 = 25) As Double
'Pi = (6(1/1^2 + 1/2^2 + 1/3^2 + 1/4^2 + ...))^(1/2)
Dim result As Double
Dim tmp As Double = 0.0
For i As Int32 = 1 To limit
tmp = tmp + (1/i)^2
result = (6*tmp)^(1/2)
This is only as accurate as the number of times you process it.. and of course the higher you go the longer it takes. I've pushed it to 100,000,000x before I realized this is not practical for my applications use. 100,000,000x gave me 3.14159264498239. My guess is 1,000,000,000x will produce 3.14159265... so on and so forth.. just as you proposed in your method.