Наиболее интересные вопросы на собеседованиях
От: PlusMyTwitterFace  
Дата: 10.06.12 10:53
Оценка:
Приветствую.

Какие самые интересные вопросы на собеседованиях за всё время вашего опыта Вы слышали? Или какие наиболее интересные / необычные задаёте Вы на собеседованиях?

Интересуют, прежде всего, вопросы на вакансию программиста C/C++, а также алгоритмические задачи.

Заранее благодарю.
Re: Наиболее интересные вопросы на собеседованиях
От: leff61  
Дата: 10.06.12 11:57
Оценка:
Здравствуйте, PlusMyTwitterFace, Вы писали:

PMT>Приветствую.


PMT>Какие самые интересные вопросы на собеседованиях за всё время вашего опыта Вы слышали? Или какие наиболее интересные / необычные задаёте Вы на собеседованиях?


PMT>Интересуют, прежде всего, вопросы на вакансию программиста C/C++, а также алгоритмические задачи.


PMT>Заранее благодарю.


На форуме уже много таких тем, там и интересные вопросы и задачки и всё что душе угодно
Re: Наиболее интересные вопросы на собеседованиях
От: Балбес  
Дата: 10.06.12 12:26
Оценка: +2 -1
Здравствуйте, PlusMyTwitterFace, Вы писали:

PMT>Интересуют, прежде всего, вопросы на вакансию программиста C/C++, а также алгоритмические задачи.


На собеседованиях нужно не задачки решать, а о жизни говорить.

Самые интересные вопросы, это, например, показать какой-нибудь сайт и спросить, что вы о нем думаете в плане удобства использования. Вот тут будет интересно. По ответу можно очень многое узнать о человеке.

А с моей стороны вопрос собеседующему — что вам лично нравится в компании, что вас держит здесь. По ответу тоже можно многое понять.
Re[2]: Наиболее интересные вопросы на собеседованиях
От: antigravity blog
Дата: 10.06.12 12:36
Оценка:
Здравствуйте, Балбес, Вы писали:

Б>что вам лично нравится в компании, что вас держит здесь


1. Почему вы выбрали именно нашу компанию?
Вы идиот(ка), да? Я, как и все кандидаты до меня и после меня, направил резюме в десяток мест. Где устроюсь быстрее и выгоднее — там и хорошо.

http://www.rsdn.ru/forum/humour/4433515.flat.aspx
Автор: AndrewN
Дата: 26.09.11
Re: Наиболее интересные вопросы на собеседованиях
От: тс  
Дата: 10.06.12 14:27
Оценка:
Здравствуйте, PlusMyTwitterFace, Вы писали:

PMT>Приветствую.


PMT>Какие самые интересные вопросы на собеседованиях за всё время вашего опыта Вы слышали? Или какие наиболее интересные / необычные задаёте Вы на собеседованиях?


PMT>Интересуют, прежде всего, вопросы на вакансию программиста C/C++, а также алгоритмические задачи.


PMT>Заранее благодарю.


Мне больше всего по c++ понравилось:
Написать пример программы, которая скомпилируется C-компилятором, но не скомпилируется C++-компилятором. Ответ лежит на поверхности, не требует знания никаких нюансов. Я не смог ответить)
Re[2]: Наиболее интересные вопросы на собеседованиях
От: PlusMyTwitterFace  
Дата: 10.06.12 14:33
Оценка:
тс>Написать пример программы, которая скомпилируется C-компилятором, но не скомпилируется C++-компилятором. Ответ лежит на поверхности, не требует знания никаких нюансов. Я не смог ответить)

Знаю лишь два варианта:

— При помощи препроцессора (макрос __cplusplus)
— С учётом того, что sizeof(/* any character literal */) == sizeof(char) равно true только в C++, но не в C

Есть какие-то ещё?
Re[2]: Наиболее интересные вопросы на собеседованиях
От: PlusMyTwitterFace  
Дата: 10.06.12 14:35
Оценка:
тс>Написать пример программы, которая скомпилируется C-компилятором, но не скомпилируется C++-компилятором. Ответ лежит на поверхности, не требует знания никаких нюансов. Я не смог ответить)

А, не скомпилируется? Тогда извиняюсь.

Ну, вариантов много ведь:

— Необходимость явного каста из void*
— Рекурсивный вызов main
— В C89/C90 нельзя достигать конца функции main без return
— Использование ключевых слов C++

И т.д.
Re[2]: Наиболее интересные вопросы на собеседованиях
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 10.06.12 14:39
Оценка:
Здравствуйте, тс, Вы писали:

тс>Мне больше всего по c++ понравилось:

тс>Написать пример программы, которая скомпилируется C-компилятором, но не скомпилируется C++-компилятором. Ответ лежит на поверхности, не требует знания никаких нюансов. Я не смог ответить)

С99 считать за C-компилятор? Тогда restrict и динамические массивы.
А так можно просто приведение типов где-то опустить
Re[3]: Наиболее интересные вопросы на собеседованиях
От: PlusMyTwitterFace  
Дата: 10.06.12 14:40
Оценка:
Из того, что ещё вспомнилось:

— В C++ нельзя вызывать функции без их прототипа или определения (в том числе, и без включения соответствующих заголовочных файлов)
— variable-length arrays из C99 и, например, _Noreturn из C11
Re[4]: Наиболее интересные вопросы на собеседованиях
От: PlusMyTwitterFace  
Дата: 10.06.12 14:45
Оценка:
А вообще можно посмотреть сюда:

Annex C (informative)
Compatibility [diff]
C.1 C++ and ISO C [diff.iso]


Например:

3.6
Change: Main cannot be called recursively and cannot have its address taken

Re: Наиболее интересные вопросы на собеседованиях
От: minorlogic Украина  
Дата: 10.06.12 15:12
Оценка:
Не думаю , что открою секрет а вопрос показался веселым.

"как перемножить 3 на 7 если у нас нет операции умножения ?" Долго не мог понять в каком контексте задавался вопрос, потом уже понял что это была проверка знаний на битовые сдвиги и т.п.
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[3]: Наиболее интересные вопросы на собеседованиях
От: тс  
Дата: 10.06.12 16:21
Оценка:
Здравствуйте, PlusMyTwitterFace, Вы писали:

тс>>Написать пример программы, которая скомпилируется C-компилятором, но не скомпилируется C++-компилятором. Ответ лежит на поверхности, не требует знания никаких нюансов. Я не смог ответить)


PMT>- Использование ключевых слов C++


Ответ не требовал особых знаний нюансов стандарта, поэтому был про использование ключевых слов как идентификаторов. Например int main(){int class; return 0;}
И кстати он тоже сработает для других расширений C, например objective c.
Re[3]: Наиболее интересные вопросы на собеседованиях
От: Centaur Россия  
Дата: 10.06.12 16:28
Оценка: 5 (2)
Здравствуйте, PlusMyTwitterFace, Вы писали:

тс>>Написать пример программы, которая скомпилируется C-компилятором, но не скомпилируется C++-компилятором. Ответ лежит на поверхности, не требует знания никаких нюансов. Я не смог ответить)


PMT>Знаю лишь два варианта:


PMT>- При помощи препроцессора (макрос __cplusplus)


Это чит.

PMT>- С учётом того, что sizeof(/* any character literal */) == sizeof(char) равно true только в C++, но не в C


Это никак не гарантируется.

PMT>— Рекурсивный вызов main


Это UB, но не обязано проверяться.

PMT>— В C89/C90 нельзя достигать конца функции main без return


Это неверно. C89:5.1.2.2.3 Program termination:

1: If the return type of the main function is a type compatible with int, a return from the initial call to the main function is equivalent to calling the exit function with the value returned by the main function as its argument;(*10) reaching the } that terminates the main function returns a value of 0.[…]


PMT>— Необходимость явного каста из void*

PMT>— Использование ключевых слов C++

А вот это решения. Причём с ключевыми словами — простейшее и, вероятно, ожидаемое.

int main(int class, char** throw) {}
Re[4]: Наиболее интересные вопросы на собеседованиях
От: PlusMyTwitterFace  
Дата: 10.06.12 16:40
Оценка:
C>Это чит.

Ну да, но смотря с какой точки зрения посмотреть.

PMT>>- С учётом того, что sizeof(/* any character literal */) == sizeof(char) равно true только в C++, но не в C


C>Это никак не гарантируется.


Как это?

Annex C (informative)
Compatibility [diff]

2.14.3
Change: Type of character literal is changed from int to char
Rationale: This is needed for improved overloaded function argument type matching. For example:
int function( int i );
int function( char c );
function( ’x’ );
It is preferable that this call match the second version of function rather than the first.
Effect on original feature: Change to semantics of well-defined feature. ISO C programs which depend
on
sizeof(’x’) == sizeof(int)
will not work the same as C++ programs.
Difficulty of converting: Simple.
How widely used: Programs which depend upon sizeof(’x’) are probably rare.


