Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];

Вниз

Тест на сообразиловку или Проверка на Вшивость   Найти похожие ветки 

 
Shaman_Naydak   (2002-01-31 15:07) [0]

Задача:
Написать программку на паскале, которая с помощью оператора Writeln выводила бы свой листинг.
Для дельфийстов: этта, пишите как консольное приложение.
Можно и на С..
Вытаскивание данных из ресурсов или, скажем, из Memo, куда трудолюбиво положили листинг (это тоже ресурс) НЕ ЗАСЧИТЫВАЕТСЯ!
ОБЪЯСНЯЮ ЕЩЕ РАЗ: Не надо себя дизассемблировать, декомпилировать и придумывать прочий бред. Алгоритм как раз и должен выводить себя.
Для проверки скомпиленный EXE-шник переносится в другой каталог и запускается..
Пример на древнем бейсике (нечестный): 10 LIST
ЖДУ ВАШИХ ЛИСТИНГОВ, ДАМЫ И ГОСПОДА!


 
savva   (2002-01-31 15:20) [1]

интересно, а будет ли у бейсика ехе? :))


 
gek   (2002-01-31 15:34) [2]

А еще что написать? Может и свою ОС?


 
Юрий Федоров   (2002-01-31 15:35) [3]

Exe-шник должен выводить свой листинг не имея доступа к файлу *.pas? Это невозможно


 
yaJohn   (2002-01-31 15:45) [4]

Eto standartnaya zagadka :) Poprobuu obiasnit".

program abc;
begin
writeln( "program abc");
writeln( "begin");
writeln( "writeln(""program abc"");");
writeln( "writeln(""begin"");");
..... i t.d.


Vopros: vozmoj no li napisat" programmu, kotoroya vivodila bi svoy ishodniy tekst podobnim obrazom ot program abc;
i do end. ???

Zadacha ne takaya durackaya kak kajetsia.... I eshe.
>Это невозможно
Dokazatelstvo nevozmojnosti reshenia est" reshenie ;)


 
MBo   (2002-01-31 16:12) [5]

Получилось. Работает.


 
VictorT   (2002-01-31 16:25) [6]

MBo>Получилось. Работает.
Наверно я торможу, но не понял что получилось, работает и как.


 
gek   (2002-01-31 16:29) [7]

>> yaJohn © (31.01.02 15:45)
Это обычный тупик


 
MBo   (2002-01-31 16:37) [8]

>VictorT
программа выводит текст своего исходника без *.pas
(консольная программа, т.е. Plain Pascal)


 
VictorT   (2002-01-31 16:42) [9]

2 MBo
Можно увидеть исходник?


 
MBo   (2002-01-31 16:58) [10]

Студент? Пиво давай.

Не оптимизировал.

{$APPTYPE CONSOLE}
uses SysUtils;
var s:string;c:char;i:integer;
begin
s:="{$APPTYPE CONSOLE}%uses SysUtils;%var s:string;c:char;i:integer;%begin%s:=;%for i:=1 to length(s) do begin%c:=s[i];if c<>#37 then write(c) else writeln;%if i=74 then writeln(#39+s+#39) end;%readln;%end.";
for i:=1 to length(s) do begin
c:=s[i];if c<>#37 then write(c) else writeln;
if i=74 then write(#39+s+#39) end;
readln;
end.


 
yaJohn   (2002-01-31 17:00) [11]

2 Gek
>Это обычный тупик
Ili rekursia? ;)
I chto prikajete ponimat" pod obichnim tupikom?

2 MBo
Ne tomite... Ochen" interesno.

V principe u menia est" nebolshaya podborka zadachek-zagadochek ne dlia glupih ;) Esli publika jelaet....


 
VictorT   (2002-01-31 17:04) [12]

2 yaJohn
publika jelaet


 
yaJohn   (2002-01-31 17:28) [13]

2 MBo
BRAVO! BRAVO! BRAVO!
Skol"ko Vam potrebovalos" vremeni?

2 VictorT
U menia problema s kirilicey (v WEB formah, no ne v e-mail).
Esli vi ne vozrajaete, ya otoshlu tekst Vam, a Vi razmestite ego v forume. Ok?


 
Merlin   (2002-01-31 17:38) [14]

Кстати, еще можно было бы пойти хитрым путем ;) В задаче сказано:
> Для проверки скомпиленный EXE-шник переносится в другой каталог и запускается..

Т.е. делаем поиск по всему винту *.pas файлов, по ключевому слову найти именно свой листинг и выдать его ;)


> yaJohn ©
Можно и мне выслать, разместим, действительно забавно.


 
VictorT   (2002-01-31 17:41) [15]

2 yaJohn
Ok.


 
MBo   (2002-01-31 17:48) [16]

>vremeni?
от того, как прочитал ©(31.01.02 15:35) до (31.01.02 16:12)

выбросил лишнее
{$APPTYPE CONSOLE}
var s:string;i:byte;
begin
s:="{$APPTYPE CONSOLE}%var s:string;i:byte;%begin%s:=;%for i:=1 to length(s) do begin%if s[i]=#37 then writeln else write(s[i]);%if i=49 then writeln(#39+s+#39) end;%readln;%end.";
for i:=1 to length(s) do begin
if s[i]=#37 then writeln else write(s[i]);
if i=49 then write(#39+s+#39) end;
readln;
end.


 
Knight   (2002-01-31 17:54) [17]

Я не понял смысла всего этого. На что надеялся автор ветки?


 
Merlin   (2002-01-31 17:58) [18]

загадка от yaJohn:

Разговор двух программистов (А и Б):

----- скип -------
А: Ну о моем сыне я тебе рассказал. А у тебя дети есть?
Б: Да, трое!
А: И сколько им лет?
Б: А ты угадай. Произведение их возрастов равно 36.
А: Ты смеешься? Есть масса комбинаций трех чисел, дающих в произведении 36.
Б: Ну тогда я скажу еще, что вместе взятым им столько же лет, сколько и твоему.
А: Нет, этого мало.
Б: Ладно. Еще один факт: Мой старший сын - рыжий.
А: Вот так-то лучше! Им...........
----- скип -------

Вопрос: сколько лет детям Б?

Кто догадается - не спешите, пусть остальные помучаются :)


 
Wonder   (2002-01-31 18:08) [19]

>Merlin
Что-то у меня два решения получилось.
По-моему чего-то не хватает...


 
Merlin   (2002-01-31 18:15) [20]

а ты учитывал, что старший сын рыжий? :)


 
Wonder   (2002-01-31 18:18) [21]

Естественно :)
Теперь получилось даже три решения :)))
Или пиво дает себя знать...


 
VictorT   (2002-01-31 18:39) [22]

>вместе взятым им столько же лет, сколько и твоему.
Это понимать так, что это переменная на входе алгоритма?
В смысле небыло сказано, сколько лет сыну А.


 
yaJohn   (2002-01-31 18:52) [23]

Osobenno zabaven proces reshenia etoi zadachki imenno u programmistov... Im po jizni t.z. chitat" vlom... :)


 
yaJohn   (2002-01-31 19:05) [24]

I chto, nikto???????? Dayte znat", kogda sozreete na to, chtobi slushat" podskazki :)))

Priznaus" chesno, v 7 klase ya dumal nad etoy zadachey 2 dnia...


 
Andrey   (2002-01-31 19:30) [25]

> Самым ленивым
Ведь кто-то до вас об этом думал. И не только думал но и писал. И писал не только на бумаге но и в интернете. Так что стоит выделить в буфер обмена ключелую фразу, зайти на любимый поисковик, а дальше дело техники.

> yaJohn
Не желаете пополнить свою (или их) колекцию? :)
http://www.parma.ru/~dfsh/puz_olymp/puzzles/bk_ru.htm


 
Вадим   (2002-01-31 22:18) [26]

2, 3, 6


 
wicked   (2002-01-31 22:42) [27]

первое, что пришло в голову - 4, 3, 3....


 
Adder   (2002-02-01 00:25) [28]

6-3-2

2Вадим© (31.01.02 22:18) Браво! Нечего добавить :))
2Wonder © (31.01.02 18:08) Imho, принципиально не то, что рыжий, а то, что старший :)


 
Pat   (2002-02-01 00:44) [29]

12,3,1
Кажись, такой ответ....:-))


 
Adder   (2002-02-01 01:06) [30]

2Pat © (01.02.02 00:44) гм... а почему тогда не 4-3-3 или 9-4-1 или не 18-2-1 (так тоже бывает) ? У задачи один ответ ( имхо) :)
Тока не 6-3-2 ...облажалась... допрограммилась :(... сложила 6+3+2 в уме и получила.. 13 :)))))
Имхо, ответ 9-2-2
Comment:
Возраст сына А мы не знаем, но знаем, что А и Б это знают.
Ещё мы знаем, что после информации, что один сын Б старший А получает однозначный ответ :)
В результате из возможных вариантов останется 1:
9*2*2=13 9+2+2=13
6*6*1=36 6+6+1=13

Сыну А 13 лет.
Итог: 9-2-2


 
Adder   (2002-02-01 01:09) [31]

сорьки за очепятку...9*2*2=36 естественно :)


 
MBo   (2002-02-01 07:07) [32]

все эти варианты с наличием старшего сына дают разные суммы
sum
1 1 36 38
1 2 18 21
1 3 12 16
1 4 9 14
2 2 9 13
2 3 6 11
3 3 4 10


 
gek   (2002-02-01 07:20) [33]

>> MBo © (31.01.02 16:58)
Борис ты прав.
Просто я исходил из кода предложенного yaJohn © (31.01.02 15:45)
А там получается, что две последние строчки не будут выведены никогда и ни за что.
Ты решил оригинальным способом. Молодечик.


 
Wonder   (2002-02-01 11:18) [34]

>Adder Спасибо, я догадался, что цвет волос значения не имеет :))) Переведу твое решение на русский язык :)))

Пойдем простым, логическим путем. Можно сказать наверняка - один из детей В старше двух других.
Поэтому (казалось бы :) подойдет любая комбинация чисел a-b-c, из которых одно больше чем любое из двух других.
НО! Мы то знаем, что в сумме, эти числа равны возрасту сына А, то биш существует не одно решение, дающее в сумме одно и тоже число. Далее см. Adder © (01.02.02 01:06)



 
MBo   (2002-02-01 12:08) [35]

теперь и до меня дошло - важна последовательность вопросов.


 
yaJohn   (2002-02-01 12:37) [36]

Ok, kajetsia spravilis", pozdravliau. Teper" moe reshenie, po shagam:
1. Vipisivaem vse unikalnie kombinacii treh chisel s proizvedeniem = 36 (poriadok ne vajen) i ih summi:
X Y Z Summ
3 3 4 10
2 3 6 11
2 2 9 13
6 6 1 13
1 4 9 14
1 3 12 16
1 2 18 21
1 1 36 38

(otsortirovano po summe)
2. Esli bi pravilnim bil otvet 3-3-4, to po poluchenii informacii o summe (10) A dal bi odnoznachniy otvet. No mi imeem frazu " А: Нет, этого мало". T.e. vicherkivaem vse kombinacii s unikalnimi summami. Ostaetsia:
2 2 9 13
6 6 1 13
3. Poskolku imeetsia starshiy sin, sledovatelno 6-6-1 ne podhodit.
2-2-9
Chto mne v ney, sobstvenno, tak ponravilos", tak eto nagliadniy primer togo, chto fakt otsustvia otveta zachastuu uje i est" otvet.
Interesnee eta zadachka poluchaetsia v ustnoi forme ;)


 
Shaman_Naydak   (2002-02-01 16:39) [37]

МОИ ОСОБЫЕ поздравления yaJohn и MBo!
Merlin"у: Нет, такое решение я бы не засчитал, а вдруг перенесли ехе-шник на другую машину-то :)
Knight"у: На что я надеялся?
На то же, что и yaJohn, чтобы народ научился не таранить лбом стенку, а снял шоры и обошел ее.
Люблю изящное программирование.
Ну и немного расслабиться и приколоться, а то мозги могут закостенеть от непрерывного кодирования!

Вообще, предлагаю придумывать подобные задачки, желательно все-таки программерские, чтобы модератор не сказал, что мы не по адресу.. и выкидывать их в народ!


 
Юрий   (2002-02-01 17:08) [38]

А над такой задачкой помучайтесь.
Когда то Энштейн сказал что ее не смогут решить 98% людей :-)


1. Есть пять домов, каждый разного цвета.
2. В каждом доме живет по одному человеку отличной друг от друга национальности.
3. Каждый жилец пьет только один определенный напиток, курит определенную марку сигарет и держит определенное животное.
4.Никто из пяти человек е пьет одинаковые с другими напитки, не
курит одинаковые сигареты и не держит одинаковое животное.

Вопрос: Кому принадлежит рыба?

Подсказки:

1. Англичанин живет в красном доме
2. Швед держит собаку
3. Датчанин пьет чай
4. Зеленый дом стоит слева от белого
5. Жилец зеленого дома пьет кофе
6. Человек, который курит Pall Mall, держит птицу
7. Жилец из среднего дома пьет молоко
8. Жилец из желтого дома курит Dunhill
9. Норвежец живет в первом доме
10. Курильщик Marlboro живет около того, кто держит кошку
11. Человек, который содержит лошадь, живет около того, кто курит
Dunhill
12. Курильщик сигарет Winfield пьет пиво
13. Норвежец живет около голубого дома
14. Немец курит Rothmans
15. Курильщик Marlboro живет по соседству с человеком, который
пьет воду.

Кто знает ответы сразу не давайте


 
Wonder   (2002-02-01 17:22) [39]

Мда. Задачка явно не для пятницы...


 
yaJohn   (2002-02-01 17:38) [40]

IMHO tomu, kto p"et pivo. Emu nujnee....


 
Wonder   (2002-02-01 17:59) [41]

Немцу :)))


 
savva   (2002-02-01 18:23) [42]

>Wonder © (01.02.02 17:59)
>Немцу :)))
полностью согласен

| норвежец || датчанин || англичанин || немец || щвед ||
| вода || чай || молоко || кофе || пиво ||
| желтый || голубой || красный || зеленый || белый ||
| Dunhill || Marlboro || Pall Mall ||Rothmans || Winfield ||
| кошка || лошадь || птица || ****** || собака ||

***** - это и есть рыба


 
Wonder   (2002-02-01 18:26) [43]

>savva
Абсолютно верно :)
Простая логика.
Так что , по Эйнштейну, мы с тобой за сотню отстрелялись :)))


 
savva   (2002-02-01 18:32) [44]

ну да :))
100% - 98%=2% :))


 
Judith   (2002-02-01 23:01) [45]

Извините, но можно я вернусь к предыдущей задаче. Мне все-таки кажется, что она имеет два решения. Вариант 6-6-1 так же подходит, поскольку близнецы могут иметь разный пол.


 
Merlin   (2002-02-01 23:06) [46]

Ага, добавлю еще, что им (6-6 мальчику и девочке) близнецами быть не обязательно. Например, разница в возрасте в 11 месяцев, а программисты разговаривают именно в тот промежуток времени, когда им одинаковое кол-во лет ;)


 
Adder   (2002-02-01 23:29) [47]

Угу :)
>Merlin (6-6 мальчику и девочке) ...разница в возрасте в 11 месяцев - в таком случае могут быть и два мальчика ...
кроме того, если подходить строго, то один из близнецов всегда старше, как минимум на полчаса :)))


 
Nikolay   (2002-02-02 00:42) [48]

запоздало конечно но немцу...
я сам честно решил... :+)


 
MBo   (2002-02-06 16:17) [49]

еще задачка
написать программу составления оглавления документа с учетом этого оглавления. Интереснее, если оно в начале, в документе много частей и на странице немного строк.


 
Den - 4662DAA6-D393-11D0-9A56-00C04FB68   (2002-02-08 18:00) [50]

Поймал мужик ,как водится неводом, золотую рыбу!
Она ,конечно, просит отпустить ,3 желания,ну,все помнят...
А мужик говорит :
Желание 1. Хочу чтобы выполнилось 2-ое желание
Желание 2. Хочу чтобы выполнилось 3-ье желание
Желание 3. Хочу чтобы выполнилось 1-ое желание

вопрос для самых умных: что будет, если учесть, что рыбка ЗОЛОТАЯ,т.е. вошебная!!!


 
Иван Шихалев   (2002-02-08 18:06) [51]

А ничего не будет. Но если рыбку кривые ручки программировали, то будет Stack Overflow.


 
McSimm   (2002-02-08 18:08) [52]

Что будет? - Выполнит и все тут. Все три желания.
Она же волшебная :)



Страницы: 1 2 вся ветка

Форум: "Потрепаться";
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.57 MB
Время: 0.007 c
3-66797
Ross
2002-02-23 15:32
2002.03.21
Варианты передачи данных в Word


1-66872
Леонид
2002-03-04 11:49
2002.03.21
Translation manager


3-66732
Лёша
2002-02-18 04:47
2002.03.21
Нужна литература по InterBase.


3-66759
- Andrew -
2002-02-21 18:45
2002.03.21
Как записать картинку (Tiff, Bmp) в BLOB-поле?


1-66813
AndrewK
2002-03-07 10:12
2002.03.21
Как выполнить команду из Delphi





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский