Author Topic: Определить переменную с наименьшим значением в Алгоритме A*.  (Read 8429 times)

0 Members and 1 Guest are viewing this topic.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
И всё равно я не пойму. Почему делим на 14?
В переменной $C нет информации чтобы её делить на количество строк (14)

$C мы пробегаем поле так ?

Code: [Select]
1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17
18 19 20 21 22 23 24 25 .....
Что здесь 14?


NStra

  • Освоившийся
  • **
  • Posts: 45
  • Подпись под аватаром.
    • View Profile
Забыл уточнить...Поле перебирается так:
1 5 9
2 6 10
3 7 11
4 8 12
То есть сверху вниз, слева направо.
Тут должна быть подпись...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Аааа

А вот здесь тогда
Code: (clickermann) [Select]
   $C = ($XT-1) * $YT
   IF($ARR[$C] ! 0)
...

Допустим у нас
$XT = -5
$YT = 3

Куда мы в этом случае будем обращаться в $ARR по отрицательному индексу?


Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Ещё вариант, если
$XT = любое
$YT = 0

при любом $XT будет обращаться к $ARR[0]


NStra

  • Освоившийся
  • **
  • Posts: 45
  • Подпись под аватаром.
    • View Profile
Спасибо, пойду исправлю...
Тут должна быть подпись...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Может не нужно было запутываться с отрицательным смещением. Брать поле 17х14
А уже при определении с экрана или при ответе переводить в -6/-3...10/10


Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Движение есть? А где сам алгоритм поиска пути? В выложенном куске его нет.
Там мы просто двигаемся на всё что ближе к финишу, без всяких поисков.