C>Это UB, но не обязано проверяться.


Да, точно, извиняюсь.

C>Это неверно. C89:5.1.2.2.3 Program termination:


C>

1: If the return type of the main function is a type compatible with int, a return from the initial call to the main function is equivalent to calling the exit function with the value returned by the main function as its argument;(*10) reaching the } that terminates the main function returns a value of 0.[…]


Прочитал об этом в C Programming: A Modern Approach — K. N. King
ISBN-10: 0-393-97950-4
ISBN-13: 978-0-393-97950-3

У самого стандартов C89/C90 нет. У вас не найдётся?
Re[5]: Наиболее интересные вопросы на собеседованиях
От: Centaur Россия  
Дата: 10.06.12 17:33
Оценка:
Здравствуйте, PlusMyTwitterFace, Вы писали:

PMT>>>- С учётом того, что sizeof(/* any character literal */) == sizeof(char) равно true только в C++, но не в C


C>>Это никак не гарантируется.


PMT>Как это?


PMT>Change: Type of character literal is changed from int to char
PMT>Effect on original feature: Change to semantics of well-defined feature. ISO C programs which depend on
PMT>sizeof(’x’) == sizeof(int)
PMT>will not work the same as C++ programs.


Глупости. Предположим платформу типа PDP-10, с минимально адресуемым словом в 36 бит и 36-битными же регистрами общего назначения. Тогда 1 == sizeof(char) == sizeof(int), несмотря на то, что int и char — разные типы и что 'x' в C имеет тип int, а в C++ — char.
Re[2]: Наиболее интересные вопросы на собеседованиях
От: A.Lokotkov Россия http://www.linkedin.com/pub/alexander-lokotkov/a/701/625
Дата: 10.06.12 17:38
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>"как перемножить 3 на 7 если у нас нет операции умножения ?" Долго не мог понять в каком контексте задавался вопрос, потом уже понял что это была проверка знаний на битовые сдвиги и т.п.


Если есть сложение и вычитание, то как-то так, видимо:
3 * 7 => 3 * ( 3 * 3 - 2) => 3 * (3 * 3 - 3 + 1) => 3 * 3 * 3 - 3 * 3 + 3 => (3 << 2) - (3 << 1) + 3

Или нет?
bloß it hudla
Re[3]: Наиболее интересные вопросы на собеседованиях
От: minorlogic Украина  
Дата: 10.06.12 17:41
Оценка:
Здравствуйте, A.Lokotkov, Вы писали:

AL>Если есть сложение и вычитание, то как-то так, видимо:

AL>
AL>3 * 7 => 3 * ( 3 * 3 - 2) => 3 * (3 * 3 - 3 + 1) => 3 * 3 * 3 - 3 * 3 + 3 => (3 << 2) - (3 << 1) + 3
AL>

AL>Или нет?

я ответил как (3<<3)-3
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[4]: Наиболее интересные вопросы на собеседованиях
От: A.Lokotkov Россия http://www.linkedin.com/pub/alexander-lokotkov/a/701/625
Дата: 10.06.12 17:56
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>я ответил как (3<<3)-3


И правильно сделал. Я вот сделал не задумываясь и получил неправильно .
bloß it hudla
Re[4]: Наиболее интересные вопросы на собеседованиях
От: A.Lokotkov Россия http://www.linkedin.com/pub/alexander-lokotkov/a/701/625
Дата: 10.06.12 18:16
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>я ответил как (3<<3)-3


божеж мой, какой же бред я изобразил . no hire, однозначно.
bloß it hudla
Re[5]: Наиболее интересные вопросы на собеседованиях
От: minorlogic Украина  
Дата: 10.06.12 18:24
Оценка:
Здравствуйте, A.Lokotkov, Вы писали:

AL>божеж мой, какой же бред я изобразил . no hire, однозначно.


Я начал отвечать думая как оптимальнее построить обобщенный алгоритм умножений жалея что не учил низкоуровневые алгоритмы. Когда дошел для до решений через небольшой LUT интервьюер начал меня понимать , со смехом перебил и просто попросил ответить как сдвигами умножить на 7. Тогда я врубился в контекст и ответил (3<<3) — 3.
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.