Обновить
14

Химик и программист.

32
Подписчики
Отправить сообщение
Некорректное сравнение: велосипед и Буран неуниверсальны, а Delphi универсален, как и многие другие языки: можно и в космос и за хлебом в ближайший магазин.
их накопилось множество, у меня установлено более 130 штук
Это капля в море, если, нпр., сравнить с количеством плагинов для Фотошопа :)
преодолевать довольно высокий порог вхождения в мир Delphi
Откуда такая информация? ИМХО в Delphi минимально низкий порог вхождения. Он дополнительно понижен громадностью «мира Delphi»: огромное количество книг и сетевых источников + куча форумов, где всегда можно получить совет по возникшей проблеме. А сколько таких источников для NeoBook?
Если сравнивать, то ИМХО нужно в первую очередь смотреть насколько данная среда (NeoBook) универсальна. Часто бывают среды, где некоторые простые типовые вещи сделать очень трудно или даже невозможно.
Поэтому я решил создать программу самостоятельно и стал читать книги по Delphi, потом Delphi для чайников, потом для школьников, потом для детей… Я бы, наверное, дошел до уровня «Delphi для младенцев», если бы такая книга существовала.
А какие конкретно проблемы были с Delphi? Нпр., не самая новая книга Фаронов В.В. Delphi 5 учебный курс. Там уже на 30ой странице детально рассказано как окошко с «Привет, Мир» сделать, причем предыдущие страницы можно вообще не читать.
Такую программу:
Избранная для компьютеризации методика очень проста (предъявить вопросы, перемножить баллы полученные в виде ответов и выдать интерпретацию в соответствии с заданным диапазоном),
можно сделать из «Привет, Мир» следующим ходом за 1 день. Только надо не просто книгу читать, а за ПК, где Delphi запущен. И по ходу чтения делать, что сказано в книге.

Программирование это не только знание языка программирования и среды разработки, но и знание алгоритмов и т.д. За один день всё это не изучить, но для приведенной задачи с опросом это и не нужно.

Книги типа «для чайников» потенциально очень опасны. Просто учебник написать гораздо проще, чем популярную книгу. В погоне за популярностью некоторые авторы настолько упрощают, что «выплескивают с водой ребенка» и понять их даже спецу бывает непросто.
В кабинетах для лабораторных работ можно найти всевозможные крепежные элементы, нитки, микроконтроллеры и датчики (для желающих работать с LabView), измерительные приборы. Тут допускается полный полет фантазии. Лично мне очень нравится такая атмосфера, не люблю рамки.
Когда учился в МГУ в каждой лабораторной было четкое задание, которое нужно выполнить заданным методом с применением определенной аппаратуры. Какой тут полет фантазии? Или сейчас под лабораторной работой понимается что-то другое?
Среди моих знакомых бытует мнение, что самостоятельно изготавливать печатные платы (ПП) бесполезно. Учитывая, что современные компоненты далеко ушли от DIP корпусов, то кустарно травить платы под них даже и не стоит пытаться. Тем не менее необходимость в быстрой оценке того или иного компонента всегда есть, и ждать несколько суток заказанной платы времени нет.
Давно не делал платы. Но интересно куда ушел прогресс. Недавно в другом обсуждении меня хором уверяли, что сейчас самостоятельно ПП никто не делает — а здесь читаю, что делает. Спасибо — можно сказать вернули мне веру в человечество! :)

И вопрос. ИМХО луше всего травить в соляной кислоте и перекиси водорода. Достоинства: всего несколько минут (зависит от концентрации), комнатная температура, не выпадает кристаллов. Недостатки: несильный характерный запах «солянки» — лучше работать на воздухе, у открытого окна, еще лучше в вытяжном шкафу. Читал, что можно использовать лимонную кислоту и перекись, но сам не пробовал.
Только давайте будем спокойнее. Мы не обязаны этим заниматься и занимаемся для собственного удовольствия. Еще могу Вас успокоить: я реализовал этот алгоритм, убедился, что он работает так, как про него написано (что я и предполагал). Единственная проблема — это доказательство, и Вы в общем решили эту проблему — я ведь не говорю и не говорил, что Ваше доказательство никуда не годится. Очень даже годится, но ИМХО нуждается в чистке от неоднозначностей и шлифовке. Может Вам от формата обсуждения стоит перейти к формату статьи? Если нужна реализация — могу ее Вам выслать. BTW интересно, что несмотря на O(n) программа показала не самые быстрые результаты, чем в листинге 2 обсуждаемой здесь статьи: для n =100М — 1.109 сек., против 0.859 сек.
Предполагаю, что Вы хотите сказать:

Утверждение 2: Из вершины х=i/lp(i) выходят ребра в вершины j=i = p*u т.ч. p — простое и p<= lp(u).

Выше без изменений. Верно?

Переименуйте в определении графа i в u.
Извините, совсем не понял. Где определение графа? Вы это называете определением?:
Введем граф из n-1 вершин, пронумерованных от 2 до n.
Здесь нет i.
i — обозначает произвольную вершину.
Нет, Вы определили:
Для всех составных i


Давайте разименуем: пусть х любое из 2 до n.
Получаем:

Утверждение 2: Из вершины х выходят ребра в вершины j = p*i, т.ч. p — простое и p<= lp(i).

По построению мы знаем, что х= i/lp(i), j = i, т.к. только из i/lp(i) в i выходят ребра.

Получаем:

Утверждение 2: Из вершины i/lp(i) выходят ребра в вершины i = p*i, т.ч. p — простое и p<= lp(i).

i = p*i — абсурд.
Для всех составных i проведем ребро из i/lp(i) в i.
Конец ребра в i по построению: т.е. i/lp(i) — начало, i — конец, — ok. Но тогда: как возможно, что из i выходят ребра (т.е. i — начало)?:
Утверждение 2: Из вершины i выходят ребра в вершины j = p*i,
По построению в i ребра только входят (i всегда конечная вершина). Повторю цитату еще раз:
проведем ребро из i/lp(i) в i.

Предполагаю здесь конфликт имен, когда одинаковыми именами названы разные сущности. Вижу, что ранее я был недостаточно внимателен и только сейчас догадался, что разговор про орграф — теперь понял Ваше обозначение ребра типа i/lp(i)->i, т.е. ребро из x в y (x->y) и из y в x (y->x) — это разные ребра.
Могли бы вы уточнить вашу позицию?
Обычная позиция, как для математики, так и для CS. Человек узнает про нетривиальную теорему и кроме формулировки типа «Теорема: алгоритм Х имеет сложность O(n).» ему требуется доказательство, чтобы согласиться. И это не значит, что он изначально не согласен или обвиняет кого-то в некомпетентности. Совершенно стандартная позиция.
обвинения авторов википедии в некомпетентности
Скорее в халтуре. Выше я предположил:
Можно предположить, что авторы вторичных источников разобрались в первичном, но при пересказе опустили важные моменты, сделав вид, что эти моменты очевидные. Такое, к сожалению, случается с нетривиальными алгоритмами. В результате четкое наглядное доказательство превращается в запутанный ребус.
Теперь, когда я увидел первоисточник, появилось второе обвинение: в правилах вики записано, что вики не место для оригинальных исследований. Вы признали:
Да, псевдокод в Вики совсем не похож на код в первоисточнике.
По упомянутому и совершенно обоснованному правилу вики — должна быть ссылка на авторитетный источник, где строго доказан именно этот псевдокод.
привел набросок формального доказательства
Спасибо. К сожалению, наброски не доказательство. Тут принципиальный момент.
без достаточного знания теории графов
Я не увидел в Вашем примере недостаточность знаний в области теории графов. Вроде со стороны графов все просто. М.б. единственная сложность: мое замечание про максимальное число ребер графа? Если это не очевидно — могу привести очень простое и короткое доказательство.
Не n.

А от 0 до, видимо sqrt(n)/log(n)

То n, то не n ;) Извините, но «видимо» в доказательстве воспринимается неуместным. Выше я уже сказал:
М.б., если поднять первоисточник, то там всё это показано достаточно строго.

Только что попробовал поднять первоисточник — удалось за одну минуту. Попробуйте и Вы. Статья небольшая, но очень насыщенная. По первому впечатлению там иное, гораздо более сложное доказательство и два иных псевдокода. Многое завязано на представление множеств в машине и на реализацию операций со множествами, в частности, на реализацию next, о которой писали Дал У., Дейкстра Э., Хоор К., Структурное программирование. М.:«Мир», 1975. Но которую Вирт и др. так и не реализовали. Особенно привлекла внимание фраза на последней странице в разделе обсуждение:

We see here a distinction between complexity of an algorithm and the complexity of its mathematical underpinninпs, two quite different things.


В общем, есть о чем подумать — давайте думать вместе, похоже, с этим алгоритмом не так просто, как показалось авторам википедии.
Внутренний цикл по p — это беребор всех ребер в списке смежности для этой вершины. Там n вершин.
Не понял: в 1 списке смежности (для 1 вершины) n вершин?

Еще хочу уточнить, что означают "->" и "<= "? Второе означает не больше, т.е. меньше или равно?

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

(n^2-n)/2,
где n — число вершин.
Думаю, везде во все времена больше зависит от личности начальника по ТБ. И личности работника. Так в комнате, рядом с моей, работал очень опытный человек. Причем не только с позитивным, но и с негативным опытом: до нашего знакомства он отравился нитрометаном. И вот он берет под тягой бутьль с метанолом: ок. 500 мл., толстое стекло, притертая стеклянная пробка, сверху притертая стеклянная нахлобучка, яркая крупная надпись, крупный череп с костями. Звонит телефон. Не выпуская бутыль из рук идет к телефону, снимает трубку, ставит бутыль на стол рядом с телефоном. Не раз такое наблюдал. Вроде ничего страшного, но метанол, пусть и хорошо закрытый, на письменном столе — ИМХО не комфортно;)
Работал с плавиковой только 1 раз в СССР, когда на 1ом курсе ХФ МГУ ей надо было мыть кварцевые ампулы от кварцевой пыли, потом туда загружал шихту, откачивал, запаивал кислородной горелкой и вешал на мотор, который неделю тянул их через трубчатую печь — растил кристалл (такая была курсовая). Тогда никаких спец. допусков не требовали. После учебы пришел в НИИ РАН (тогда АН СССР). Там, когда стал нужен метанол, отв. за ТБ дал инструкцию на 6 страниц — прочитал, подписал. Но вот когда захотел собрать установку для флешфотолиза, где было 25 киловольт (не так много — как в ТВ на ЭЛТ), гл.энергетик НИИ заставил проходить курсы по ТБ для своих бригадиров-электриков: 5 занятий по часу, вел прокурор из министерства (не помню какого), в основном рассказывал поучительные истории из своей богатой практики, было интересно — матерые бригадиры с большим опытом слушали раскрыв рот.
В лаборатории не знали об опасности плавиковой кислоты?
В рамках инструкции ТБ, об ознакомлении с которой ставят подпись, конечно, все знали. Все работали в перчатках и под тягой. Но инструкции не отмечают, что она настолько опасна. Для сравнения: сокурсница на практикуме бромом обожглась, через три дня приступила к занятиям, правда с перевязанной рукой.
В одной лаборатории всего капля плавиковой кислоты попала сотруднице на палец, сразу смыла водой, но на больничном держали целый месяц. Рассказывали ее сослуживцы. Все удивлялись — никто не думал, что такая подлая кислота. М.б. личная предрасположенность — проверять на себе никто не стал. Но лучше быть с ней осторожнее.

Еще бы добавил про уксусную эссенцию (70—80%) — ее часто используют в быту, забывая о резиновых перчатках. А действует она на всех по разному.
Про нейтрализацию внутри организма — тоже не пишут.
Слышал историю, как первокурсник решил попробовать на вкус щавелевую кислоту и закусил содой для нейтрализации. Госпитализировали с диагнозом язва желудка, после выписки отчислили.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность