|
1 / 1 / 0
Регистрация: 16.10.2015
Сообщений: 27
|
|
Проверить и прокомментировать вариант решения тестового задания при приёме на работу16.10.2015, 21:07. Показов 7519. Ответов 87
Метки нет (Все метки)
Приветствую!
Сделал тестовое задание, которое попросил сделать один работодатель, на что получил отказ и комментарий о том, что "оно сделано неидеально". Как вы думаете, что могло там не понравиться, чтобы знать на будущее? Это работодатель такой капризный или я такой кривой программер, что там действительно сделано так нехорошо? Несколько шероховатостей я вижу, но могли ли они быть основанием для отказа? Ниже привожу свои варианты решения задач.
0
|
|
| 16.10.2015, 21:07 | |
|
Ответы с готовыми решениями:
87
Проверить и прокомментировать вариант решения тестового экзаменационного задания по теории C++ и Си Тесты, вопросы и задания при приеме на работу Какого уровня тестовые задания при приеме на работу ребят без опыта |
|
Модератор
|
|||
| 13.11.2015, 10:35 | |||
Ещё, можно, наверное, в онлайн-компиляторе проверить. Там тоже C++14.
0
|
|||
|
42 / 42 / 17
Регистрация: 25.04.2014
Сообщений: 499
|
|
| 13.11.2015, 10:53 | |
|
a_shy, а вы, если не секрет, на middle задание делаете?
0
|
|
|
1 / 1 / 0
Регистрация: 16.10.2015
Сообщений: 27
|
|
| 30.12.2015, 13:53 [ТС] | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 16.10.2015
Сообщений: 27
|
|
| 30.12.2015, 13:54 [ТС] | |
|
Еще один "предновогодний" тест.
Задание. Необходимо реализовать алгоритм решения задачи «Как из мухи сделать слона». Реализацию необходимо предоставить в виде исходного кода консольного приложения. Приложение необходимо реализовать на языке C++ под одну из операционных систем Linux или Windows. Реализация приложения должна проходить в соответствии c технологией разработки TDD. Стиль написания кода должен соответствовать Camel notation, код логик и тестов должен быть качественно закомментирован. Любые оптимизации решения считаются преимуществом. В пояснительной записке к решению необходимо указать, какому шаблону проектирования оно соответствует. Постановка задачи Дано исходное и конечное слово равной длины. Длина исходных слов не ограничена. Необходимо составить цепочку слов от исходного слова до конечного. Каждое следующее слово в цепочке может отличаться от предыдущего только одной буквой. Исходное, конечное и все промежуточные слова должны состоять из одинакового количества букв. Все используемые слова обязательно должны содержаться в заранее определенном словаре. На вход в программу подается: 1. Путь к текстовому файлу, в котором указано начальное и конечное слово. На первой строке указано начальное слово, на второй строке конечное 2. Путь к файлу, который содержит словарь. Слова в словаре указаны по одному на каждой строке. В словаре слова могут быть разной длины. На выходе программа должна вывести в консоль путь от исходного слова к конечному, по одному слову на одной строке. Пример Начальное слово: КОТ Конечное слово: ТОН Словарь: КОТ ТОН НОТА КОТЫ РОТ РОТА ТОТ Решение КОТ ТОТ ТОН Решение приложено. Просьба раскритиковать по максимуму.
0
|
|
|
27 / 26 / 6
Регистрация: 02.02.2014
Сообщений: 96
|
||||||
| 30.12.2015, 14:16 | ||||||
0
|
||||||
|
1 / 1 / 0
Регистрация: 16.10.2015
Сообщений: 27
|
||
| 30.12.2015, 14:48 [ТС] | ||
|
0
|
||
|
27 / 26 / 6
Регистрация: 02.02.2014
Сообщений: 96
|
|
| 30.12.2015, 14:50 | |
|
О, не вчитывался, думал стандартный вариант дали - с разной длинной.
0
|
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||
| 30.12.2015, 16:28 | ||
|
0
|
||
|
1 / 1 / 0
Регистрация: 16.10.2015
Сообщений: 27
|
||
| 30.12.2015, 17:11 [ТС] | ||
|
"Уважаемый XXXXX! Извините за задержку с ответом! Благодарим Вас за проявленный интерес к компании ХХХХХ! Нам приятно, что специалист с таким опытом и знаниями обратился в нашу компанию! Мы рассмотрели Вашу кандидатуру, но, к сожалению, в данный момент у нас нет вакансии, идеально соответствующей Вашим знаниям и профессиональному опыту. С Вашего позволения мы хотели бы сохранить Ваше резюме в нашей базе на случай, если у нас появится подходящая вакансия." (это при том, что я им 2 раза делал тестовое задание и ходил на конкретную вакансию, которая первоначально "мне подошла"). К счастью, самое последнее я еще не отправил. Жду вашего фидбэка.
0
|
||
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||
| 30.12.2015, 19:27 | ||
|
По заданию пару слов все же скажу. Для такой задачи я ожидаю функцию, которая принимает структуру данных, подходящую для поиска, начальное слово и конечное слово. Функция либо возвращает результат (путь), либо сообщает почему его нельзя найти (например, бросает исключение). В этом случае использование функции простое и понятное: 1) обработка входных данных 2) вызов функции 3) обработка результата или ошибки. Вместо этого предлагается использовать неудобный стейтфул объект Finder: 1) обработка входных данных 2) создание объекта Finder 3) вызов метода 4) обработка кода возврата без возможности узнать причину ошибки 5) вывод результата предложенным методом без возможности сделать с ним что-нибудь другое. Как следствие, крайне затруднительно покрыть тестами результат работы алгоритма. Есть и другие замечания. Вычислительная функция необоснованно сделана рекурсивной. Где точка входа в приложение (main)?
2
|
||
|
1 / 1 / 0
Регистрация: 16.10.2015
Сообщений: 27
|
||
| 30.12.2015, 22:00 [ТС] | ||
0
|
||
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||
| 31.12.2015, 05:22 | ||
|
1
|
||
|
|
|
| 31.12.2015, 07:06 | |
|
Мельком код глянул, еще такой общий совет - по чаще задавай сам себе вопросы типа "что открытие файла делает в функции, которая разбирает строку?". При правильных ответах код станет намного лучше.
2
|
|
|
1 / 1 / 0
Регистрация: 16.10.2015
Сообщений: 27
|
|
| 31.12.2015, 09:15 [ТС] | |
|
0
|
|
|
|
||||||
| 31.12.2015, 13:30 | ||||||
|
В данной задаче можно применить паттерн компоновщик и трактовать сиволы в скобках и отдельные символы как лексемы. Вот я набросал несложный код. На чистоту не претендует, однако суть метода показывает:
Кликните здесь для просмотра всего текста
0
|
||||||
|
261 / 209 / 99
Регистрация: 13.12.2015
Сообщений: 1,098
|
||
| 31.12.2015, 14:04 | ||
|
да и потом +,- как меня учили это операции. оператор - это, как правило, одноместная операция, например: из мат логики 1. and - двуместная операция 2. or - 2 мест операция 3. not - оператор а вот круглые скобки разве операторы?
0
|
||
|
Комп_Оратор)
|
||||||
| 01.01.2016, 15:41 | ||||||
![]() Не по теме: С прошедшим Вас и всех присутствующих. :) Добавлено через 1 час 32 минуты a_shy, У меня есть подозрение, что либо я ещё не отошёл от праздника, либо у Ваших работодателей он круглый год. Либо они провоцируют Вас на самостоятельное мышление с выводом о некорректности условия. Возможно я, действительно чего-то не понял и посему писать больше не буду, пока не увижу Ваше мнение.
0
|
||||||
|
1 / 1 / 0
Регистрация: 16.10.2015
Сообщений: 27
|
||
| 03.01.2016, 11:01 [ТС] | ||
|
0
|
||
|
Комп_Оратор)
|
|||||
| 03.01.2016, 12:17 | |||||
|
(B+A+D+(C+A+B)+C) после сортировки должно дать: (A+B+C+(A+B+C)+D) Ну то есть сама то группа внутри себя сортируется, но не перемещаема на внешнем уровне вложенности, так как символом (элементом) не является. Виной всему фраза: Если это авторы сознательно такое сочинили, то Браво! Они оторвались по полной. Тут тогда их расчёт (интрига), - а на которой минуте Вы пошли уточнять. Ведь если группу считать
0
|
|||||
|
1 / 1 / 0
Регистрация: 16.10.2015
Сообщений: 27
|
||
| 03.01.2016, 12:35 [ТС] | ||
|
0
|
||
| 03.01.2016, 12:35 | |
|
Не взяли на работу из-за неправильно выполненного тестового задания, посмотрите? Задание при приёме на работу
Задача при приеме на работу Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал.
Оно само - говорит.
Кто слышит тот слышит.
|
Оказывается, Unreal Engine позволяет качество на порядки выше, чем было в Lineedge
Etyuhibosecyu 05.07.2026
Жаль, конечно, что я не узнал об этом, пока Lineedge существовала, а то бы Noname2331 написал, что волки превращаются в пиксельную кашу, а я бы его попросил скачать какую-нибудь бриллиантовую или Pro. . .
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|