|
|
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Написал код, но проблема в том, что есть ошибка, логическая, которую никак не могу найти. Суть задачи из точки А в точку Б добраться кратчайшем путем, алгоритм стянул из книги. То есть на координате Х.У которая у меня выглядит как массив 50х50 есть РАКЕТА и ЦЕЛЬ, в ракеты и цели есть Х та У координата, логично, если Х ракеты == Х целы и У ракеты == У целы, задача окончена. Так и делаю, но оно через раз, то ли не добежит до цели, толи глюк, пару раз надо запустить. КОД МОЖНО НАГЛО КОПИРОВАТЬ И ВСТАВЛЯТЬ, ПРОБЛЕМ НЕ БУДЕТ ! Код: java 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. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2013, 23:50:04 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Ты не из РосКосмоса случайно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2013, 23:55:14 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Лагман, нет, это задача из контрольной из универа, препод хочет бабло выбить, а я хочу задачу сделать и загрузить его по самый не хочу =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:04:32 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Не проще ли просто провести прямую линию между двумя точками (любой алгоритм рисования прямой линии), чем все эти извращения с Math.sqrt(....) и простыней if'ов ? 1) Расчет расстояния Math.sqrt(....) явно нужно вынести в отдельную функцию IMHO, сейчас код смотрится очень ужасно. 2) Тип переменной для хранения расстояния (переменные d,d1) должен быть явно float или double. IMHO. А с таким "округлением" Вы явно какой-то бред получать будете. Если ошибка воспроизводиться на каких-то начальных значениях, то было бы хорошо данные значения и написать. IMHO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:12:29 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Кого и куда Вы загрузить хотите? Да и насчет бабла сомневаюсь, такая жесть, на бабло не тянет. Только на 2-- и помахать ручкой (кто кому индепенд от универа). Задача напомнила учебники по языку ЛОГО, который разрабатывался, что бы дети в начальных классах школы хороводы водили и черепашкой на экране рисовали ))) botasa111нет, это задача из контрольной из универа, препод хочет бабло выбить, а я хочу задачу сделать и загрузить его по самый не хочу =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:16:55 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsev, бла бла бла ... эту задачу я сам переформулировал по своему и упросил ее еще раз в 10-15, так как на листочку от контрольной такое было написано, что препод сам не знал, где взял из кучей данных левых, это раз, во вторых, препод в программировании не шарит это два, а три, вы так и не ответили по существу, где у меня ошибка ! вы ее хоть запускали, или глазами компилите ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:19:50 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Leonid KudryavtsevНе проще ли просто провести прямую линию между двумя точками (любой алгоритм рисования прямой линии), чем все эти извращения с Math.sqrt(....) и простыней if'ов ? 1) Расчет расстояния Math.sqrt(....) явно нужно вынести в отдельную функцию IMHO, сейчас код смотрится очень ужасно. 2) Тип переменной для хранения расстояния (переменные d,d1) должен быть явно float или double. IMHO. А с таким "округлением" Вы явно какой-то бред получать будете. Если ошибка воспроизводиться на каких-то начальных значениях, то было бы хорошо данные значения и написать. IMHO Я потом буду делать, что бы ЦЕЛЬ двигалась и РАКЕТА двигалась, мне нафик эти линии не нужны 1) А она у меня, что не в отдельный метод выноситься + там во всех 8 разные параметры передаются и знаки ? во первых функция значение вернет, процедура нет, у меня в ООП ДЖАВА это называется МЕТОДЫ, это так для развития. 2) скажите это автору книге, дать название и страницу ??? авторЕсли ошибка воспроизводиться на каких-то начальных значениях, то было бы хорошо данные значения и написать. IMHO если не если, у меня на начальных значениях нету проблем, НАДО КОМПИЛИТЬ ИДЕ а не глазами =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:26:18 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
botasa111вы так и не ответили по существу, где у меня ошибка ! вы ее хоть запускали, или глазами компилите ? 1. Ответил 2. Запускать ЭТО не намерен. Особенно в отсутствие исходных данных (рандом за исходные данные не катит) p.s. 2.1. Запускать и пошагово проходить такую фигню в полпервого ночи по мск желания нет. К тому же за бесплатно 2.2. Учись пользоваться отладчиком. Ошибку под отладчиком увидеть элементарно p.p.s. Логических ошибок не увидел. Алгоритм должен приводит к более-менее правильному результату, если его корректно закодировать. Хотя, для меня, было бы более логично просто нарисовать прямую между двумя точками (как известно прямая и есть кратчайший путь), чем итерационно, на каждом шаге, рассчитывать в каком направление нужно идти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:35:55 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
botasa111, у меня в ООП ДЖАВА это называется МЕТОДЫГде в вашем коде ООП? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:38:24 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
javapecker, глазки открой или уже спишь, ссылку на вики кинуть, что такое ООП ? ключевые слова как КЛАСС, ОБЕКТ, инкап. насле. полимор. абстр ? или у тебя ООП только когда есть класс и через NEW обьект создаешь ? в ДЖАВЕ все ООП, даже начальная программа начиная из МЕЙНА это уже ООП. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:41:23 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
botasa1112) скажите это автору книге, дать название и страницу ??? Давайте, желательно еще скан данной страницы. Полпервого ночи я в публичную библиотеку не пойду Поменяй на float и посмотри под отладчиком, что изменилось ))) И убери random в тест кейсе (отладочной версии), иначе IMHO даже говорить не о чем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:46:04 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:46:07 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
botasa111, ОБЕКТ, инкап. насле. полимор. абстр Да, вот это все где? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:48:26 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
javapecker, убежало от твоих глаз ... по твоей логике выходит, что если нету что то одного из перечисленного, хотя слово КЛАСС ты уже убрал, значит это не ООП ... ты или тролль или отсталый, в любом случае я не буду тебе отвечать на сообщение, так как от тебя в этой теме пользы 0 . удачи, приятных снов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:56:55 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 00:59:20 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
javapeckerbotasa111, ОБЕКТ, инкап. насле. полимор. абстр Да, вот это все где? Плюсуюсь. Меня таки уговорили попытаться запустить это в JDeveloper. Скопи-пастил, думал добавить пару методов, причесать код по своему вкусу ))). После того, как увидел, что ВСЕ static, понял, что первое впечатление о коде было правильным. Интересно, где товарищ такой стиль отладки кода увидел: 1. такое написание ф-ции main и класса, где все static. AFAIK Обычно в main делают что-то типа: MyClass obj = new MyClass(); obj.myMethod(); и о static забывают как о страшном сне. 2. отлаживаться на Random входных значениях Ждем скан страницы из книжки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 01:04:20 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsev, методы статические соответвенно и поля будут, так как не откомпилится, менял я на ДАБЛ поля, проблема таже, РАНДОМ уберал и ставил поля например х1 = 1 у1 = 1 начало х2 = 35 у2 = 35 проблема таже ... а рандом просто для генерации ЦЕЛЫ в любой точки поля. СКАН КНИГИ залил уже давно сверху... АВТОР КОЛДАЕТ книга за 200 год скачал с ПРОГБУК если захочешь качать ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 01:11:35 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
И где здесь приведение расстояния к int ? Вот скажи нам (не запуская ide), друг сердечный, чему будет равна (в целых числах) длина гипотенузы прямоугольного треугольника при длине катитов равным 1 ? И какое, при таких условиях, расстояние будет короче: путь по прямой линии (по гипотенузе) или по двум катитам. Лично я - не знаю. Никогда не пытался такие задачи решать в целых числах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 01:12:53 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
botasa111х1 = 1 у1 = 1 начало х2 = 35 у2 = 35 проблема таже ... Ok. Сейчас запущу. Только static'и поубиваю ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 01:16:17 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
botasa111, про ООП начали вы, а не я. И если уж верить википедии, то ООП это парадигма а не набор умных слов. А теперь о вашем алгоритме - вдумайтесь в это условие: Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 01:16:30 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsev, а я пытался именно на моем пример, я ставил ИНТ и ДАБЛ результат тотже ... тоже значение только там целое а там целое и куча знаком после коммы, это РОЛЬ НЕ СЫГРАЛО ... я заметил, но никак не пойму ошибка в ЦИКЛЕ WHILE кажется, но не пойму почему оно так работает криво ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 01:17:07 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
javapecker, дак я вдумался, КОГДА крутиться пока х1 не будет равно х2 и у1 не будет равно у2, то есть пока РАКЕТА не будет иметь те же координаты что и ЦЕЛЬ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 01:19:20 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsev, а в чем проблема статиков, я вот не пойму, реально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 01:21:17 |
|
||
|
Логическая ошибка в простом алгоритме поиска кратчайшего пути.
|
|||
|---|---|---|---|
|
#18+
botasa111, дак я вдумался, КОГДА крутиться пока х1 не будет равно х2 и у1 не будет равно у2, то есть пока РАКЕТА не будет иметь те же координаты что и ЦЕЛЬПлохо вдумался, читай буквально что в условии, вслух ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2013, 01:22:08 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38455395&tid=2128253]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
219ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
78ms |
get tp. blocked users: |
2ms |
| others: | 233ms |
| total: | 573ms |

| 0 / 0 |
