Сборник итоговых заданий для программистов

Открыта

— Здорово, боец!

— Здравия желаю, капитан Бобров!

— У меня для тебя шикарная новость. Вот тебе задания для закрепления полученных навыков. Выполняй их каждый день, и твои навыки будут расти с неимоверной скоростью. Они специально разработаны для выполнения их в Intellij IDEA.

4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
Вывести числа в обратном порядке
Вы же знаете, что задачи можно решать разными способами? Да конечно знаете. Но в этой конкретной задаче мы попросим вас вспомнить о цикле for, и совершать манипуляции именно с его помощью. А сделать нужно вот что: ввести с клавиатуры 10 чисел, заполнить ими список, а затем — вывести их в обратном порядке.
4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
Перестановочка подоспела
Игры со списками — лучшее времяпрепровождение! Реклама так себе получается? Пожалуй, лучшая реклама средства языка программирования — его частое применение. Рекламируем списки, решая задачу: задаем числа m и n, печатаем n строк и заполняем ими список. После этого совершаем незатейливую манипуляцию: переставляем m первых строк в конец списка
4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
Минимаксы в массивах
В жилмассиве Трещина — всего 20 домов, но их номера проставляются от фонаря. Получается, конец и начало Трещины формируются случайным образом. Потому как так интереснее и непредсказуемее! Пишем мини-эмулятор Трещины: определим его начало и конец. Для этого запихнем жилмассив в массив, заполним его номерами домов, и найдем среди них наибольший и наименьший.
4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
Это конец
Давайте создавать список строк, вводя их с клавиатуры, пока не надоест. Надоесть может в любой момент, и на этот случай нужно придумать специальное слово. Пускай этим словом будет «end», то есть «конец». А зачем нам эти строки, спросите вы. А мы ответим: затем, чтобы добавлять их в список, а затем выводить на экран.
4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
Обратный отсчёт
Мы за мир и против терроризма, но обратный счетчик все-таки напишем. Наша программа должна вести отсчёт от 30 до 0, а в конце будет «Бум!». Не беспокойтесь, «Бум!» будет мирным, беззвучным, текстовым. Программа должна уменьшать число 10 раз в секунду. Для того чтобы вставить в программу задержку, воспользуйтесь функцией Thread.sleep(100);
4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
Семейная перепись
Попробуем создать программу для семейной переписи. Для этого пишем класс Human с полями имя(String), пол(boolean), возраст(int), отец(Human), мать(Human). Для тренировки создайте объекты и заполните их данные так, чтобы получилось два дедушки, две бабушки, отец, мать, трое детей. Выведите объекты на экран.
4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
Переставь один модификатор static
Статическим может быть не каждый! И если вдруг модификатор static попадет туда, где ему не следует быть, может статься что угодно! В коде, который вы увидите перед собой, щелкнув по этой задаче, так и произошло: один static оказался не в том месте. Помогите программе скомпилироваться, переставьте модификатор туда, где он должен быть! Спасибо.

— Те задания были для духов. Для дедушек я добавил бонусные задания повышенной сложности. Только для старослужащих.

4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
Не компилируется задача про котиков
Первый постулат межгалактической железной дороги гласит: если у котов возникли проблемы, бросайте всё, и решайте их. Ибо котики по природе своей не должны иметь проблем. Итак, у нас есть программа, которая выводит данные про котов на экран после введения их с клавиатуры. Но в ней что-то не так, и она не компилируется. Исправьте ошибку!
4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
Меняем функциональность
В архиве пылится старенькая решённая задача. В ней нужно вводить строки, а затем, после введения пустой строки, все буквы в строках конвертировались в верхний регистр. Модернизируйте задачу: программа должна построить новый список. Если в строке чётное число букв, строка удваивается, если нечётное – утраивается. Ввод строк оставляем без изменений.
4
Задача
Java Syntax,  7 уровень,  12 лекция
Недоступна
В убывающем порядке
Упорядоченые изоморфы с планеты Линейный Хаос любят сортировать и принимают в свои ряды тех, кто хорошо умеет это делать. Вы можете возразить, что не собираетесь иметь с ними дело. Не получится: изоморфы часто проводят собеседования в ИТ-компании. Не игнорируем: пишем программу, которая вводит с клавиатуры 20 чисел и выводит их в убывающем порядке.
Комментарии (315)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Евгений9 уровень
12 часов назад
Пока что самый конченный уровень. Благодаря ему я начал ненавидеть программирование и занятия превратились в рутину. Хрень конченная.
Oleh Leinov14 уровень
8 июня, 11:54
boolean sex this.sex ? "мужской" : "женский" Ах вы грязные сексисты!
Alex_330298738 уровень, Москва
14 июня, 12:36
XD мужики = true!
Dmitry Potamoshnev19 уровень, Москва
4 июня, 18:47
Упал в осадок, что при решении задачи "Семейная перепись" за меня уже на половину написан класс и полностью написан метод toString. Почему не дана возможность самим всё написать с нуля?
Alex_330298738 уровень, Москва
14 июня, 12:37
потому что некоторые "написан меток toString." еще не проходили =)))
Максим13 уровень, Санкт-Петербург
28 мая, 11:05
Я, наверное, лютый извращенец, но использовал в последней задаче ArrayList, занес в него обычный массив, сделал с библиотеки Collections sort и reverse и перенес значения обратно в массив array... По идее не шибко-то это и правильно, но использовать пузырьковый метод рука не поднимается, всяко быстрее получится...
Alex_330298738 уровень, Москва
14 июня, 12:38
валидатор пропустил? я побоялся нарушать условия...
Максим13 уровень, Санкт-Петербург
14 июня, 13:44
Со свистом)
Евгений9 уровень, Санкт-Петербург
23 мая, 18:26
1. Класс java.util.Arrays, его метод sort(); 2. Переворачиваем. Уметь переворачивать надо: Проходим по циклу до середины (length/2) и меняем местами первый на последний по формуле: array.length - i - 1, предварительно сохранив первую половину во временную переменную.
Barset16 уровень, Санкт-Петербург
12 мая, 12:03
В задаче "Перестановочка подоспела" при ошибке цикла с перестановкой валидатор в перечне пунктов с ошибками выдает ошибку считывания N и M, а также ошибку заполнения списка, даже если реально ее там нет. Имейте ввиду.
Yaroslav Tikhonov14 уровень, Санкт-Петербург
26 апреля, 12:21
Последняя оказалась самой потной) лень было делать сортировки пузырем или выбором, поэтому сделал через такой костыль:
for (int x = 0; x < array.length; x++) arr[x] = array[x];
Arrays.sort(arr, Collections.reverseOrder());
for (int x = 0; x < arr.length; x++) array[x] = arr[x];
Чтоб заставить Вам это работать, надо нагуглить с каким типом объектов работает Collections.reverseOrder()
Yaroslav Tikhonov14 уровень, Санкт-Петербург
26 апреля, 12:33
а можно просто умножить массив на -1, сделать сортировку sort(), и снова умножить на -1
Liliput8 уровень
26 апреля, 06:35
В задаче "Семейная перепись" пол задал типом Booalen. Все работало и выводило в Idea, но валидатор сайта не пропускал, говорил проверить что в классе Human есть переменная пола. Поменял на booalen - все ок.
Павел17 уровень
30 апреля, 15:02
boolean - примитивная переменная Boolean - класс-обёртка для примитивной переменной типа boolean
Romsby20 уровень
10 апреля, 17:43
Неужели меня до конца курса будут преследовать мотивирующие надписи "Вы решили задачу лучше чем 2% учеников"
Alex_330298738 уровень, Москва
14 июня, 12:40
XD не обращай внимание, главное правильное решение. Я думаю там учитывается несколько факторов, интересно стиль кода учитывается?
Sergey Kaushly8 уровень, Москва
18 июня, 14:09
я думаю учитывается только количество попыток
Alex_330298738 уровень, Москва
среда, 12:57
не, даже с первой попытки бывало лучше 2% XD
Sergey Kaushly8 уровень, Москва
среда, 13:57
ну, это значит, что 2 процента всех пользователей решили ее не с первой попытки, а со второй или 3. Получается, что в этой задачи ты как 98% учеников, но лучше 2%
Евгений11 уровень, Харьков
3 апреля, 16:39
Несколько задач мне не дались, к паре из ним, к стыду своему, даже не знал, как подступиться. Остался осадочек. Надеюсь, смогу полирнуть пробелы в навыках/знаниях, начав изучать книги/cтатьи/видосы. Спустя многие годы я смог привить себе дисциплину делать дело средней тяжести в течении длительного времени (рутинная работа, лекции жр, задачи изи и часть медиума). Раньше я вообще был аццким бездельником и сливался через 3 дня всяческих своих начинаний. Но вот проявить максимальную концентрацию, максимально напрячь свой мозг я по-прежнему не в состоянии (или ленюсь). Нет вот этого желания брать вызовы и выполнять их (сродни тому как Шерлок Холмс брался за раскрытие преступлений). Многочасовый поиск ошибок вызывает скорее скуку и раздражение, нежели какой-то азарт или еще что-либо из того спектра чувств, что испытывают программисты. Не мое или просто не распробовал? Ребята, особенно те, кому изначально не нравился кодинг, а потом полюбился - поделитесь своим мнением. Еще заметил, что у многих присутствующих желание оптимизировать свой код, проявить креатив. Наверное, это и есть люди, которые с большей степенью вероятности станут разработчиками. Возможно, это люди, которые уже имели опыт программирования. Возможно, и те, и те. Пока что у меня лишь только желание отделаться малой кровью. Как бы то ни было, буду продолжать. И дело даже не в оплаченной на год подписке. Альтернатив своему пути особо не вижу. Возможно, вскоре сам найду ответы на свои вопросы)
Sergey Vladimirovich9 уровень, Москва
5 апреля, 12:39
у меня те же чувства возникают когда что то не понимаю...
VN20 уровень
9 апреля, 13:39
I HATE PROGRAMMING I HATE PROGRAMMING I HATE PROGRAMMING IT WORKS! I LOVE PROGAMMING
Olga Enaldieva15 уровень
3 июня, 13:32
Евгений, я упрощаю себе работу. А знаете как? Черчу на бумаге схемы алгоритмов, или на словах по пунктам расписываю, что именно мне нужно сделать, чтобы достичь результата. Спустя какое-то время появляется привычка раскладывать все по полочкам прямо в голове, а не на листе бумаги. Надеюсь, я хоть как-то вам помог.
Евгений11 уровень, Харьков
3 июня, 18:10
Спасибо. Да вот как раз только что начал читать книгу Сэджвика по алгоритмам и структурам данным на java, может, поможет привить алгоритмическое мышление, ну и видеть скрытые возможности там, где ты их доселе не видел)
Alex_330298738 уровень, Москва
14 июня, 12:42
то, что я успел прочитать в книге уже давно закончилось, теперь только лекции javarush и google... для решения задач пока хватает...
Alex_330298738 уровень, Москва
14 июня, 12:57
это называется писать псевдокод. Очень полезная привычка. Чтобы понять, что нужно написать, надо это схематично изобразить на бумаге... а потом по пунктам реализовывать... Собственно, условия к задачам так и написаны...