Удваиваем слова

  • 5
  • Недоступна
Пишем программу-эхо. Она удваивает всё, что слышит. Вернее всё, что попало в список из 10 строк. Для этого в программе-эхо создаем, собственно список из 10 слов (вводим с клавиатуры строки и заносим их в список) и метод doubleValues, который, собственно, удваивает слова по определенному принципу. Результат эхо выводим на экран. Ничего сложного.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (297)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Денис Ferondo 8 уровень, Yalta
27 ноября, 17:40
решил задачу и посмотрел правильное решение.. ну как же там всё просто..а мы мозг ломаем))
AlexanderS 10 уровень
19 ноября, 12:39
Решил нестандартным способом без i%2==0 и без i+=2. На экран всё выводится как и требуется - по два одинаковых слова из исходного списка, каждое на своей строке. Но у валидатора своя логика и решение не засчитал. Делал я в цикле через String s = list.remove(0) и добавлял в удвоенный лист doubleList.add(s) 2 раза. Есть подозрение, что валидатор не принимает решение потому как в итоге начальный список list оказывается пустой _____ Update: Подтверждаю свои подозрения, если исходный список не трогать (не удалять элементы), то решение принимается валидатором. Но в таком случае, составители задачи ограничили нас в способах её решения и не прописали явным образом, что модифицировать исходный лист/список нельзя. Имейте это ввиду при решении данной задачи
Мари 10 уровень, Москва
16 ноября, 09:44
Я ещё не все понимаю:( долго мучилась с этой простой задачей. Удвоить строки-то удвоила, но на печать, что только не выводила. Поняла, что решение близко, когда вывела (list) 10 строк в каждой из которых столбец с удвоением. потом додумалась до вывода (I): System.out.println(list.get(i)) и проверка прошла. Правда я не поняла зачем нужен result... И еще, зачем в return было написано null? Сделала как в одном из коментов return list, ну а потом его элементы на печать.
Evgeny Vdovin 8 уровень
20 ноября, 20:34
Там где null - надо было заменить на список который будет возвращаться из метода. result - список в который возвращается список из метода. Т.е. логика задачи такая. Мы создаем список из 10 строк, передаем его в метод. В методе создаем еще один список, с помощью цикла проходимся по переданному списку и в только что созданный список по два раза копируем каждую строку. Возвращаем из метода новый список. Возвращается он как раз в список result. А потом с помощью цикла выводим списоr result.
Александр 8 уровень
25 октября, 11:06
решил добавлением элементов списка в этот же список цикл i+=2 list.add(i, list.get(i)); с выводом массива тупил 🤪 System.out.println(result); [alfa, alfa, beta, beta, gamma, gamma] в комментах доперло что надо выводить так System.out.println(result.get(i));
Виктор 11 уровень, Москва Expert
7 октября, 19:53
А мне сразу в голову коллекции пришли, про которые нам ссылки кидали перед задачами. Думал, что просто продублирую элементы в списке циклом for, а затем опробую сортировку Collections.sort(list). Короче, вот этот код внутри метода даёт нужный результат, но валидатор ворочает нос:
for (int i = 0; i < 10; i++) {
    list.add(list.get(i));
}
Collections.sort(list);
То есть мы ещё раз наполняем список уже имеющимися элементами, получаем: 1234567891012345678910 А затем сортируем список с помощью соответствующего метода в коллекции и получаем: 1122334455667788991010 Но увы, валидатор меня расстроил и я решил топорно: 1. В методе создаю дополнительный список, в который циклом for просто каждый элемент из основного списка загоняю по два раза в новый (meh). -- Канал в телеге про Java и Android, в котором есть книги для скачивания, статьи, видеоуроки, чат для обмена знаниями и моральной поддержки : ) Давайте учиться вместе: @LetsCodeIt p. s. Мой личный телеграм канал вкатывальщика в прогерство: @SefoNotasi
DAS 8 уровень, Москва
29 октября, 14:32
а как это стать expert?:)))
Виктор 11 уровень, Москва Expert
30 октября, 19:08
Точных алгоритмов пока никто не знает, но говорят, что администрация сейчас вручную раздаёт лычки за общую активность на курсе: помощь, полезные комментарии, советы и т. д. -- tlgrm: LetsCodeIt / SefoNotasi
Ilya 8 уровень, Самара
27 ноября, 19:46
ArrayList<String> result = doubleValues(list); что значит это выражение подскажи?раньше такого не встречал нигде
Виктор 11 уровень, Москва Expert
суббота, 00:33
Это выражение означает, что мы Списочному Массиву result хотим присвоить результат работы метода doubleValues, который вызывается с переданным в его параметры списком ( list).
Ilya 8 уровень, Самара
суббота, 12:29
это типа мы список проинициализировали методом получается?
Виктор 11 уровень, Москва Expert
воскресенье, 19:40
Да, всё верно, инициализация с помощью метода.
Warhazard 16 уровень, Минск
3 октября, 10:52
У кого не проходит 3-е условие потому, что метод должен работать для списков любой длинны, попробуйте в условии цикла метода doubleValues поставить меньше либо равно.
vzubkeviсh 15 уровень, Санкт-Петербург
3 октября, 06:47
очень кривое условие, однако, почитав комменты разобрался, но немного заспойлерил себе решение
Никита Никитенко Сыч в Сычевальне
2 октября, 16:43
Условие: Считай 10 строк... Метод doubleValues должен удваивать элементы списка. Валидация: Убедись, что метод doubleValues умеет работать со списками любой длины, а не только 10.
Cahangir Qanizade 10 уровень
воскресенье, 19:19
Да , об этом речи не было , аж возмутило. По причине этого решил только со второго раза. Думаю нужно было просто в требованиях написать об этом .
Станислав 19 уровень, Москва
30 сентября, 15:17
В doubleValues создаете новый ArrayList. Проходите циклом по list, добавляете дважды результат в коллекцию.
Andrew Trots 15 уровень, Минск
21 сентября, 15:42
Норм так сразу дать хардовую задачу где этот метод используется, а потом медиум задачу) наверное для лучшего усвоения и закрепления