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

Открыта

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

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

— У меня для тебя шикарная новость. Вот тебе задания для закрепления полученных навыков. Выполняй их каждый день, и твои навыки будут расти с неимоверной скоростью. Они специально разработаны для выполнения их в 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 чисел и выводит их в убывающем порядке.
Комментарии (275)
  • популярные
  • новые
  • старые
Для того, что бы оставить комментарий вы должны авторизоваться
12 октября, 12:46
Вывести числа в обратном порядке Уже бесить начинает!!! Не числа в обратном порядке а список
Dister18 уровень, Москва
18 октября, 15:26
А разница в чем? Добавьте числа в список и выведите в обратном порядке. Они могли с тем же успехом написать просто "введите числа и выведите в обратном порядке", но уровень о списках, потому так.
24 октября, 18:22
В том, что список в обратном порядке - это его элементы от конца к началу, а числа в обратном порядке - это от большего к меньшему.
Dister18 уровень, Москва
24 октября, 18:32
Так всем плевать на ваш список. У вас задача ввести числа, отсортировать от большего к меньшему и вывести. Список уже внутренняя реализация, которую вам никто и никогда не будет озвучивать в задании.
28 октября, 17:35
Вы задачу решали? Валидатору надо как раз вывести список в обратном порядке а не числа.
Dister18 уровень, Москва
28 октября, 18:51
А как иначе вывести их в обратном порядке, кроме как добавить в хранилище?
29 октября, 07:17
К чему этот вопрос??? Вы поняли суть моего возмущения по поводу описания задачи? В задаче сказано "ввести с клавиатуры 10 чисел, заполнить ими список, а затем — вывести их в обратном порядке" - судя по контексту вывести надо числа в обратном порядке, а валидатор ждет вывод списка в обратном порядке.
Гринів Ігор18 уровень, Киев
29 октября, 16:27
хмм.. Как по мне ваши претензии не обоснованы, чтоб понять то как вы написали нужно чтоб в задаче было написано так: "ввести с клавиатуры 10 чисел, заполнить ими список, а затем — вывести их в обратном порядке убывания"
30 октября, 05:12
Суть претензии в том, что данную трактовку можно понять и так и так. И судя по плюсам моего комментария - я не один такой.
Гринів Ігор18 уровень, Киев
30 октября, 10:19
как по мне это банальная невнимательность, я тоже попадался на том что не правильно понял суть предложения, но поразмыслив понимал что не прав я, а не описание. Обратите внимание на последнее в списке задание "В убывающем порядке" там почти тоже задание, только конкретно указано что нужно числа вывести в убывающем порядке. Одной из задач таких описаний, это научить вас как технического специалиста понимать суть написанного точно и не додумывать от себя. Это тут обучение проходит в игровой манере, вы играетесь с задачками, читаете прикольные диалоги, в реальной технической документации все сухо и конкретно. Вот и заставляют вас в игровой манере привыкать что задача есть задача, никто ее разжевывать не собирается и понимать ее нужно конкретно.
Вадим13 уровень
1 ноября, 21:53
Тоже не понимаю суть претензий. Написано, вывести числа в обратном порядке - значит в противоположном порядке от того, в каком они были изначально. Где тут вообще сказано про сортировку?
2 ноября, 04:59
Задача 1704: Переверни массив 1. Создать массив на 10 чисел. 2. Ввести с клавиатуры 10 чисел и записать их в массив. 3. Вывести на экран элементы массива в обратном порядке, каждое значение выводить с новой строки. Задача 1709 (та самая о которой идет речь в моем комментарии): Вывести числа в обратном порядке 1. Ввести с клавиатуры 10 чисел и заполнить ими список. 2. Вывести их в обратном порядке. Каждый элемент - с новой строки. 3. Использовать только цикл for. Задачи по сути одинаковые, описание разное. В первом варианте нет никаких сомнений в том, что выводить надо элементы массива. Во втором варианте меня сбивает с толку (судя по плюсам комментария не только меня) фраза "Вывести ИХ (числа) в обратном порядке. Обратный порядок элементов списка и обратный порядок чисел - для меня не одно и тоже ИМХО! P.s. Дело не в невнимательности а в восприятии. У меня большой опыт работы техническим специалистом, в адекватном ТЗ подобного быть точно не может. P.p.s ВАДИМ: Про сортировку здесь никто и не говорит, можно и без нее вывести числа в порядке убывания.
Вадим13 уровень
3 ноября, 10:13
Андрей, я понял, что речь про 1709, но не могу понять, почему Вас сбивает с толку фраза "в обратном порядке". Здесь все достаточно однозначно - ввели в одном порядке, выводим - в обратном, то есть наоборот. Числа, которые вы добавляете в список, разве не являются его элементами? Я вот не вижу разницы между обратным порядком следования элементов списка и обратным порядком следования чисел списка. Речь тут именно про порядок следования. Если бы авторы задачи хотели, чтоб вы вывели их от большего к меньшему, то написали бы отсортировать список, либо вывести в порядке возрастания (убывания), как это уже было в прошлых задачах
6 ноября, 06:45
"Я вот не вижу разницы между обратным порядком следования элементов списка и обратным порядком следования чисел списка" В задачи нет ни слова про "обратный порядок чисел списка", только обратный порядок их (чисел). То, что авторы могли написать иначе - так к этому и претензия. Я привел пример двух задача в которых задание однотипное но сформулировано по разному.
Даниил8 уровень
6 ноября, 18:15
Поддерживаю Андрея. Ещё не решал задачи, но прочитав условие человек может обоснованно сказать что просят вот что: Пример ввода: 23, 34, 45 Пример вывода: 54, 43, 32 "Вывести число в обратном порядке", к примеру 123, можно расценить как 321
Вадим13 уровень
6 ноября, 20:25
их - это те самые 10 чисел, которые были помещены в список. Или там про что-то еще речь идет, кроме тех 10 чисел, о чем можно было бы сказать "их"? Таким образом, мы считаем их элементами массива/списка. А если они являются элементами массива/списка, то чем эта формулировка отличается от Вывести на экран элементы массива в обратном порядке, с которой, как Вы сказали выше, нет никаких сомнений?
Вадим13 уровень
6 ноября, 20:29
Даниил, то, что Вы написали называется Вывести цифры числа в обратно порядке, либо Вывести набор символов, содержащий цифры числа в обратном порядке.
13 сентября, 11:01
А если в последней задаче отсортировать массив стандартным Arrays.sort, а потом просто вывести от последнего до первого, пройдет валидацию?
13 сентября, 11:08
Не сработало :((( Надо, говорит, сортировать по убыванию, а не по возрастанию. Не смог я обмануть валидатор ;)
Harry13 уровень, Москва
16 октября, 21:48
Тут суть не в том, чтобы использовать стандартные функции. надо написать алгоритм самому. Насколько я понял в условии как бы говориться: "На собеседовании иногда требуют показать знания алгоритмов, так что вперед !".
Alexandr Grigoryev13 уровень
16 октября, 22:51
Золотые слова)
Sergey_Vladimirovich32 уровень, Минск
7 сентября, 16:49
В задаче семейная перепись можно отлично обойтись одним конструктором, просто передавая в качестве отца и матери пустые ссылки...
Anatoliy13 уровень
11 октября, 22:05
да. Жаль валидатор этого мнения не разделяет :-( Причем конструкторы объявлены оба, как в задании, но если не вызывать первый конструктор, то задача не проходит тестирование
seregadb13 уровень, Минск
6 августа, 17:55
Когда создаю ArrayList<String> и заполняю через цикл с помощью Scanner первый элемент получается пустым, а когда c помощью BufferedReader reader все нормально. Почему?
Марина18 уровень
23 июля, 21:57
Прошу помощи!!! В задаче "Не компилируется задача про котиков" переопределяется метод toString (об этом нам говорит @Override - аннотация), с помощью Идеи проследила, что при вызове метода printList() она сразу "подхватывается". Вай???? Как? И почему??? Если действовать согласно пословице "бла-бла-бла... дай рыбу - будет сыт день, дай удочку... бла-бла..", то согласна и на то и на другое. Заранее спасибо!
Марина18 уровень
26 июля, 23:06
Спасибо большое за ответ!!!!! Прям огромное спасибо!
Philip J.40 уровень, Днепр
27 июля, 02:17
пожалуйста, обращайтесь, если что :)
Дмитрий18 уровень, Санкт-Петербург
31 июля, 16:30
При вызове метода printList() происходит вывод на экран:
System.out.println(CATS.get(i));
который сразу же, как вы выразились, "подхватывает" метод toString(). Дело в том, что метод System.out.println() по умолчанию подразумевает приведение к строке неявным вызовом метода toString() родительского класса Object, то есть:
// так видим мы:
System.out.println(CATS.get(i));
// что происходит на самом деле:
System.out.println(CATS.get(i).toString());
В нашем случае мы переопределяем этот метод для вывода (диагностики, отладки - чего угодно) необходимых нам данных, вот и получается такое неявное "подхватывание".
Марина18 уровень
1 августа, 07:56
Спасибо)))))
21 июля, 20:35
Больше всего намучался с мин - макс массивами.... это жесть
Максим27 уровень
20 июля, 18:52
Вот намучился с оберточным Boolean в задаче про перепись, просто слов нет! Полчаса, наверное, не мог вдуплить, почему валидатор не принимает решение :)
Artem10 уровень, Санкт-Петербург
9 мая, 22:09
"Для дедушек я добавил бонусные задания повышенной сложности" чет не заметил повышенной сложности ...все просто же.
RellePro9 уровень
5 июня, 15:05
Последняя задачка с ньюансом - оказывается обратной сортировки int[] нема в стандартной библиотеке , в том смысле , что есть Arrays.sort(copyArray); А вот обратной сортировки подобного формата нет. А так да -повышенная сложность не ощущается.
=Duk3=16 уровень, Минск
25 июня, 14:11
цикл for наше всё) никакой там повышенной сложности
Валерий15 уровень, Санкт-Петербург
27 апреля, 23:10
Немного флуда. После решения задач задался вопросом. Кто нибудь знает примеры софта, написанного на яве для десктопов? Есть примеры и на винду и на макось? Понимаю что это не совсем десктопный язык, но все же.. Слышал, тот же майнкрафт написан на яве.
Андрей23 уровень, Москва
3 мая, 13:48
Самый яркий пример вы назвали - maincraft. Все моды к нему пишутся так же на java. О других примерах можно почитать тут: клац
Artem10 уровень, Санкт-Петербург
9 мая, 22:12
Джава язык общего назначения, но из за ее медлительности и прожорливости, прилоежния на десктоп пишутся редко. Напримере того же майнкрафта, есть стандартная версия Java, достаточно тяжелая игра по системным треованиям. А есть новая версия на C++, которая раз в 5 производительнее. Java это серверный язык по большей части. И для интерпрайз приложений, где важная надежность, а не скорость. Про андроид молчу, там хоть и основа Джавы, но все совсем другое да и Котлин сейчас там рулит.
WildDisk17 уровень, Владивосток
28 мая, 04:39
ну вообще не мало, по сути все являются кроссами до кучи используют и в инструментах для аудита безопасности в качестве gui оболочек, те же Burp Suite и Armitage
RellePro9 уровень
4 июня, 15:42
Котлин и java очень похожи , знаешь java - разберешься и с котлином c минимальным временем на адаптацию
Атари15 уровень, Москва
23 апреля, 13:41
А может, они нас просто тренируют