Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python3
- import sys
- import math
- import threading
- import time
- def isPrime(number) :
- if number > 1:
- for i in range(2, number):
- if (number % i) == 0:
- return False
- else:
- return True
- else:
- return False
- def prob1(lista):
- primeNum = []
- for element in lista:
- time.sleep(1)
- if(isPrime(element)):
- primeNum.append(element)
- n = len(primeNum)
- if(n % 2 == 0):
- print((primeNum[n // 2] + primeNum[n // 2 + 1]) / 2, max(primeNum), primeNum)
- else:
- print(primeNum[n // 2], max(primeNum), primeNum)
- def prob2(lista):
- divizori = [1]
- for element in lista:
- div = 2
- time.sleep(1.5)
- while div <= element:
- if element % div == 0:
- if div not in divizori:
- divizori.append(div)
- div += 1
- n = len(divizori)
- if(n % 2 == 0):
- print((divizori[n // 2] + divizori[n // 2 + 1]) / 2, max(divizori), divizori)
- else:
- print(divizori[n // 2], max(divizori), divizori)
- if __name__ == "__main__":
- lista = []
- for i in range(1, len(sys.argv)):
- lista.append(int(sys.argv[i]))
- t3 = threading.Thread()
- t1 = threading.Thread(target=prob1, args= (lista, ))
- t2 = threading.Thread(target=prob2, args= (lista, ))
- t1.start()
- t2.start()
- print("Is thread1 alive:", t1.is_alive())
- print("Is thread2 alive:", t2.is_alive())
- t1.join()
- print("Is thread1 alive:", t1.is_alive())
- print("Is thread2 alive:", t2.is_alive())
- t2.join()
- print("Is thread1 alive:", t1.is_alive())
- print("Is thread2 alive:", t2.is_alive())
- print("All done!")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement