Вопрос претендентам — скомпилируется ли ? Если не скомпилируется,
то где ошибка (помимо ошибки в ДНК автора) ? Если скомпилируется,
то почему и что будет делать ? Компилятор юзать нельзя.
Уже жду следующей команды студентов, желающих пособеседоваться.
Здравствуйте, kittown, Вы писали:
K>Hi,
K>Вчера сам собой придумался пример кода для запугивания K>претендентов на собеседовании:
K>#include <iostream> K>int main() K>{ K> switch(0) default: std::cout << "Hello World!" << std::endl; K>};
K>Вопрос претендентам — скомпилируется ли ? Если не скомпилируется, K>то где ошибка (помимо ошибки в ДНК автора) ? Если скомпилируется, K>то почему и что будет делать ? Компилятор юзать нельзя.
K>Уже жду следующей команды студентов, желающих пособеседоваться.
K>Mikhail
Хм, а какой конструктивный вывод можно сделать о разнице между студентами,
справившимися с этим заданием и не справившимися?
на RSDN принято писать по-русски. Это также отражено в правилах.
K>Вчера сам собой придумался пример кода для запугивания K>претендентов на собеседовании:
K>#include <iostream> K>int main() K>{ K> switch(0) default: std::cout << "Hello World!" << std::endl; K>};
K>Вопрос претендентам — скомпилируется ли ? Если не скомпилируется, K>то где ошибка (помимо ошибки в ДНК автора) ? Если скомпилируется, K>то почему и что будет делать ? Компилятор юзать нельзя.
K>Уже жду следующей команды студентов, желающих пособеседоваться.
K>Mikhail
вот этого Вчера Сама я бы поубивал.
Этот претендент работать тоже будет без компилятора?
Уж если рассматривать это убожество, то только в таком аспекте. как быстро (при наличии среды привычной претеденту) он откомпилирует без ошибок (без использования комментариев ).
Здравствуйте, kittown, Вы писали:
K>Вопрос претендентам — скомпилируется ли ?
"Обожаю" такие вопросы. Скомпилируется ли чем? По хорошему вопрос тогда уж должен звучать примерно так: "валидная ли это программа с точки зрения последнего стандарта С++?"
Здравствуйте, kittown, Вы писали:
K>Hi,
K>Вчера сам собой придумался пример кода для запугивания K>претендентов на собеседовании:
K> switch(0) default: std::cout << "Hello World!" << std::endl;
if (0); else std::cout << "Hello World!" << std::endl;
Вы это имели ввиду?
Да там еще return 0, не хватает.
Re[2]: издевательства над switch-ем на собеседовани
alexsoff wrote: > > K>Вчера сам собой придумался пример кода для запугивания > K>претендентов на собеседовании: > > K> switch(0) default: std::cout << "Hello World!" << std::endl; > > if (0); else std::cout << "Hello World!" << std::endl; > Вы это имели ввиду?
Тоже красиво.
> Да там еще return 0, не хватает.
В main ? Зачем ? Хотя, для старых компиляторов — можно и поставить.
Mikhail
Posted via RSDN NNTP Server 2.0
Re[2]: издевательства над switch-ем на собеседовани
Сергей Мухин wrote: > K>Hi, > > на RSDN принято писать по-русски. Это также отражено в правилах.
Нашли к чему придраться.
> вот этого Вчера Сама я бы поубивал. > > Этот претендент работать тоже будет без компилятора?
Нет, этот претендент должен показать ход рассуждений.
Либо сдаться.
> Уж если рассматривать это убожество, то только в таком аспекте. как > быстро (при наличии среды привычной претеденту) он откомпилирует без > ошибок (без использования комментариев ).
Это характерная точка зрения студента. Логичная, конечно, но после
внимательного изучения языка все эти вещи вообще не представляют
никакой сложности.
Приблизительный уровень знаний, нужный для непробиваемости
подобными вещами — c++ faq lite + cpp faq book ver2 + cuj
за несколько лет (начиная с ~1998, чтобы не расходиться
со стандартом)
Mikhail
Posted via RSDN NNTP Server 2.0
Re[3]: издевательства над switch-ем на собеседовани
Здравствуйте, kittown, Вы писали:
>> Да там еще return 0, не хватает.
K>В main ? Зачем ? Хотя, для старых компиляторов — можно и поставить.
Да чтоб без warning`ов,а то всегда настроение портят...
Re[4]: издевательства над switch-ем на собеседовани
Здравствуйте, alexsoff, Вы писали:
>>> Да там еще return 0, не хватает. K>>В main ? Зачем ? Хотя, для старых компиляторов — можно и поставить. A>Да чтоб без warning`ов,а то всегда настроение портят...
Кстати, я что-то торможу: почему указаный пример g++ компилирует без warning'ов, а gcc — честно его выдает (после замены кода на C, понятно)?
Здравствуйте, kittown, Вы писали:
K>Hi,
K>Вчера сам собой придумался пример кода для запугивания K>претендентов на собеседовании:
K>#include <iostream> K>int main() K>{ K> switch(0) default: std::cout << "Hello World!" << std::endl; K>};
K>Вопрос претендентам — скомпилируется ли ? Если не скомпилируется, K>то где ошибка (помимо ошибки в ДНК автора) ? Если скомпилируется, K>то почему и что будет делать ? Компилятор юзать нельзя.
спросите лучще как отсортировать массив без выделения памяти. Это хороший фильт слабоумных.
Здравствуйте, kittown, Вы писали:
K>Hi,
K>Вчера сам собой придумался пример кода для запугивания K>претендентов на собеседовании:
K>#include <iostream> K>int main() K>{ K> switch(0) default: std::cout << "Hello World!" << std::endl; K>};
K>Вопрос претендентам — скомпилируется ли ? Если не скомпилируется, K>то где ошибка (помимо ошибки в ДНК автора) ? Если скомпилируется, K>то почему и что будет делать ? Компилятор юзать нельзя.
Ну вопрос то не особо сложный.
Если говорить про switch, то такая конструкция допустима, выведет Hello World! Не вижу в этом сложностей на самом деле и издевательств.
Компилятором не пользовался при ответе
Вот если Duff's device подсунуть на собеседовании, то это издевательство.
Но вот целиком программа не корректна, так как нельзя ставить точку с запятой, после тела функции. Но это скорее всего опечятка.
Здравствуйте, kittown, Вы писали:
K>Hi,
K>Вчера сам собой придумался пример кода для запугивания K>претендентов на собеседовании:
K>#include <iostream> K>int main() K>{ K> switch(0) default: std::cout << "Hello World!" << std::endl; K>};
K>Вопрос претендентам — скомпилируется ли ? Если не скомпилируется, K>то где ошибка (помимо ошибки в ДНК автора) ? Если скомпилируется, K>то почему и что будет делать ? Компилятор юзать нельзя.
K>Уже жду следующей команды студентов, желающих пособеседоваться.
void copy(T* po, T const* pi, std::size_t len)
{
std::size_t len8 = len / 8;
switch(len % 8)
do
{
*po++ = *pi++;
case 7: *po++ = *pi++;
case 6: *po++ = *pi++;
case 5: *po++ = *pi++;
case 4: *po++ = *pi++;
case 3: *po++ = *pi++;
case 2: *po++ = *pi++;
case 1: *po++ = *pi++;
case 0:
} while(len8--);
}
С уважением, Роман.
До последнего не верил в пирамиду Лебедева.
Re[2]: издевательства над switch-ем на собеседовани
От:
Аноним
Дата:
04.12.05 20:24
Оценка:
Здравствуйте, pavel_turbin, Вы писали:
_>спросите лучще как отсортировать массив без выделения памяти. Это хороший фильт слабоумных.
Стандартное, что приходит в голову (пузырек и qsort)
дополнительной памяти не требует.
Или под "выделением памяти" ты имеешь ввиду что-то особенное?
Re[2]: издевательства над switch-ем на собеседовани
Здравствуйте, Kemm, Вы писали:
K>Здравствуйте, alexsoff, Вы писали:
>>>> Да там еще return 0, не хватает. K>>>В main ? Зачем ? Хотя, для старых компиляторов — можно и поставить. A>>Да чтоб без warning`ов,а то всегда настроение портят...
K>Кстати, я что-то торможу: почему указаный пример g++ компилирует без warning'ов, а gcc — честно его выдает (после замены кода на C, понятно)?
См. 3.6.1 п. 5 стандарта С++.
Re[3]: издевательства над switch-ем на собеседовани
Здравствуйте, RomanOdaisky, Вы писали:
>> Вот если Duff's device подсунуть на собеседовании, то это издевательство.
RO>Одновременно написали А вот еще:
RO>
RO>int x, y;
RO>. . .
RO>x ^= y ^= x ^= y;
RO>
RO>Что делает?
меняет значения x и y
>30 сек на размышления!
2.5 секунды думал
угадал?
Re[2]: издевательства над switch-ем на собеседовани
Здравствуйте, kittown, Вы писали:
K>Сергей Мухин wrote: >> K>Hi, >> >> на RSDN принято писать по-русски. Это также отражено в правилах.
K>Нашли к чему придраться.
нарушать правила нехорошо. опять же это ваш стиль
>> вот этого Вчера Сама я бы поубивал. >> >> Этот претендент работать тоже будет без компилятора?
K>Нет, этот претендент должен показать ход рассуждений. K>Либо сдаться.
>> Уж если рассматривать это убожество, то только в таком аспекте. как >> быстро (при наличии среды привычной претеденту) он откомпилирует без >> ошибок (без использования комментариев ).
K>Это характерная точка зрения студента. Логичная, конечно, но после K>внимательного изучения языка все эти вещи вообще не представляют K>никакой сложности.
ну я уж ни как на студента не похож. но вот такие вещи я никогда при преме не задавал.
чел может знать синтаксис с++ и при этом не способен написать программу! или отладить ее!
K>Приблизительный уровень знаний, нужный для непробиваемости K>подобными вещами — c++ faq lite + cpp faq book ver2 + cuj K>за несколько лет (начиная с ~1998, чтобы не расходиться K>со стандартом)
вам нужен со знанием стандарта? вы пишете компилятор С++? или программист?