Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: тестовое задание  (Прочитано 16545 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Gora
Гость
« : 21-03-2008 17:11 » 

Вычитал в одной книжице следующее - цитата "Многие годы мы предлагаем один и тот же программистский тест каждому разработчику. Он не требует никакого оборудования или обращения к справочникам. Кандидатов просят написать программу, отображающую на экране свой собственный исходный текст, не обращаясь к чтению файлов". У каго какие мысли.
Записан
Вахмурка
Помогающий

ru
Offline Offline
Пол: Мужской
Программист


WWW
« Ответ #1 : 21-03-2008 17:30 » 

  Называются эти программы куайнами, или квайнами, старо как мир. Можеж про них прочитать в Википедии.
Записан

Программа – это мысли спрессованные в код.
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #2 : 21-03-2008 18:48 » 

Баяяяяян Ага
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
zubr
Модератор

by
Offline Offline
Пол: Мужской

« Ответ #3 : 21-03-2008 19:51 » 

Код:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
  s:Array [1..16] of string;
  i:Integer;

begin
 s[1]:='program Project2;';
 s[2]:='{$APPTYPE CONSOLE}';
 s[3]:='uses SysUtils;';
 s[4]:='var';
 s[5]:='s:Array [1..16] of string;';
 s[6]:='i:Integer;';
 s[7]:='begin';
 s[8]:='For i:=1 to 7 do';
 s[9]:='Writeln(s[i]);';
 s[10]:='For i:=1 to 7 do';
 s[11]:='Write(''s['', IntToStr(i), '']:='', '''''''', s[i], '''''''', #13#10);';
 s[12]:='For i:=1 to 7 do';
 s[13]:='Writeln(s[i]);';
 s[14]:='Readln;';
 s[15]:='end.';
 s[16]:='end.';
 For i:=1 to 7 do
 Writeln(s[i]);
 For i:=1 to 16 do
 Write('s[', IntToStr(i), ']:=', '''', s[i], '''', #13#10);
 For i:=8 to 16 do
 Writeln(s[i]);
 Readln;
end.
end.
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #4 : 21-03-2008 20:01 » 

Эти задания берут свое начало со времен бейсика. А именно с команды LIST. Потом уже люди стали изврашаться и с другими языками. Например под С++ я видел пример, который написан с применение шаблонов. Честно говоря там без пол литра я бы не разобрался.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


WWW
« Ответ #5 : 21-03-2008 20:35 » 

Цитата
"Многие годы мы предлагаем один и тот же программистский тест каждому разработчику.

а если тест не прошёл ? Выгоняют ? Улыбаюсь И теряют ценные кадры - задача то , хоть и бесполезна, но сложна , а человек, может быть, за неделю бы не смог это написать. А вот дай ему другое задание, которое имеет смысл - он бы всё сделал как надо.

По моему, это не тест, а задача для свободных временем
Записан

zubr
Модератор

by
Offline Offline
Пол: Мужской

« Ответ #6 : 22-03-2008 06:45 » 

Алексей1153++, что уж тут такого сложного? Дело в том, что при приеме на работу работодатель пытается выбрать работника (имеется в виду программист) с алгоритмическим мышлением, а не просто умеющим применять шаблонные готовые функции, которые можно найти в любом справочнике.
Немного оффтоп, но к теме: У меня есть знакомый директор предприятия, у котрого для его снабженцев есть коронная фраза: "За деньги и дурак сможет приобрести...". Так вот подобные тесты что то типа этой логики.
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


WWW
« Ответ #7 : 22-03-2008 07:57 » 

zubr, не вижу аналогии )  Решить то он решит, просто не каждый такой гений, что решит за, скажем, час

кстати, из твоего примера строки
Код:
s[1]:='program Project2;';
 s[2]:='{$APPTYPE CONSOLE}';
 s[3]:='uses SysUtils;';
 s[4]:='var';
 s[5]:='s:Array [1..16] of string;';
 s[6]:='i:Integer;';
 s[7]:='begin';
 s[8]:='For i:=1 to 7 do';
 s[9]:='Writeln(s[i]);';
 s[10]:='For i:=1 to 7 do';
 s[11]:='Write(''s['', IntToStr(i), '']:='', '''''''', s[i], '''''''', #13#10);';
 s[12]:='For i:=1 to 7 do';
 s[13]:='Writeln(s[i]);';
 s[14]:='Readln;';
 s[15]:='end.';
 s[16]:='end.';
мне кажется, не выведутся
Записан

zubr
Модератор

by
Offline Offline
Пол: Мужской

« Ответ #8 : 22-03-2008 08:38 » 

Все выводится. В аттаче скомпилированная программка.

* Project2.zip (23.01 Кб - загружено 717 раз.)
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


WWW
« Ответ #9 : 22-03-2008 09:48 » 

теперь видю ) И сколько времени ушло на написание, интересно ?
Записан

zubr
Модератор

by
Offline Offline
Пол: Мужской

« Ответ #10 : 22-03-2008 10:05 » 

Около получаса.
Записан
zubr
Модератор

by
Offline Offline
Пол: Мужской

« Ответ #11 : 22-03-2008 10:09 » 

Кстати, сейчас забил в поисковике слово "квайн" и почти сразу вышел на ссылку: http://alex-semenov.livejournal.com/1797.html?thread=5893, там есть и пример квайна, почти в точности похож на мой (ну или мой похож на тот Улыбаюсь ). Так что все уже давно придумано до нас.
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #12 : 22-03-2008 10:27 » 

В своё время даже проводился конкурс на самую маленькую такую программу. Я же говорю - баян.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


WWW
« Ответ #13 : 22-03-2008 12:05 » 

zubr, ну это просто найдено типовое решение , поэтому пол часа Улыбаюсь А кто не делал такое раньше ? И сомневаюсь, что во время решения теста можно искать в инете
Записан

zubr
Модератор

by
Offline Offline
Пол: Мужской

« Ответ #14 : 22-03-2008 14:50 » 

Алексей1153++, ну что здесь сложного? Я уверен, что в повседневной работе тебе приходится посложнее алгоритмы писать.
То что указано по ссылке я увидел после того как написал программку. А программку написал, потому что стало интересно, я слышал про подобный прикол и знаю что баян, но как-то видеть и делать ранее не доводилось.
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


WWW
« Ответ #15 : 22-03-2008 15:01 » 

zubr, ну как сказать, может тот же архиватор можно считать сложнее этого кода, но не поверишь, вот лично мне вот именно за такой код браться влом Улыбаюсь Я не знаю почему. Вроде бы и интересно самому решить, но как-то неохота. А архиватор было интересно написать и отладить
Записан

Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #16 : 22-03-2008 15:39 » 

Лёш, это всё от того, что ты программный материалист. И видишь, что реального выхлопа от этой проги - 0. Поэтому влом.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


WWW
« Ответ #17 : 22-03-2008 16:14 » 

Джон, вот это ты неправильно )  Я могу упорно сидеть и писать какой нибудь кудрявый и бесполезный алгоритм - если мне почему то это интересно, а вот тут почему то скука - это необъяснимо ))
Записан

zubr
Модератор

by
Offline Offline
Пол: Мужской

« Ответ #18 : 22-03-2008 16:17 » 

Алексей1153++, да это все под настроение и наличие времени. Я обычно на такие штуки не ведусь, а вчера почему то затянуло, благо время было.
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


WWW
« Ответ #19 : 22-03-2008 16:20 » 

zubr, это всё понятно, но признайся, решал раньше такую задачу )
Записан

Вахмурка
Помогающий

ru
Offline Offline
Пол: Мужской
Программист


WWW
« Ответ #20 : 22-03-2008 16:33 » 

  Вообще по моему у этой истории в книге есть продолжение. Типа программисты сильно удивлялись и говорили что это невозможно. Такой же прикол как вопрос: Какого цвета солнце?
Записан

Программа – это мысли спрессованные в код.
zubr
Модератор

by
Offline Offline
Пол: Мужской

« Ответ #21 : 22-03-2008 16:37 » 

Алексей1153++, зуб даю, что не решал. Более того скажу, что к алгоритму использования массива строк пришел не сразу, сначала пытался через строковые переменные с использованием конкантенации строк, но не получалось.
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


WWW
« Ответ #22 : 22-03-2008 16:40 » 

zubr, да я верю, зуб не надо ))
Записан

DrGluck
Постоялец

ru
Offline Offline
Пол: Мужской

« Ответ #23 : 28-03-2008 12:26 » 

Прикольное решение. Мне в свое время один древний программер (35 лет в бизнесе) говорил, что это невозможно. Я не настаивал, т.к. было пофигу.
Маладец.
Записан

Good user - dead user
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines