Меняем функциональность

  • 5
  • Недоступна
В архиве пылится старенькая решённая задача. В ней нужно вводить строки, а затем, после введения пустой строки, все буквы в строках конвертировались в верхний регистр. Модернизируйте задачу: программа должна построить новый список. Если в строке чётное число букв, строка удваивается, если нечётное – утраивается. Ввод строк оставляем без изменений.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (108)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Harsiyanin8 уровень, Назрань
позавчера, 16:08
Заострите внимание: удваивать и утраивать нужно не элементы списка, а значения элементов списка!
Андрей10 уровень, Москва
24 января, 16:11
Мне кажется авторы намудрили с описание. Во-первых, совершенно непонятно, зачем предлагалась первая задача. Я тупо стер код старой задачи и решал только новую, Валидатор всё пропустил. И фраза об удвоении строк звучит двусмысленно. Я сначала удваивал по-вертикали. Потом посмотрел на картинку и понял, что надо удлинять строку вширь.
Станислав Китаев10 уровень, Москва
16 февраля, 15:50
простая тренировка на умение читать чужой код
Harsiyanin8 уровень, Назрань
позавчера, 15:13
Код новой задачи можно построить на основе уже показанной. По факту - там не много чего нужно переделать.
Александр GoProшкин10 уровень, Чехов
20 января, 11:57
Решил с циклами, для любого числа повторов.
for (int i = 0; i < strings.size(); i++) {
    String string = strings.get(i);
    int n;
    String s = "";
    if (string.length() % 2 == 0) n = 2;
    else n = 3;

    for (int j = 0; j < n; j++) {
        s = s + string +" ";
    }
    resultStrings.add(s);
}
Юрий12 уровень, Кишинёв
18 января, 15:23
Решил быстро но +" "+ не учёл, 2 попытки
zubov.evg16 уровень, Харьков
18 января, 07:42
Немного не понял, Нужно слова в ДРУГОЙ список переносить или работать с тем списком что нам дали?
15 января, 09:38
Сначала написал что-то с i++; и i+2;, а потом забыл убрать, через это столько попыток ушло...
Юрий12 уровень, Кишинёв
18 января, 15:24
К стати в начале я тоже с этого начал, потом заметил что лишнее
Виктор17 уровень, Казань
6 января, 10:55
В этом задаче нужно подправить описание задачи и требование. В описании говориться "Потом программа строит новый список", а в требованиях этого условия нет. Соответственно, валидатор принимает в качестве правильного решение, если просто пройтись по первому списку, сравнивая длину строк, и выводить результат
Asad Vice19 уровень, Минск
13 декабря 2019, 09:30
Как вариант, убрать всё лишнее, оставить один цикл for в котором перебираем чёт/нечёт и в зависимости от результата сравнения выводим 2 или 3 раза строку. println и print с пробелами в помощь.
Иван17 уровень, Киев
29 ноября 2019, 16:11
Пропишите более четко условие задачи. Сделал более сложный вариант( с увеличением количества ячеек и выводом одинаковых в одну строку), а потом еще долго не мог понять, почему не проходит валидацию.
Anna9 уровень, Москва
21 ноября 2019, 21:53
import java.lang.StringBuilder; создаём объект класса StringBuilder. Пользуемся его методом .append(строка), чтобы склеивать строки. Этот метод эффективней использует память, чем String'овое "+". После того, как получили удвоенную/утроенную строку, добавляем её в список: resultStrings.add(sb.toString()); //sb - объект StringBuilder