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

Вниз

Спрашивали на собеседовании...   Найти похожие ветки 

 
Ketmar ©   (2006-10-04 20:21) [40]

"агрегирование" -- это включение объекта в другой объект. обычно при помощи поля-переменной. %-) остальное додумай сам. %-))


 
MeF Dei Corvi ©   (2006-10-04 20:22) [41]


> допускаются...

Гм. Ну можно попытаться триангулировать этот полигон и проверять принадлежность точки полученым треугольникам. Или разбить его на выпуклые. Что-то умное решение не придумывается :(


 
Palladin ©   (2006-10-04 20:22) [42]


> ой. а потом это состыковывать? бр-р-р... common lisp, например,
> prolog, php и assembler. %-)

во блин... ну ты вспомнил... однажды что то на lisp"е решал задачку для знакомой (гы :) )...

конечно есть разумные ограничения для используемых инструментов :) например нет денег чтобы его купить :))


> [34] Сатир  

фигасе чем... да всем... агрегация - включение сущности в состав другой и никакого отношения к наследованию абсолютно не имеет...


 
Ketmar ©   (2006-10-04 20:24) [43]

>[42] Palladin(c) 4-Oct-2006, 20:22
>во блин... ну ты вспомнил... однажды что то на
>lisp"е решал задачку для знакомой (гы :) )...
а что? прикольный язык. иногда пописываю.
>
>конечно есть разумные ограничения для
>используемых инструментов :) например нет денег
>чтобы его купить :))
а у меня свой лисп. на нём написан целый тетрис и текстовый редактор. %-) и всё -- public domain. %-)


 
Джо ©   (2006-10-04 20:26) [44]

> [38] Сатир   (04.10.06 20:19)
>
> > Это простой вопрос, вообще-то.
>
> не спорю. но читал об этом только в одной книжке и потому
> не особо запомнилось.
> напомни, плиз:)

Ну, вот Кетмар напомнил. От себя, буквоеда эдакого, могу только добавить, что агрегирование и наследование ничего общего не имеют :)


 
Джо ©   (2006-10-04 20:27) [45]

> [43] Ketmar ©   (04.10.06 20:24)
> а у меня свой лисп. на нём написан целый тетрис и текстовый
> редактор. %-) и всё -- public domain. %-)

Компилятор или интерпретатор?


 
Иксик ©   (2006-10-04 20:29) [46]

А эта, оно возможно без виртуальной машины?


 
Сатир   (2006-10-04 20:29) [47]


> агрегирование и наследование ничего общего не имеют :)

вот это называется вопрос с подковыркой)))


 
Palladin ©   (2006-10-04 20:30) [48]


> [43] Ketmar ©

да ептыть, какие проблемы :) если научишь свой lisp реализовывать интерфесы и компилировать dll без проблем милости просим...

и в связи с такими способностями у меня найдется очень очень много интересных низкоуровневых задачь... "гы-хы-хы" (C) bender... :)


 
Джо ©   (2006-10-04 20:30) [49]

> [46] Иксик ©   (04.10.06 20:29)
> А эта, оно возможно без виртуальной машины?

Что, Lisp или RTTI? :)


 
Ketmar ©   (2006-10-04 20:37) [50]

>[45] Джо(c) 4-Oct-2006, 20:27
>Компилятор или интерпретатор?
уомпилит в нечто, похожее на байт-код (хотя по сути это всё ещё лисповые списки), и иногда это даже оптимайзит. умеет делать модули/oop. %-)

>[48] Palladin(c) 4-Oct-2006, 20:30
>lisp реализовывать интерфесы
лениво. %-)

>и компилировать dll
запросто. собираем runtime как dll, прифигачеваем скомпиленый пул ресурсом -- и вперёд. %-)

>и в связи с такими способностями у меня найдется
>очень очень много интересных низкоуровневых
>задачь... "гы-хы-хы" (C) bender... :)
ну да. "инициатива наказуема" (ц) остальные отработают положеное -- и домой, а ты сиди, делай свой низкий уровень. %-))


 
Palladin ©   (2006-10-04 20:44) [51]


> лениво. %-)

у чела оперделяется на уровне объяснения практики :)


> ну да. "инициатива наказуема" (ц) остальные отработают положеное
> -- и домой, а ты сиди, делай свой низкий уровень. %-))

ага... в точку :)

а остальные, кстати, нифига не домой. пока приложение не будет валиться при обращении к затронутой функциональности... да и низкоуровневое тестируется отдельно, так что чел может домой утопать гораздо раньше "высоких" :)


 
DiamondShark ©   (2006-10-04 20:45) [52]


