import time import sys t1=time.clock() f1=file('in14_2.txt','r') t=f1.read() n_div=0 n_mul=0 number=int(t) list_mul=[] list_div=[] output=[] def cj(n): count_div=0 count_mul=0 my_list=[] while(n>1): if n%2==0: n=n/2 count_div=count_div+1 my_list.append(n) else: n=3*n+1 count_mul=count_mul+1 my_list.append(n) list_mul.append(count_mul) list_div.append(count_div) return len(my_list) for i in range(1,number+1): n=cj(i) output.append(n) for k in range(0,len(list_div)): n_div=n_div+list_div[k] for l in range(0,len(list_mul)): n_mul=n_mul+list_mul[l] f2=open('out_14_2.txt', 'w') for c in range(0,len(output)): f2.write(str(output[c])+',') f2.write('\n no. of multiplications= '+str(n_mul)+'\n') f2.write('\n no. of divisions= '+str(n_div)+'\n') var_list=[t1,f1,f2,t,n_div,n_mul,number,list_mul,list_div,output,i,k,l] memory=0 for i in range(0, len(var_list)): memory = memory+sys.getsizeof(var_list[i]) memory=memory+sys.getsizeof(t1)+sys.getsizeof(memory)+12 '''t2 take same as t1 size and 12 for i of very above loop''' f2.write('memory used is '+str(memory)+' bytes'+'\n') t2=time.clock() f2.write('time taken is '+ str(t2-t1)+' seconds'+'\n') f1.close() f2.close()