Вырезаем середину

  • 6
  • Недоступна
Дан двумерный массив chars. Тебе нужно в методе main заменить все внутренние элементы на дефис (минус).
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (36)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Jarda
Уровень 7, Teplic, Германия
31 июля, 20:44
Дополните пожалуйста в требованиях, что бы код работал с массивами любых размеров, а то очень многие, как и я, решили этот код под конкретный "данный" в задаче массив, и решение не засчитывается.
Kenor
Уровень 20, Москва, Russian Federation
25 июля, 11:51
Как тут уже правильно упоминалось, нельзя использовать одни цифры в условии. /*for (int i = 1; i < 3; i++) { for (int j = 1; j < 5; j++) { chars[i][j] = '-'; } }*/ вот такой код не будет зачитан. Нужно использовать .length и условия к нему.
Александра Ивчик
Уровень 14, Rome, Italy
23 июля, 14:16
Мне интересно, почему я не могу эту задачу сдать на сайте. Пишет ошибку в строке, которая прописана разработчиками задачи. Какого шницеля?
HexTechRevolver
Уровень 13, Санкт-Петербург, Russian Federation
12 июля, 08:07
Имхо в готовом решении избыточная сложность, моё решение выглядит компактнее (с моей не профессиональной стороны) Профессионалы - опровергните? for (int i = 1; i < chars.length - 1; i++) { for (int j = 1; j < chars[i].length - 1; j++) { chars[i][j] = '-'; } }
Alexandr Kalinin
Уровень 3, Russian Federation
13 мая, 19:26
for (int i = 0; i < 4; i++) { chars[1][i+1]= '-' ; chars[2][i+1]='-' ; } Почему не работает то? В идее все пашет.
Alex
Уровень 9
19 апреля, 08:18
Что за дичь? for (int i = 1; i < chars.length -1; i++) { for (int j = 1; j < chars.length +1; j++) { chars [i][j]='-'; } } Почему не верно???
Alex
Уровень 9
19 апреля, 08:25
в правильном ответе го8н0код какой-то... или нет?
Александр
Уровень 15, Минск, Беларусь
25 апреля, 14:28
Как минимум участок кода с j < chars.length+1 не корректен, такой код не универсален, ты в переборе столбцов отталкиваешься от количество строк в массиве, но при изменении количества столбцов или строк твой алгоритм сломается, должна быть привязка конкретно к количеству элементов в строке j < chars[i].length-1. Может у тебя вывод в консоль такой как требуется, но это хорошо, что валик такое не пропускает.
Валерий
Уровень 9, United States
3 апреля, 14:34
1- никого не смутило, что в примере вторая строка g h i j k l, а в самом массиве {'j', 'h', 'i', 'j', 'k', 'l'} ( два раза 'j'. 2- дописал такой код, за то сам. for ( int i=*; i <*;i++){ for ( int j = *; j<*;j++) chars [i][j]= '-'; } по итогу я получил то, что требуют из условий, но задача не принимается.
Stas S
Уровень 50, Гродно, Беларусь
28 января, 08:29
Прекрасный пример отвратительного ТЗ.
Виктор Шефф
Уровень 68, Москва, Россия
4 декабря 2021, 14:36
Странно почему верное решение такое сложное. Всё ведь можно сделать проще - заменяем значения на знак -
chars[i][j] = '-';
А вложенными циклами не трогаем нулевые индексы и последние индексы. Т.е. получается, что цикл for для i и для j выглядит одинаково:
(int i = 1; i < chars.length - 1; i++)
Виталий
Уровень 31, Киев, Украина
3 февраля, 15:36
Аплодирую стоя :)
Alex
Уровень 9
19 апреля, 08:08
блин, думал примерно так же, но не думал что можно вычесть 1 из chars.length
Alex
Уровень 9
19 апреля, 08:16
Только на второй цикл chars.length надо ставить не -1, а +1
Qunjavi qunari в Java Inquisition
15 июля, 16:24
@Alex, Наверное лучше "chars[i].length - 1" прописать вместо плюсования
BenderRB
Уровень 10, Kyiv, Ukraine
15 ноября 2021, 18:00
всего та скопировать цикл в цикле удалить лишнее несколько изменений "-1", "=" и писать нужно '-', а не "-" ... по приколу глянул правильный ответ и удивился от за мудрёности