Luna Lailatova
3 years ago
2 changed files with 45 additions and 0 deletions
@ -0,0 +1,38 @@ |
|||||||
|
targetx = (175, 227) #(20, 30) |
||||||
|
targety = (-134, -79) #(-10, -5) |
||||||
|
|
||||||
|
trajectories = [] |
||||||
|
|
||||||
|
class probe: |
||||||
|
def __init__(self, velo): |
||||||
|
self.probe_position = (0, 0) |
||||||
|
self.velocity = velo |
||||||
|
self.initial_velo = velo |
||||||
|
|
||||||
|
def steppy(self): |
||||||
|
while self.probe_position[0] < targetx[1] and self.probe_position[1] > targety[0]: |
||||||
|
x, y = self.probe_position |
||||||
|
velox, veloy = self.velocity |
||||||
|
x += velox |
||||||
|
y += veloy |
||||||
|
if x >= targetx[0] and x <= targetx[1] and y <= targety[1] and y >= targety[0]: |
||||||
|
return self.initial_velo |
||||||
|
veloy -= 1 |
||||||
|
if velox != 0: |
||||||
|
if velox < 0: |
||||||
|
velox += 1 |
||||||
|
if velox > 0: |
||||||
|
velox -= 1 |
||||||
|
self.probe_position = (x, y) |
||||||
|
self.velocity = (velox, veloy) |
||||||
|
return None |
||||||
|
|
||||||
|
for yvelo in range(targety[0], 0 - targety[0]): |
||||||
|
for xvelo in range(1, targetx[1] + 1): |
||||||
|
prob = probe((xvelo, yvelo)) |
||||||
|
t = prob.steppy() |
||||||
|
if t is not None: |
||||||
|
trajectories.append(t) |
||||||
|
del prob |
||||||
|
|
||||||
|
print(len(trajectories)) |
Loading…
Reference in new issue