65 lines
1.9 KiB
Text
65 lines
1.9 KiB
Text
' version 12-10-2017
|
|
' compile with: fbc -s console
|
|
|
|
Dim As UInteger i, j, n, sum, ten1, ten2 = 10
|
|
Dim As UInteger n0, n1, n2, n3, n4, n5, n6, n7, n8, n9
|
|
Dim As UInteger s1, s2, s3, s4, s5, s6, s7, s8
|
|
Dim As UInteger pow(9), num()
|
|
Dim As String number
|
|
|
|
For i = 1 To 9
|
|
pow(i) = i
|
|
For j = 2 To i
|
|
pow(i) *= i
|
|
Next
|
|
Next
|
|
|
|
For n = 1 To 11
|
|
For n9 = 0 To n
|
|
For n8 = 0 To n - n9
|
|
s8 = n9 + n8
|
|
For n7 = 0 To n - s8
|
|
s7 = s8 + n7
|
|
For n6 = 0 To n - s7
|
|
s6 = s7 + n6
|
|
For n5 = 0 To n - s6
|
|
s5 = s6 + n5
|
|
For n4 = 0 To n - s5
|
|
s4 = s5 + n4
|
|
For n3 = 0 To n - s4
|
|
s3 = s4 + n3
|
|
For n2 = 0 To n - s3
|
|
s2 = s3 + n2
|
|
For n1 = 0 To n - s2
|
|
n0 = n - (s2 + n1)
|
|
sum = n1 * pow(1) + n2 * pow(2) + n3 * pow(3) + _
|
|
n4 * pow(4) + n5 * pow(5) + n6 * pow(6) + _
|
|
n7 * pow(7) + n8 * pow(8) + n9 * pow(9)
|
|
If sum < ten1 Or sum >= ten2 Then Continue For
|
|
ReDim num(9) : number = Str(sum)
|
|
For i = 0 To n -1
|
|
j = number[i] -48
|
|
num(j) += 1
|
|
Next i
|
|
If n0 = num(0) AndAlso n1 = num(1) AndAlso n2 = num(2) AndAlso _
|
|
n3 = num(3) AndAlso n4 = num(4) AndAlso n5 = num(5) AndAlso _
|
|
n6 = num(6) AndAlso n7 = num(7) AndAlso n8 = num(8) AndAlso _
|
|
n9 = num(9) Then Print sum
|
|
Next n1
|
|
Next n2
|
|
Next n3
|
|
Next n4
|
|
Next n5
|
|
Next n6
|
|
Next n7
|
|
Next n8
|
|
Next n9
|
|
ten1 = ten2
|
|
ten2 *= 10
|
|
Next n
|
|
|
|
' empty keyboard buffer
|
|
While Inkey <> "" : Wend
|
|
Print : Print "hit any key to end program"
|
|
Sleep
|
|
End
|