-
Имеющих решение (смысл их решать таким способом) только при наличии скоростного "вычислителя" (PC подойдет :))
Мне понравилась такая: Не знаете ли Вы алгоритма определения площади объекта, определяющего площадь рисунка растрового или векторного(без разницы), т.е. рисунок не прямоуголник, а некая безформенная область. И просто надо задаваясь масштабом и этим рисунком определить на выходе площадь объекта. У меня и у самого встают `волосы дыбом` при одной только мысли вручную интегрировать данное художество :(. Надо вычислить площадь пруда произвольно сложной формы. Обводим этот пруд прямоугольником с известными длиной L и шириной W - такими, чтобы весь пруд заведомо оказался внутри прямоугольника. Случайным образом кидаем в прямоугольник N камней и считаем количество всплесков. Пусть их было M. Тогда с определенным приближением площадь пруда будет равна M * L * W / N. При достаточно большом N получаем практически точное значение (с погрешностью, во всяком случае, не хуже, чем дают детерминированные методы численного интегрирования). Метод, как видите, очень прост. "Кидание камней" моделируется через Randomize и Random, а "всплеск" можно проверить, скажем, через цвет пикселя (конечно, сначала надо чем-то залить обрамляющий прямоугольник). Юрий Зотов
-
Организация внедряет новое клиентское ПО для своих клиентов. Ранее клиенты использовали разное ПО от разных производителей.
В новом и старом ПО есть справочники контрагентов. Хранение справочников было реализовано на различных субд различных версий и типов.
Требуется дешево и быстро обеспечить миграцию стправочников в новое ПО.
Решение: Не заморачиваться вообще с импортом данных из разнородных субд на у клиентов. Наполнить новые справочники по имеющимся в организации клиентским документам (платежкам)
-
> Наполнить новые справочники по имеющимся в организации клиентским > документам (платежкам)
Платёжки из баз проще вырезать ? Жесть. Есть специальный софт - завёться скипт на perl-е которым всё и делаеться. Например у моей конторы ~ 1500 юрлиц. В прошлой ~ 4000-4500 Представляюеш сколько их с бумаги переносить ?
Решение нестандартное : Импортировать в свой софт платёжки через выгрузку с клиент-банков, они в 95 % случаях имеют выгрузку истории платежей.
-
Площадь легко искать, я по дискавери в программе "Грязная работёнка" видел - там Майк работал на фабрике по обработке шкур, и показали механический станок для определения их площади. станок прошлого века, но точный - суть работы над столом много колёс подряд - |||||||| между колёс и столом просовывают шкуру, колёса катятся по шкуре, где нет шкуры там не катятся. и в зависимости от угла поворота колёс вычисляется площадь и показывается стрелкой)) это как вручную интеграл искать - разбивать на области вертикальные и суммировать, изящное решение этот станок :)
-
> Мне понравилась такая:
Это даже не смешно, "патаму-чо" метод "Монте-Карлы" известен с незапамятных времен и достаточно широко применяется
-
Платёжки из баз проще вырезать
Они и вырезаются из платежек. Но не у клиентов. В старом ПО зоопарк субд включая всякую экзотику. В чем вся и соль.
-
> метод "Монте-Карлы" известен с незапамятных времен
И что из того? Если я не знаю про таблицу умножения и пытаюсь вычислить 2+2+2+2+....+2 и мне кто то подскажет, что существует операция "*" , я ему только спасибо скажу. Другое дело что "неожиданным решением" назвать не возьмусь :)
-
хотел агит.работу провести, показать новичку как можно комп применить
спасибо за примеры ...
-
Кнута что-ли почитай. У него таких красивых примеров...
-
интересует неожиданное, казалось бы, не связанное с программированием
-
>Vlad Oshin ©
:)
1. Измерить высоту останкинской башни: Берем бутылку и двигаем ее перд взглядом до тех пор пока не закроем башню, меряем высоту бутылки и расстояние до нее. Отходим на 100 метров и проделываем то же самое. Составляем пропорции и считаем высоту.
2. Измеряем скорость света: Оказываемся на одном радиусе с ..Юпитером, замечаем время затмения спутника. Ждем около полугода - оказываемся на противопложнлом радиусе с ним, замечаем время затмения того же спутника. Считаем скорость света.
:)
-
А где программирование? тогда так:
> Измерить высоту останкинской башни
берем twebbrowser, кидаем на форму, navigate на www.ya.ru и: Останкинская телебашня — телевизионная и радиовещательная башня, расположенная в Москве. Высота — 540 м
> Измеряем скорость света
берем twebbrowser, кидаем на форму, navigate на www.ya.ru и: Скорость света в вакууме — фундаментальная физическая постоянная, по определению, точно равная 299 792 458 м/с :)
Надо показать интерес к программированию группе из последних классов Пруд из [0] интересен тем, что можно брать заранее обсчитываемую фигуру. Чтоб они сами могли посчитать и проверить рассчет этого метода.
Естественно, этим не ограничиваюсь.. Сколько мы тут бились про вероятности в казино - тоже приобщу пару тестиков, остались случайно процедурки.
-
> Надо показать интерес к программированию группе из последних > классов
Нууу... если так... Тогда надо игрушки показывать...
IMHO, надо интерес не к программированию пробуждать, а интерес к работе головой.
-
> boriskb © (27.08.08 12:37) [12]
Ага, пусть пишут крестики-нолики самообучающие или программу, выводящую алгоритм перекладывания в Ханойских башнях.
-
Меня впечатлило в свое время следующее решение на C такой задачи: получить номер первого установленного бита для 64-битного числа и сбросить его. Применялась для шахмат, поэтому номер бита заменен на константу поля (A1 = 0, B1 = 1, ..., H8 = 63). static const FLD LSB_Magic[64] =
;
static inline FLD pop_lsb_inner(U64* pb)
-
Найти нерекурсивное решение задачи о ханойский башнях. Это можно даже и без компьютера, даже лучше, если я ханойский монах, то с рекурсией в уме возиться - себе дороже, а нужно просто правило, которое можно прокрутить в голове.
-
Найти нерекурсивное решение задачи о ханойский башнях. Это можно даже и без компьютера, даже лучше, если я ханойский монах, то с рекурсией в уме возиться - себе дороже, а нужно просто правило, которое можно прокрутить в голове.
Решение. Нумеруем башни 1, 2, 3, и представим, что они образуют кольцо. На нечетных ходах перекладываем самую мелкую из верхних по часовой стрелке. На четных - самую большую перекладываем против часовой стрелки. На всех ходах пропускаем колышек, если нельзя на него перекладывать, и фишку, если ее вообще нельзя переложить. Например
[321] [] [] (на первом колышке три фишки размеров 3, 2 и 1, фишку 1 передвигаем вперед) -> [32] [1] [] (2 назад, она наибольшая из верхних) -> [3] [1] [2] (1 вперед) -> [3] [] [21] (3 назад, колышек [21] пропускаем, на него нельзя положить 3) -> [] [3] [21] (1 вперед) -> [1] [3] [2] (2 назад) -> [1] [32] [] (1 вперед) -> [] [321] []
Этот метод работает для любого числа N фишек и требует 2^N-1 ходов. Доказывается по индукции.
|