def pointGen(): """ Genera un punto al azar. """ x, y = RI(-7, 32), RI(32, 72) return (x, y)
def initialize_param(no_targets, no_observers): targets = [] a = [-1, 1] observers = [] obstacles = [] no_obstacles = int(ceil(no_targets / 3)) for i in range(no_targets): targets.append( T(R() * 150 * a[RI(0, 1)], R() * 150 * a[RI(0, 1)], target_speed[RI(0, 5)], R() * 360, sensor_range[RI(0, 4)])) for i in range(no_observers): observers.append( O(R() * 150 * a[RI(0, 1)], R() * 150 * a[RI(0, 1)], observer_speed, sensor_range[RI(0, 4)])) for i in range(no_obstacles): obs_len = obstacle_len[RI(0, 5)] angle = R() * 360 pos_x = R() * 150 * a[RI(0, 1)] pos_y = R() * 150 * a[RI(0, 1)] temp_obs = [] for j in range(obs_len): temp_obs.append( Ob(pos_x + j * sin(angle), pos_y + j * cos(angle), angle, i)) obstacles.append((obs_len, temp_obs)) return (no_targets, no_observers, no_obstacles, targets, observers, obstacles)
def initialize(self): no_observers_arr=[2,6,10,14,18] no_targets_arr=[3,9,15,21,27] target_speed=[0.2,0.5,0.8,1.0,1.2,1.5] observer_speed=1.0 sensor_range=[5,10,15,20,25] observer_target_dict={} obstacle_len=[2,5,8,10,12,20] targets=[] a=[-1 ,1] observers=[] obstacles=[] no_targets=no_targets_arr[RI(0,4)] no_observers=no_observers_arr[RI(0,4)] no_obstacles=int(ceil(no_targets/3)) for i in range(no_targets): targets.append(T(R()*150*a[RI(0,1)],R()*150*a[RI(0,1)],target_speed[RI(0,5)],R()*360,sensor_range[RI(0,4)])) for i in range(no_observers): observers.append(O(R()*150*a[RI(0,1)],R()*150*a[RI(0,1)],observer_speed,sensor_range[RI(0,4)])) for i in range(no_obstacles): obs_len=obstacle_len[RI(0,5)] angle=R()*360 pos_x=R()*150*a[RI(0,1)] pos_y=R()*150*a[RI(0,1)] temp_obs=[] for j in range(obs_len): temp_obs.append(Ob(pos_x+j*sin(angle),pos_y+j*cos(angle),angle,i)) obstacles.append((obs_len,temp_obs)) return (no_targets,no_observers,no_obstacles,targets,observers,obstacles)
def initialize_param(no_targets,no_observers): targets=[] observers=[] for i in range(no_targets): targets.append(T(R()*150,R()*150,target_speed[RI(0,5)],R()*360,sensor_range[RI(0,4)])) for i in range(no_observers): observers.append(O(R()*150,R()*150,observer_speed,sensor_range[RI(0,4)])) return (no_targets,no_observers,targets,observers)
def initialize(self): targets = [] observers = [] no_targets = self.no_targets_arr[RI(0, 4)] no_observers = self.no_observers_arr[RI(0, 4)] sensor_range_targets = self.sensor_range[RI(0, 4)] sensor_range_observers = self.sensor_range[RI(0, 4)] for i in range(no_targets): targets.append( T(R() * 150, R() * 150, self.target_speed[RI(0, 5)], R() * 360, sensor_range_observers)) for i in range(no_observers): observers.append( O(R() * 150, R() * 150, self.observer_speed, sensor_range_targets)) return (no_targets, no_observers, targets, observers)
def isPrime(n): # tested if n != 1: for t in xrange(3): rNum = RI(1, n - 1) if pow(rNum, n - 1, n) != 1: return False return True else: return False
def initialize_custom(self, no_trgts, no_obs, obs_range): self.x_limit = 150 self.y_limit = 150 target_speed = [0.2, 0.5, 0.8, 1.0, 1.2, 1.5] observer_speed = 1.0 self.total_steps = 1500 self.update_steps = 10 observer_target_dict = {} obstacle_len = [2, 5, 8, 10, 12, 20] self.template_probability_distribution = [ 0.001953125, 0.001953125, 0.00390625, 0.0078125, 0.015625, 0.03125, 0.0625, 0.125, 0.25, 0.5 ] targets = [] a = [-1, 1] observers = [] obstacles = [] observer_strategy = [] no_obstacles = int(ceil(no_trgts / 3)) sensor_range = [5, 10, 15, 20, 25] for i in range(no_trgts): targets.append( T(R() * 150 * a[RI(0, 1)], R() * 150 * a[RI(0, 1)], target_speed[RI(0, 5)], R() * 360, sensor_range[RI(0, 4)])) for i in range(no_obs): observers.append( O(R() * 150 * a[RI(0, 1)], R() * 150 * a[RI(0, 1)], observer_speed, obs_range)) observer_strategy.append(RI(1, 4)) for i in range(no_obstacles): obs_len = obstacle_len[RI(0, 5)] angle = R() * 360 pos_x = R() * 150 * a[RI(0, 1)] pos_y = R() * 150 * a[RI(0, 1)] temp_obs = [] for j in range(obs_len): temp_obs.append( Ob(pos_x + j * sin(angle), pos_y + j * cos(angle), angle, i)) obstacles.append((obs_len, temp_obs)) return (no_trgts, no_obs, no_obstacles, targets, observers, obstacles, observer_strategy)
def computer_entry(): '''This is a fuction to create random integer for the computer's input position''' global board r = RI(0,8) if board[r] != '-': computer_entry() else: print('Computer turn...',end=' ') sleep(1) print('it choose : '+ str(r)) board[r] = 'O' display()
"inc": (lambda a: a+1), "dec": (lambda a: a-1), "neg": (lambda a: -a), "abs": (lambda a: abs(a)), "eq0": (lambda a: Dec(a == 0)), "neq0": (lambda a: Dec(a != 0)), "rec": (lambda a: Dec(1/a)), "sqrt": (lambda a: round(Dec(a**Dec(0.5)))), "cbrt": (lambda a: round(Dec(a**Dec(1/3)))), "sqtr": (lambda a: Dec(a**Dec(0.5))), "cbtr": (lambda a: Dec(a**Dec(1/3))), "adx": (lambda a: a+subx), "ady": (lambda a: a+suby), "dcd": (lambda a: Dec(RC((f"{a}")))), #random number from given number "src": (lambda a: (Dec(RI(0,a)))if a>-1else 0), #random number from 0 to a "nsrc": (lambda a: (Dec(RI(-a,0)))if a<1else 0), #random number from a to 0 "msrc": (lambda a: Dec(RI(-a,a))), #random number from -a to a "fct": (lambda a: Dec(math.factorial(a)if a>=0else 0)) #n factorial } def handle_unary_op(op, s): a = pop_stack(s) s.append(unary_ops[op](a)) def op_eu(s): s.append(round(Dec(math.e), 10)) # rounded to 10 places because i doubt people will need more
print() print('DENOMINATOR:') den.PRINT() print() q, r, f = num.divide(den) print('QUOTIENT:') q.PRINT() print('REMAINDER:') r.PRINT() print('FACTOR: {}'.format(f)) print('----------------------------') g = p1.gcd(p2) g.PRINT() q1 = polynomial([-1, 1]) q2 = polynomial([-265692, 3]) q3 = polynomial([-11, 13]) q4 = polynomial([73, -37]) q = [q1, q2, q3, q4] qs = [[q[i].multiply(q[j]) for j in range(4)] for i in range(4)] for _ in range(10): i1, j1, i2, j2 = RI(0, 3), RI(0, 3), RI(0, 3), RI(0, 3) print('===================') q[i1].PRINT() q[j1].PRINT() q[i2].PRINT() q[j2].PRINT() qs[i1][j1].gcd(qs[i2][j2]).PRINT() print('===================')
#11$\sum_{k=0}^n \binom{n}{k}c^k = (c+1)^n$ s21 = '(k+kc-nc-c)(n+2-k)' s22 = 'k(k-1+kc-nc-2c)' ''' What are these?!?!?! s3 = '(n+2-k)^2((n+1)^3-2(n+1-k)^2(2n+1))' s4 = 'k^2((n+1)^3-2(n+2-k)^2(2n+1))' ''' tests = [(s01,s02),(s03,s04),(s05,s06),(s07,s08),(s09,s10),\ (s11,s12),(s13,s14),(s15,s16),(s17,s18),(s19,s20),(s21,s22)] for i, test in enumerate(tests): #try: try_algo(test[0], test[1], 'k', i + 1) ''' except: print('==============================') print(test[0]) print(test[1]) print('DOES NOT WORK') print('==============================') ''' d = {} for k in range(3): for m in range(3): for n in range(3): d[(k, m, n)] = RI(-3, 3) dict2polynomial(d, ['k', 'm', 'n']).PRINT() print('TESTING DONE')