السلام عليكم ..
هذا حل مثال 92 بالبايثون :
import time def createArray(n): a = `n` p = [] for i in range(0,len(a)): p.append(a) return p def squareDigits(num): x = createArray(num) z = len(x) y = 0 for j in range(0,z): y += int(x[j]) ** 2 return y t0 = time.clock() count = 0 max = 10000000 for i in range(1,max): found = False z = 0 while found == False: z = squareDigits(i) i = z if z == 89: found = True count += 1 elif z == 1: found = True t1 = time.clock() print "Result=",count print "elapsed time=",t1-t0
النتيجه هي :
Result= 8581146 elapsed time= 575.74
تم التنفيذ على جهاز 2GHz - 32bit, ذاكرة 2 ونص جيجا , منصه Ubuntu 9.04





