martes, 17 de marzo de 2015

SUMA EREW

TAREA 7
#SUMA EREW (USO DE HILOS)
#OSCAR SALGADO ALAMILLA.

import threading
import math

#FUNCION HILO
def hilo(i,j):
    if ((2*j)%(2**i)==0):
        a[int(2*j)]=a[int(2*j)]+a[int((2*j)-2**(i-1))]
        print a
       
#PRINCIPAL
a=[0,5,2,10,1,8,12,7,3]
n=len(a)
lg=int(math.log(n,2))
print a
i=1
while(i<=lg):
    j=1
    while(j<=(n/2)):
        t=threading.Thread(target=hilo, args=(i,j, ))
        t.start()
        j=j+1

    i=i+1