> и чем оно отличается от обычного наследования?

Встречный вопрос: а наследование бывает каким-либо кроме обычного?


 
Ketmar ©   (2006-10-04 20:49) [53]

>[52] DiamondShark(c) 4-Oct-2006, 20:45
>Встречный вопрос: а наследование бывает каким-
>либо кроме обычного?
множественным. или через анус. что, в принципе, одно и то же. %-)


 
Ketmar ©   (2006-10-04 20:50) [54]

>[51] Palladin(c) 4-Oct-2006, 20:44
>> лениво. %-)
>у чела оперделяется на уровне объяснения
>практики :)
ленивые пишут код так, чтобы потом как можно меньше его менять и отлаживать. чтобы, блин, работало железобетонно. потому что лень перерабатывать. %-)


 
Palladin ©   (2006-10-04 20:53) [55]


> ленивые пишут код так, чтобы потом как можно меньше его
> менять и отлаживать. чтобы, блин, работало железобетонно.
> потому что лень перерабатывать. %-)

для "низких" это правило... для "высоких" наиутопическая архиутопия...  :)


 
Ketmar ©   (2006-10-04 20:58) [56]

>[55] Palladin(c) 4-Oct-2006, 20:53
>для "низких" это правило... для "высоких"
>наиутопическая архиутопия...  :)
ну, я про идеал и говорил... %-)


 
Prohodil Mimo ©   (2006-10-04 21:46) [57]

Palladin ©   (04.10.06 19:47) [19]
определить вхождение точки в n-угольник (опционально)


Определить самую левую вершину, самую правую, самую верхнюю и самую нижнюю.
После чего пустить 4 луча вверх, вниз, влево и вправо, пока он не достигнет самой крайней граници или не пересечётся с гранью. Если все 4 пересеклись, значит входит :о)


 
Prohodil Mimo ©   (2006-10-04 21:47) [58]

Prohodil Mimo ©   (04.10.06 21:46) [57]

хотя такой вариант не всегда прокатит, но можно и до ума довести :о)


 
Джо ©   (2006-10-04 21:50) [59]

> [58] Prohodil Mimo ©   (04.10.06 21:47)
> Prohodil Mimo ©   (04.10.06 21:46) [57]
>
> хотя такой вариант не всегда прокатит, но можно и до ума
> довести :о)

А зачем доводить? Если изначальный подход неверен... :о)


 
Ketmar ©   (2006-10-04 21:52) [60]

>[59] Джо(c) 4-Oct-2006, 21:50
>А зачем доводить? Если изначальный подход
>неверен... :о)
из мазохизма? %-)


 
Джо ©   (2006-10-04 21:55) [61]

> [60] Ketmar ©   (04.10.06 21:52)
> >А зачем доводить? Если изначальный подход
> >неверен... :о)
> из мазохизма? %-)

Разве что... А я бы лучше выспался... или напился. Чем неверные алгоритмы  доводить до того, чтобы они выдавали псевдо-верные результаты :)


 
Ketmar ©   (2006-10-04 21:56) [62]

>[61] Джо(c) 4-Oct-2006, 21:55
я вот на одну контору писал тестовое задание -- построитель блок-схем. алгоритм был кривой, зато работал на их примерах. меня взяли. %-)


 
Джо ©   (2006-10-04 21:57) [63]

> [62] Ketmar ©   (04.10.06 21:56)
> >[61] Джо(c) 4-Oct-2006, 21:55
> я вот на одну контору писал тестовое задание -- построитель
> блок-схем. алгоритм был кривой, зато работал на их примерах.
> меня взяли. %-)

Неужели эта контора выкупила исходники у Димы? :)


 
Petr V. Abramov ©   (2006-10-04 21:57) [64]

> Какая связь между published, TPersistent и RTTI?
глубокая
все слова очень умные
связи никакой, т.к. published - ключевое слово, TPersistent - имя класса, а RTTI - фича
слово published здесь вообще лишнее, т.к. в нем нет буквы R
слово RTTI тоже лишнее, т.к целиком написано большими буквами
слово TPersistent тоже лишнее, т.к. published и RTTI лишние слова, и по этому признаку оно от них отличается.


 
Джо ©   (2006-10-04 22:00) [65]

TPersistent, кроме прочего — использует  Upper Camel Case, в отличие от остальных слов :)


 
Джо ©   (2006-10-04 22:01) [66]

Тьху, даже не upper camel case, а как его? В общем, что-то из этой оперы :)


 
saxon   (2006-10-04 22:05) [67]

Ну тогда RTTI - просто Upper Case, а published ваще ни какой Upper не использует - оно лишнее. :)


 
Ketmar ©   (2006-10-04 22:05) [68]

>[63] Джо(c) 4-Oct-2006, 21:57
>Неужели эта контора выкупила исходники у Димы? :)
хуже. они посчитали мои написаными нормально. %-)


 
Джо ©   (2006-10-04 22:09) [69]

> [68] Ketmar ©   (04.10.06 22:05)
> >[63] Джо(c) 4-Oct-2006, 21:57
> >Неужели эта контора выкупила исходники у Димы? :)
> хуже. они посчитали мои написаными нормально. %-)

Вай, что делается, что делается... [качаю головой]. :))


 
Ketmar ©   (2006-10-04 22:12) [70]

>[69] Джо(c) 4-Oct-2006, 22:09
>Вай, что делается, что делается... [качаю
>головой]. :))
всё было ещё хуже: они меня на работу взяли. %-)


 
Джо ©   (2006-10-04 22:14) [71]

> [70] Ketmar ©   (04.10.06 22:12)
> >[69] Джо(c) 4-Oct-2006, 22:09
> >Вай, что делается, что делается... [качаю
> >головой]. :))
> всё было ещё хуже: они меня на работу взяли. %-)

Это, простите, вообще ни в какие ворота! ;-)


 
Prohodil Mimo ©   (2006-10-04 22:17) [72]

хотите сказать, что если точка находится внутри многоугольника, все пущенные от неё лучи не достигнут граней?


 
Ketmar ©   (2006-10-04 22:17) [73]

>[71] Джо(c) 4-Oct-2006, 22:14
>Это, простите, вообще ни в какие ворота! ;-)
на я их спас: быстро уволился. %-)


 
Джо ©   (2006-10-04 22:29) [74]

> [72] Prohodil Mimo ©   (04.10.06 22:17)
> хотите сказать, что если точка находится внутри многоугольника,
> все пущенные от неё лучи не достигнут граней?

Нет, хочу сказать, что то, что луч достигнет грани еще ничего не означает:
http://www.unclejoe.ho.com.ua/img/poly.PNG
;)


 
wl ©   (2006-10-04 22:36) [75]

>3. определить вхождение точки в n-угольник (опционально)
я бы стал решать такую задачу геометрически - нарисовать многоугольник, закрасить цветом, отличным от цвета фона, после чего проверить цвет в нужной точке - если совпадает с цветом фона не попадает


 
Prohodil Mimo ©   (2006-10-04 22:46) [76]

Джо ©   (04.10.06 22:29) [74]
А вот это я и имел в виду во втором своём посте.

вот вам второй вариант: определяем точку за пределами многоугольника и пытаемся из первой точки прийти к нему (встретив препятствие - обходим его). Если не удалось, значит мы внутри. :о)

ЗЫ. бредовых идей у меня много, и все их можно заставить работать, даже, если через одно место :о)


 
Чапаев ©   (2006-10-04 22:50) [77]

> а вот это с ходу не решу. потому что лениво формулы вспоминать.

А я бы CreatePolygonRgn()+PtInRgn()... ;-)


 
Ketmar ©   (2006-10-04 22:57) [78]

>[77] Чапаев(c) 4-Oct-2006, 22:50
>А я бы CreatePolygonRgn()+PtInRgn()... ;-)
неинтересно. так кто угодно может. %-)


 
Чапаев ©   (2006-10-04 22:57) [79]

Кто угодно может, да не кто угодно вспомнит вовремя... ;-)


 
atruhin ©   (2006-10-04 22:58) [80]

Треугольник.
Решение сводится к алгоритмам выхода из лабиринта. Например:
1. Вычисляем описывающую область (прямоугольник).
2. Находим ближайшее ребро.
3. Двигаемся по векторам (ребрам), пока не достигнем вершины принадлежащей многоугольнику и описывающей области.
4. Проверяем с какой стороны свободное пространство и вектор. Если с одной стороны, точка внутри.



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

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

Наверх





Память: 0.61 MB
Время: 0.083 c
15-1160100204
vidiv
2006-10-06 06:03
2006.10.29
Интерактивность в PDF


2-1160640883
LeonQ
2006-10-12 12:14
2006.10.29
TFormShaper - установка


15-1160584898
Cooller
2006-10-11 20:41
2006.10.29
Написание программ на Delphi для Win64


2-1160648808
0_archi_0
2006-10-12 14:26
2006.10.29
Не работает код (БД, репликация). Приложение не закрывается


15-1160046641
saNat
2006-10-05 15:10
2006.10.29
Требуется помощь в настройке сети





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский