Тестовые задания (тестовые задания при приеме на работу)

Модератор: Модераторы разделов

Drr
Сообщения: 3

Тестовые задания

Сообщение Drr »

Добрый день,
у кого-нибудь были инетерсные тестовые задания при приеме на работу по программированию на C, C++ под Linux??

Можно не стисняться и постать примеры :)
Спасибо сказали:
Аватара пользователя
oav
Бывший модератор
Сообщения: 296

Re: Тестовые задания

Сообщение oav »

На С++:

написать класс, который из себя представляет массив фиксированного размера элементов любого типа. Имхо задание является сложнее чем кажется после первого прочтения.

В качестве бонуса - написать юнит тесты к созданному классу.
Спасибо сказали:
Аватара пользователя
d_Sun
Сообщения: 291

Re: Тестовые задания

Сообщение d_Sun »

Drr писал(а):
17.07.2006 12:27
Добрый день,
у кого-нибудь были инетерсные тестовые задания при приеме на работу по программированию на C, C++ под Linux??

Можно не стисняться и постать примеры :)


Именно под Linux у меня заданий не было ;) А так, в основном, было реверс строки, atoi() написать, найти ошибки в коде... Кароче ничего сложного... Да, один раз попросили рассказать как fork() работает :)
Моя подпись сильно длинная :)
Спасибо сказали:
Аватара пользователя
rws
Сообщения: 206
ОС: Ubuntu 7.10

Re: Тестовые задания

Сообщение rws »

Не совсем по С/С++. Нужно было уболтать гипотетического клиента потратить на написание софта $10,000 вместо $7,000 :)
AMD Athlon 64 X2 4200+/2GB RAM/250GB HDD/GeForce 7600GT 256MB/ZyXEL P-660RT EE
Спасибо сказали:
sdk
Бывший модератор
Сообщения: 210

Re: Тестовые задания

Сообщение sdk »

О! Кстати, oav, не подкинешь ссылку какую где можно почитать про юнит-тесты?
Что это такое и с чем едят. В общих чертах я, конечно, представляю...
До сих пор ими не пользовался, но хочется новых знаний :).
Серьезность - это способ сделать простые вещи сложными.
Если много знать - устанут глаза. Если много спать - то нет.
Нас никому не сбить с пути - нам пофигу куда идти.
:-)
Спасибо сказали:
Drr
Сообщения: 3

Re: Тестовые задания

Сообщение Drr »

Всем спасибо за ответы,
может у кого-нибудь встречались заковыристые задания, связанные с массивами, со строками, с производительностью и прочие извраты ??
Спасибо сказали:
Аватара пользователя
oav
Бывший модератор
Сообщения: 296

Re: Тестовые задания

Сообщение oav »

sdk писал(а):
17.07.2006 14:08
О! Кстати, oav, не подкинешь ссылку какую где можно почитать про юнит-тесты?
Что это такое и с чем едят. В общих чертах я, конечно, представляю...
До сих пор ими не пользовался, но хочется новых знаний :).

sure!

http://en.wikipedia.org/wiki/Unit_test
http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks + документация поставляемая с этими библиотеками.

Drr писал(а):
17.07.2006 14:21
Всем спасибо за ответы,
может у кого-нибудь встречались заковыристые задания, связанные с массивами, со строками, с производительностью и прочие извраты ??

А с чего вы решили что будут именно заковырестые задачи? Как раз, например, мой пример тестового задания может достаточно легко отобразить уровень владения С++ вплоть до экспертного.

А по заковыристым хорошее место тут:
http://www.rsdn.ru/Forum/Default.aspx?group=etude

и еще есть книжка "Трюки для программистов" как-то так.
Спасибо сказали:
sdk
Бывший модератор
Сообщения: 210

Re: Тестовые задания

Сообщение sdk »

sure!

http://en.wikipedia.org/wiki/Unit_test
http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks + документация поставляемая с этими библиотеками.

Спасибо! :)
Серьезность - это способ сделать простые вещи сложными.
Если много знать - устанут глаза. Если много спать - то нет.
Нас никому не сбить с пути - нам пофигу куда идти.
:-)
Спасибо сказали:
Аватара пользователя
povert.org
Сообщения: 43

Re: Тестовые задания

Сообщение povert.org »

Drr писал(а):
17.07.2006 14:21
Всем спасибо за ответы,
может у кого-нибудь встречались заковыристые задания, связанные с массивами, со строками, с производительностью и прочие извраты ??


Ага! ВООТ----->

Задания для разработки на С

1) Создать приложение демон-процесс, прослушивающий и обрабатывающий запросы к TCP порту, выдающий в результате обработки запроса HTML-контент взятый из базы данных mysql или oracle, выполняющий перекодирование выдаваемого контента в желаемую/затребованную кодировку, которая устанавливается либо в самом запросе к демон-процессу, либо в настройках его инициализационных параметров.

2) Создать прототип библиотеки для выполнения строковых операций, таких как поиск вхождения, выделение подстрок, конкатенация, перекодирование строк и т.п. для одно и мультибайтных кодировок, а также, операций с базой данных. Использовать структуры для представления строк и стандартные для юникс/линукс интерфейсные библиотеки доступа к бд mysql или oracle и перекодировки типа mb_string или icode, recode.

3) Создать приложение демон-процесс порождающий другие процессы или собственные экземпляры, осуществляющие запросы к базе данных mysql или oracle.

4) Создать приложение, осуществляющее HTTP запросы к некоторым ресурсам/ресурсу и разбирающее полученный контент, выделяя значения полей заголовка ответа и тело, а также. осуществляющее сохранение данной информации в базе данных mysql или oracle перекодировав в заданную кодировку полученный контент.
Slackware Linux 10.1 on Dell latitude c600 pIII-1Ghz (laptop) && Slackware Linux 10.0 on AMD 2000+ (table PC) -- more on povert.org Днепропетровск, Украина

+ webcam !!!!
Спасибо сказали:
Аватара пользователя
d_Sun
Сообщения: 291

Re: Тестовые задания

Сообщение d_Sun »

povert.org, это на собеседовании? Сомневаюсь...
Моя подпись сильно длинная :)
Спасибо сказали:
Аватара пользователя
Bruce
Сообщения: 647
Статус: beat maniac
ОС: Debian GNU/Linux 4.0

Re: Тестовые задания

Сообщение Bruce »

как-то не в тему последние задания ;)
Samsung r40 (t5500, 1.5G ram, 80 gb hdd)

koolkhel's lj
Спасибо сказали:
Аватара пользователя
povert.org
Сообщения: 43

Re: Тестовые задания

Сообщение povert.org »

d_Sun писал(а):
20.07.2006 11:14
povert.org, это на собеседовании? Сомневаюсь...

Это задание дома решать ;) Я его даже решил ;) Правда мне сказали, что я тупой отморозок и решать его нужно было на C++ а не на Си, и вообще решено слабенько, типа ну мы бы взяли тебя, может быть... Если ты все выучишь и учиться хорошо будешь и т.п. и на зарплату в раза два меньшую, то тех пор пока ты не осознал...

Кстати решенное (к сожалению на Си) задание я прикреплю. Мне помогло для общего развития и не жалею ;) решал сутки целые ;) Потому как многие темы остались глубоко в прошлом.

А вообще там тема была про качалку на Си (очень мог-бы этот пример помочь)

PS. Как то файл два раза послался и не хочет в FF удаляться, тут вообще как-то с фаерфоксом плохо работает этот форум :(
Slackware Linux 10.1 on Dell latitude c600 pIII-1Ghz (laptop) && Slackware Linux 10.0 on AMD 2000+ (table PC) -- more on povert.org Днепропетровск, Украина

+ webcam !!!!
Спасибо сказали:
Аватара пользователя
d_Sun
Сообщения: 291

Re: Тестовые задания

Сообщение d_Sun »

Тут был не нужный пост... :)
Моя подпись сильно длинная :)
Спасибо сказали:
Аватара пользователя
povert.org
Сообщения: 43

Re: Тестовые задания

Сообщение povert.org »

Ой да ну вас... Нифига непойму что-то мелькает в брузере, цифры буквы, а тут еще из-за цены трафика картинки все выключены. Короче беспредел я не знаю...

Так и заикой стать можно
Slackware Linux 10.1 on Dell latitude c600 pIII-1Ghz (laptop) && Slackware Linux 10.0 on AMD 2000+ (table PC) -- more on povert.org Днепропетровск, Украина

+ webcam !!!!
Спасибо сказали:
Drr
Сообщения: 3

Re: Тестовые задания

Сообщение Drr »

Всем спасибо за ответы, но меня больше интересуют задачки на 10-15 минут, на 5-10 строчек...
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Тестовые задания

Сообщение elide »

для примера именно "собеседовальных" задач (из того, что сразу нашлось под рукой)...
1) Что делает следующий С++ код?

Код: Выделить всё

struct A {
   A(const volatile void*);
};
char f(A);
int f(...);
template <class T>
struct Test {
   static const int value = (sizeof(f(*(T*)0)) == sizeof(char));
};
2) Дан связный список. Проверить, нет ли в нем циклов.
3) Сделать то же самое с двоичным деревом.
4) Даны указатели на два элемента в двоичном дереве, найти их общего родителя
слава роботам!
Спасибо сказали:
Аватара пользователя
golodnyj
Сообщения: 172

Re: Тестовые задания

Сообщение golodnyj »

elide писал(а):
22.07.2006 11:42
для примера именно "собеседовальных" задач (из того, что сразу нашлось под рукой)...
1) Что делает следующий С++ код?

Код: Выделить всё

struct A {
   A(const volatile void*);
};
char f(A);
int f(...);
template <class T>
struct Test {
   static const int value = (sizeof(f(*(T*)0)) == sizeof(char));
};
2) Дан связный список. Проверить, нет ли в нем циклов.
3) Сделать то же самое с двоичным деревом.
4) Даны указатели на два элемента в двоичном дереве, найти их общего родителя


Клевые задания )
Спасибо сказали: