#------------------------------------------------------------------------------
#  PointTest.py
#  Compute pi using a Monte-Carlo simulation.
#------------------------------------------------------------------------------
from Point7 import *


# main() ----------------------------------------------------------------------
def main():

   num_trials = 1_000_000
   print()

   # first method
   count = 0
   for i in range(num_trials):
      P = Point.randPoint(0,1,0,1)
      if P.sqNorm()<1:  
         count+=1
      # end if
   # end for
   print(4*count/num_trials)
   print()

   # second method
   count = 0
   for i in range(num_trials):
      P = Point.randPoint(0,1,0,1)
      (x, y) = P.getCoord()
      if y>x:
         P = Point(y, x)
      if P.sqNorm()<1:  
         count+=1
      # end if
   # end for
   print(4*count/num_trials)
   print()

   # third method
   count = 0
   for i in range(num_trials):
      P = Point.randPoint(-1, 1, -1, 1)
      if P.sqNorm()<1: count += 1
   # end for
   print(4*count/num_trials)
   print()


# end main() ------------------------------------------------------------------

# -----------------------------------------------------------------------------
if __name__=='__main__':

   main()

# end if ----------------------------------------------------------------------