Partition function P: Difference between revisions

Partition function P en FreeBASIC
No edit summary
(Partition function P en FreeBASIC)
Line 347:
193655306161707661080005073394486091998480950338405932486880600467114423441282418165863
</pre>
 
 
=={{header|FreeBASIC}}==
{{trans|Python}}
<lang freebasic>
Function PartitionsP(n As Integer) As Single
Dim As Single p(n), k, j
p(0) = 1
For i As Integer = 1 To n + 1
k = 0
While True
k += 1
j = (k * (3*k - 1)) \ 2
If (j > i) Then Exit While
If (k And 1) Then
p(i) += p(i - j)
Else
p(i) -= p(i - j)
End If
j = (k * (3*k + 1)) \ 2
If (j > i) Then Exit While
If (k And 1) Then
p(i) += p(i - j)
Else
p(i) -= p(i - j)
End If
Wend
Next i
Return p(n)
End Function
 
Print !"\nPartitionsP: ";
For x As Integer = 0 To 12
print PartitionsP(x);" ";
Next x
Sleep
</lang>
 
 
=={{header|Go}}==
2,148

edits