|
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 381
|
|
Рекурсивный метод для решения задачи01.07.2017, 04:20. Показов 2072. Ответов 13
Метки нет (Все метки)
Есть 2 точки координат, допустим расстояние между ними 200 метров.
Нужно добавить точки по 25 метров между этими 2-мя точками. И записать все точки в массив по порядку (от 1 до 2 точки). p1______________________________________ ___________________________________p15 p1___p2___p3___p4___p5___p6___p7___p8___ p9___p10___p11___p12___p13___p14___p15__ _p16___p17 p9 = center(p1, p17) p5 = center(p1, p9) p3 = center(p1, p5) p7 = center(p5, p9) p2 = center(p1, p3) p4 = center(p3, p5) p6 = center(p5, p7) p8 = center(p7, p9) так же для правой части и записать в массив точки по порядку : p1,p2,p3,p4,p5... Все это дело должно решатся рекурсией. Кто понимает в рекурсиях помогите)
0
|
|
| 01.07.2017, 04:20 | |
|
Ответы с готовыми решениями:
13
Метод решения задачи с jr на CRUD Подскажите литературу для решения задачи!
|
|
164 / 170 / 139
Регистрация: 28.11.2016
Сообщений: 301
|
||||||
| 01.07.2017, 11:18 | ||||||
|
Кликните здесь для просмотра всего текста
Смотрите код. На выходе массив с точками между указанными, расстояние больше или равно 25 метров. Приведено два решения, на базе класса Point и просто на базе int значений. На печать выводится номер позиции точки.
0
|
||||||
|
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 381
|
|
| 03.07.2017, 02:19 [ТС] | |
|
v777779, явно это ответ на вопрос.
Просто вопрос не тот). Перепишем задачу: есть 2 точки координат (прямой отрезок). Нужно разбить его на отрезки по меньше (конкретно < 20 метров). К координатам я не умею добавлять расстояние к примеру, 20 метров от точки, (если вы знаете как добавить 20 метров от точки зная направление, поделитесь, это очень облегчит работу), зато я умею находить центр между 2мя точками. И потому решил делить отрезки на под отрезки и т.д. пока отрезок не будет меньше 20 метров и записать все точки в массив. Это явно решается рекурсией, но еще так же важно записать полученные точки по порядку в массив.
0
|
|
|
1296 / 470 / 151
Регистрация: 24.08.2011
Сообщений: 2,249
|
||||||
| 03.07.2017, 19:20 | ||||||
Сообщение было отмечено powowstal как решение
Решение
powowstal, возможно...
1
|
||||||
|
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 381
|
|
| 05.07.2017, 01:04 [ТС] | |
|
Керра, так писал но на выходе элементы стоят не по порядку
0
|
|
|
1296 / 470 / 151
Регистрация: 24.08.2011
Сообщений: 2,249
|
|
| 05.07.2017, 06:58 | |
|
powowstal, не поняла. Моя программа выдает по порядку... Не поняла ваше сообщение...
0
|
|
|
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 381
|
|||
| 05.07.2017, 19:27 [ТС] | |||
|
Керра, ваш код работает правильно, раньше у меня не те данные на вход поступали.
Можете прокомментировать логику ? -
0
|
|||
|
1296 / 470 / 151
Регистрация: 24.08.2011
Сообщений: 2,249
|
|
| 05.07.2017, 19:34 | |
|
Насчет первого: мы делим массив на два отдельных массива, у каждого из которых есть 2 элемента. То есть, мы берем середину, и эта середина является вторым элементом для левого массива, и первым элементом для второго массива.
Насчет второго: когда мы соединяем массивы, то мы вспоминаем о том, что тогда мы продублировали серединку. Так что надо удалить серединку из левого (от правого остается одна). Также, нужно удалить нулевой и последний элементы, потому что мы вставляем их внутрь уже готовых двух элементов. Насчет points.addAll. Сначала мы соединяем левую и правую часть, затем удаляем лишние элементы, и добавляем левую (уже соединенную с правой) часть в изначальный массив, на место с индексом 1. То бишь, если у нас был массив (0, 200), то вставится на вторую (индекс 1) позицию, и получится (0, 50, 100, 150, 200). К примеру.
1
|
|
|
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 381
|
||||||
| 05.07.2017, 19:36 [ТС] | ||||||
|
Керра, Изрядно помучившись вот что вышло
0
|
||||||
|
1296 / 470 / 151
Регистрация: 24.08.2011
Сообщений: 2,249
|
|
| 05.07.2017, 19:40 | |
|
О господи боже мой ну и стиль у вас...
Добавлено через 23 секунды Ща проверю... Добавлено через 1 минуту Киньте пожалуйста весь код, а не только main. MyPoints мне тоже нужно... У меня IDE сама отформатирует ваш ужас... Я извиняюсь... Добавлено через 15 секунд Киньте пожалуйста весь код, а не только main. MyPoints мне тоже нужно... У меня IDE сама отформатирует ваш ужас... Я извиняюсь...
0
|
|
|
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 381
|
||||||
| 05.07.2017, 19:55 [ТС] | ||||||
|
Керра,
0
|
||||||
|
1296 / 470 / 151
Регистрация: 24.08.2011
Сообщений: 2,249
|
|
| 05.07.2017, 19:59 | |
|
Я говорю ВЕСЬ код нужен. Я знаю, что класс описан выше. Он мне тоже нужен для проверки.
0
|
|
|
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 381
|
||||||
| 05.07.2017, 21:36 [ТС] | ||||||
|
Керра, ok 10 мин создам новый проект и залью на гид
Добавлено через 1 час 12 минут Керра, на гид не судьба. В новом проекте код не запускается (библиотеки есть), видимо с настойками карты или ключ АПИ или студия обновилась криво. Скину архивом с гугла. https://drive.google.com/open?... m1mR3ZnRDQ Так всегда, как нужно что-то быстро сделать все перестает работать( Добавлено через 3 минуты Керра, оу, забыл проект на андроиде. вот весь код:
0
|
||||||
|
1296 / 470 / 151
Регистрация: 24.08.2011
Сообщений: 2,249
|
|
| 06.07.2017, 07:20 | |
|
powowstal, запустить не могу, но в целом формула правильная. Только концы не будут добавляться. И массив не чистится нигде - если второй раз с другими данными запустить, он в тот же будет добавлять, мешанина будет.
0
|
|
| 06.07.2017, 07:20 | |
|
Помогаю со студенческими работами здесь
14
Что нужно знать для решения данной задачи? Разработать программу на языке Java для решения следующей задачи:
Метод Гаусса для решения системы уравнений. Перевести с Pascal Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|