Treba mi pomoc kod prijevoda koda iz Dr Racket u Javu koristeci recursion (samo jedan if-else). Kuzim sto trebam uraditi, ali mi je problem napraviti to recursive. Jel zna neko kako bi to trebala napravit? Svaka pomoc je dobrodosla
Kod iz Dr Racket:
;; Type: world point point direction-vector ->(list point)
(define (solve world s e d) (if (equal? s e)
(list s) (cons s
(solve world
(get-movement (next-step world s d) s) e
(next-step world s d))
) )
)
class RecursiveSolver {
static List solve(World world, Point s, Point e, DirectionVector d) {
List result = new ArrayList<>();
if (s.equals(e)) {
result.add(s);
} else {
result.add(s);
Point nextStep = getNextMovement(world, s, d);
result.addAll(solve(world, nextStep, e, getNextStep(world, s, d)));
}
return result;
}
static Point getNextMovement(World world, Point s, DirectionVector d) {
// Implementirajte logiku za dobivanje sljedećeg koraka u smjeru vektora d
// Vratite točku koja predstavlja sljedeći korak
}
static DirectionVector getNextStep(World world, Point s, DirectionVector d) {
// Implementirajte logiku za dobivanje sljedećeg vektora smjera ovisno o svijetu i trenutnoj točki
// Vratite vektor smjera za sljedeći korak
}