Задачи для тестирования программистов #435150


#0 by pmb
Какие задания можно дать программистам для тестирования на знание общих принципов структурного программирования? Типа сортировки одномерного массива, но это конечно очень просто.
#0 by pmb
Какие задания можно дать программистам для тестирования на знание общих принципов структурного программирования? Типа сортировки одномерного массива, но это конечно очень просто.
#0 by pmb
Какие задания можно дать программистам для тестирования на знание общих принципов структурного программирования? Типа сортировки одномерного массива, но это конечно очень просто.
#1 by Irbis
Зачем тестировать? Бери с испытательным сроком. Чуть что коленом под зад.
#2 by Ненавижу 1С
Дан массив из 99 элементов - целых чисел от 1 до 100, все элементы различны. Соответственно одно значение пропущено. Оптимальным способом найти пропущенное значение.
#3 by DGorgoN
Выборка максимального/минимального числа.
#4 by DGorgoN
а язык программирования указывается?
#5 by pmb
, спасибо. не охота проходной двор устраивать :)
#6 by pmb
1С :)
#7 by Ненавижу 1С
город?
#8 by dimaldinho
Есть два отсортированных массива. Нужно слить в один отсортированный.
#9 by Широкий
Массив отсортирован?
#10 by Lama12
Отсортировать и далее методом половинного деления и сравнения секций вычислить отсутствующее.
#11 by dimaldinho
Нет, "оптимальным образом" = за один цикл
#12 by NS
проще уж тогда попросить написать сортировку слиянием (фоннеймана)
#13 by Lama12
Тогда складывать с переменой знаков.
#14 by Irbis
Зачем?
#15 by Lama12
Бред написал...
#16 by Irbis
5150-сумма элементов массива
#17 by NS
Конечно нет. Сумму посчитать?
#18 by DGorgoN
см . ТзМассив.Сортировать("Числа+"); Для к = 1 по 100 Цикл Если к <> ТзМассив.ПолучитьЗначение(к, "Числа") Тогда   Сообщить(к);   возврат; (или прервать - что угодно) КонецЕсли; КонецЦикла; Я принят? :)
#19 by DGorgoN
ну можно и так
#20 by NS
Врятли...
#21 by Lama12
Сумма арифметическай последовательности до 100 минус сумма массива.
#22 by NS
И десять не принят. Сложность алгоритма значем что такое?
#23 by Ненавижу 1С
Не, ребята в массив и его не надо сортировать совершенно верно сумму и вычесть ее из полной суммы элементов, которая считается просто
#24 by Irbis
Задачей похожей на Эйлера в детстве учитель наказать пытался.
#25 by Irbis
Типа я в угадал?
#26 by DGorgoN
затраты времени и других ресурсов различными алгоритмами, предназначенными для решения одной и той же задачи, при больших объемах входных данных.
#27 by DGorgoN
это не наш метод
#28 by Ненавижу 1С
только сумма 101*100/2=5050<>5150
#29 by DGorgoN
Только вот на практике такие задачи как в редко встречаются. В основном - дано n элементов
#30 by Lama12
Да поняли уже... Задачка с Хомнета. А я то дурак с тех пор и даже не задумывался над оптимальными решениями... а было это года 4 назад.
#31 by Irbis
И правда...
#33 by DGorgoN
с оного?
#34 by Ненавижу 1С
Написать программу определения количества 2*N -значных билетов, у которых сумма первых N десятичных цифр равна сумме N последних десятичных цифр; при этом N -произвольное натуральное число.
#35 by ado
Нет, просто я предлагаю оттуда задачи свистнуть ;-)
#36 by Irbis
Попроси посчитать сумму ряда (2^(2*N))/((N+2)!) с точностью 0.00000000001.
#37 by Lama12
Не надо издеваться... давайте еще калькулятор 48 разрядный попросим написать...
#38 by marvak
Имхо, все эти тесты на сортировки оторваны от реальной работы и не дадут полного представления об уровне кандидата. Тем более в жизни он сортировать будет так ТЗ.Сортировать(...) :) Дай ему лучше какую-нить задачку типа - выбрать такие-то документы из таблицы по такому-то критерию (как он выберет - запросом или нет?), обработать их потом, например заменить одну единицу измерения в табличной части на другую, записать лог обработки в выходной файл (Текстовый или Ексель). Задание простое, но скорость и качество его выполнения дадут примерное представление об уровне кандидадта. или задай вопрос - посчитай в уме, скока будет два в десятой степени и оцени время ответа :)
#39 by Lama12
Там задачи простые... только одна много писанины требует.
#40 by Irbis
А никакой издевки и нет. Даже факториал вычислять при этом не придется
#41 by Ненавижу 1С
экспонента рулит?
#42 by Lama12
Да понятно, просто тогда эта задачка на математику а не на программирование.
#43 by Широкий
Процедура ОпределитьПропущенноеЧисло(МассивДанных)    СуммаМассива=0;        РазмерМассива=МассивДанных.Количество;    ОбщаяСумма=РазмерМассива+1;        Для сч=1 По РазмерМассива Цикл        СуммаМассива=СуммаМассива+МассивДанных[сч-1];        ОбщаяСумма=ОбщаяСумма+сч;    КонецЦикла;        Сообщить("Пропущено число "+(ОбщаяСумма-СуммаМассива)); КонецПроцедуры
#44 by NS
Слишком заезжена она была в конце восьмидесятых. Все знают как решать.
#45 by pmb
сейчас приходят люди, которые н знаю что такое массив, структура и объект. Так что пусть сортируют ;) Что касается прикладной части - то тут будет что спросить. Хочу оценить еще общий уровень
#46 by pmb
нет. Это далеко за пределами нерезиновой ;)
#47 by pmb
->
#48 by Ненавижу 1С
ОбщаяСумма=РазмерМассива+1; это зачем? и вообще зачем в цикле вычислять ОбщаяСумма ?
#49 by Lama12
Спроси названия алгоритмов сортировки. Мне пока больше двух никто не называл. И то 2 назвала девочка с красным дипломом профильным.
#50 by Irbis
Нет.
#51 by Irbis
Это на сообразительность.
#52 by DGorgoN
Ты офигел - 2 в десятой степени - такого даже я на память сразу не вспомню :)
#53 by Ненавижу 1С
давай колись
#54 by DGorgoN
Опять таки алгоритмов куча и я по ним курсовик писал в колледже - но щас прсои, помню толкьо пузырька
#55 by Широкий
Так.. что первое пришло на ум Вот упрощенно Процедура ОпределитьПропущенноеЧисло(МассивДанных)    РазмерМассива=МассивДанных.Количество;    ПропущенноеЧисло=РазмерМассива+1;        Для сч=1 По РазмерМассива Цикл        ПропущенноеЧисло=ПропущенноеЧисло+сч-МассивДанных[сч-1];    КонецЦикла;        Сообщить("Пропущено число "+ПропущенноеЧисло); КонецПроцедуры
#56 by DGorgoN
Вообще про щасливые билетики можно тоже вспомнить
#57 by Lama12
Еще вопрос - что такое индексы. Плюсы и минусы их использования. Может ли индекс занимать памяти меньше чем данные которые он индексирует. Чем отличается просто индекс от кластерного индекса.
#58 by Irbis
Подели N+1 член ряда на N. Это общий коэффициент домножения зависящий от N. Когда следующий рассчитанный член ряда меньше точности вычисления прекращаются
#59 by Ненавижу 1С
два в десятой каждый программист должен знать 1024 без перебора знают?
#60 by Lama12
Вот... пузырька вспоминали 20%...
#61 by pmb
это уже БД :)
#62 by DGorgoN
и чем?
#63 by Ненавижу 1С
ну да, но факториал приходится считать я думал что-то новое
#64 by DGorgoN
А что самое распространённое тогда?
#65 by Lama12
Самое распространенное - незнаю...
#66 by Lama12
65+ Т.е. такое ответ.
#67 by pmb
Кому интересно вспомнилось есть две переменные, необходимо поменять в них значения не используя третьей переменной
#68 by Irbis
Не приходится. Рассчитанный предыдущий результат умножается на коэффициент. Какой факториал?
#69 by ДенисЧ
Какого типа переменные? :-)
#70 by Ненавижу 1С
поменяй две строковые переменные
#71 by pmb
вообще идеальны задачи на работу с ТЗ, массивами, структурами. Но вспомнить сходу не могу ничего
#72 by DGorgoN
см - какой самый распространённый алгоритм?
#73 by pmb
как ?
#74 by Ненавижу 1С
предыдущий результат умножается на коэффициент - это и есть факториал
#75 by pmb
а = 4 в = 5 нужно а = 5 в = 4
#76 by Ненавижу 1С
это вопрос к
#77 by Irbis
В лоб ведь сам факториал не считается!
#78 by Lama12
Теория туту -
#79 by DGorgoN
старая фишка :)
#80 by ДенисЧ
X := X XOR Y Y := X XOR Y X := X XOR Y
#81 by DGorgoN
X=X+Y; Y=X-Y; X=X-Y; как то так тоже можно
#82 by ДенисЧ
ТОлько переполнение вылетит :-)
#83 by Волшебник
Поиск критического пути на графе. Не совсем простая, но и не очень сложная рекурсивная функция.
#84 by DGorgoN
Ну это уже ограничение платформы, а не алгоритма (с) :)
#85 by DGorgoN
расшифруй "критического"
#86 by ДенисЧ
А с лёту оцени её сложность :-)
#87 by marvak
2 в 8 = 256 а там дальше уже легко сообразишь :)
#88 by Волшебник
Читай теорию графов.
#89 by Irbis
Проверь умеет ли упрощать логические выражения (правило Де Моргана, карты Карно и т. п.)
#90 by AndreyLan
Для тестирования программиста 1С лучше дать более-или менее реальную задачу (например из задачника на специалиста по платформе), а уж потом посмотреть насколько правильно он решит ее с методологической точки зрения, так и по механизмам внутренней реализации, ИМХО.
#91 by Волшебник
Тут есть определения и описание метода "эстафеты"
#92 by DGorgoN
спасибо - уже прочитал, вспомнил
#93 by Aprobator
гы - даны два периода Нач1 Кон1, Нач2 Кон2 - найти пересечение оптимальным способом )
#94 by Aprobator
дык речь не про 1С вроде.
#95 by AndreyLan
В сказано про 1С
#96 by Aprobator
опс - не увидел.
#97 by Irbis
, в не более чем язык реализации.
Тэги: Математика и алгоритмы
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С