Швейцарский нож

Автор celler, 12 января 2014, 13:49

0 Пользователи и 1 гость просматривают эту тему.

celler

Предлагаю делать набор разных программок в одном файле. Думаю многим будет полезно.
Правила работы следующие:
1. каждый, у кого есть идея программки, может скачать текущую версию, исправить что-нибудь в ней или добавить в неё свою программку на новом листе и выложить вновь в этой теме;
2. каждая программка может занимать не более одного листа и должна быть открытой и ресурсосберегающей, т.е. не сильно грузить компьютер;
3. разрешается использовать только формулы;
4. можно использовать любые формулы, имеющиеся в актуальной версии LibreOffice.
В качестве начала предлагаю файл, который я сделал недавно экспромтом и который потом мне помог подкорректировать JohnSUN.
И сразу же предлагаю идею следующей программки. Нужно чтобы в Calc можно было раскодировать текст в разных кириллических кодировках.

[вложение удалено Администратором]

celler

Кажется я так бестолково сформулировал первый пост, что никто ничего не понял. Попробую немного растолковать что как и почему.
Целью данного сайта, насколько я понимаю, является популяризация открытых офисных пакетов. Само название "офисные" подразумевает использование их в первую очередь на фирмах и предприятиях. Основным же преимуществом открытых пакетов является их бесплатность, но вот в условиях офиса это преимущество является очень спорным. Во-первых, платные ли или бесплатные программы будут на компьютерах офиса, должно волновать только шефа, а прочим работникам это по барабану. В этих условиях платные программы даже лучше, поскольку бесплатные при необходимости можно легко принести хоть на флэшке, а вот наоборот уже не получится. Во-вторых, бесплатные программы в офисах могут даже расцениваться как нищебродство самих фирм. И в третьих, платность в большинстве случаев означает и возможность полноценной поддержки при необходимости. В итоге, простыми агитациями делу здесь не поможешь. Поэтому нужно придумать что-нибудь более хитрое. Для этого рассмотрим типичный состав офисных пакетов. Это текстовый и табличный процессоры, программы для презентаций, для векторной графики и база данных. Фактически, из всех этих программ "офисным" является только текстовый процессор. Презентации и векторная графика нужны далеко не в каждой фирме, а если и нужны, то только единичным исполнителям. Программы баз данных они вообще не для фирм, вернее они-то для фирм, но только в готовом виде, а вот что-нибудь серьёзное разработать самим в большинстве случаев нереально. Табличный процессор на фирмах это либо просто таблица, либо что-то немного более сложное, но только в бухгалтерии. В итоге получается, что из всего офиса зачастую используется только Ворд. И даже у кого дома установлены офисные пакеты, скорее всего в абсолютном большинстве изредка пользуются только Вордом. И вот здесь вот как раз и появляется замечательная возможность популяризации открытых пакетов. Заключается она в том, что нужно показать, что помимо Ворда есть одна замечательная программа, которая отличается от других тем, что в ней довольно просто делать собственные программы не только для работы, но и для дома, не обладая никакими программисткими знаниями и эта программа Calc. А вот для дома Calc однозначно лучше, чем Excel и не только тем, что бесплатен, но и нормальным интерфейсом. И кто дома нормально освоит Calc, тот и на работе может удивить всех знанием Экселя, поскольку программы по сути одинаковы. А там уже совсем недалеко и до баз данных. Проблема только в том, что абсолютная масса народу даже не подозревает, какой потенциал скрыт в табличных процессорах. Вот поэтому я уже создавал здесь несколько тем, посвящённых возможностям использования табличных процессоров. И в этой теме я тоже предлагаю на простых полезных программках демонстрировать возможности Calc. Здесь даже не столько важна ценность и полезность самих программок, сколько демонстрация самых различных возможностей. Вот в качестве примера я предложил раскодировку кириллических кодировок. Сейчас, казалось бы уже не проблема разобраться со всеми этими кодировками и нормально представить любой текст, например в браузере, но, тем не менее у меня до сих пор на компьютере имеется много файлов, названия которых являются жертвами войн кодировок и нечитаемы. Или вот не так давно на каком-то уже не помню каком форуме один человек просил помощи в вычислении дат, заданных от какой-то исходной даты в количествах дней, месяцев и годов. Там в каких-то архивных документах стоит возраст в годах, месяцах и днях, а нужно как можно точнее высчитать по ним даты рождения. Вот эту программку тоже можно добавить в "швейцарский нож". Можно реализовать какие-то полезные функции например для подсчёта калорий, для фитнеса, режимов тренировок, ведения коллекций, семейных расходов, генеалогических исследований, всевозможных календарных функций, картографических расчётов, школьных и прочих расписаний, изучения языков и т.д.
ПС К сожалению, в Calc, как я недавно узнал, команда переводчиков приняла решение не переводить функции на русский язык. Для того, чтобы им заинтересовались новые пользователи, русский язык там необходим.

celler

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

Добавил в файл программку для кодирования, раскодирования, транслитерации и растранслитерации. Кстати, не понятно, почему для транслитерации не стандартизировали какой-нибудь нормальный вариант, позволяющий производить без потерь преобразования в обе стороны. Добавил туда свой собственный вариант такой транслитерации, придуманный только что.

[вложение удалено Администратором]

celler

Добавил ещё калькулятор дат.

[вложение удалено Администратором]

celler

#4
Ну и ещё статистику текста добавил до кучи.

[вложение удалено Администратором]

JohnSUN

#5
Цитата: celler от 17 января 2014, 23:01
Кстати, не понятно, почему для транслитерации не стандартизировали какой-нибудь нормальный вариант, позволяющий производить без потерь преобразования в обе стороны. Добавил туда свой собственный вариант такой транслитерации, придуманный только что.
Да здесь-то всё просто - больше одного стандарта это то же самое, что и отсутствие стандарта. Просто глянь на http://www.translitor.net/ перечень этих "стандартов" и всё станет ясно.
Прямыми заменами транслитерировать текст просто невозможно. Ты сможешь объяснить своему варианту, почему и Hitler и Google после перевода оба должны начинаться с "Г"? Наверное, сможешь. Но формула получится настолько громоздкой, что для "швейцарского ножа" станет непригодной.
(Повеселил вариант "Fjodor Saweljewitsch Chitruk"->"Фжодор Завелжевитзсх Схитрук"  ;D )
Кстати о формулах. Не хочешь в D3:E68 третий параметр HLOOKUP с константы заменить на (ROW()-1)?
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

celler

Цитата: JohnSUN от 18 января 2014, 12:23Прямыми заменами транслитерировать текст просто невозможно. Ты сможешь объяснить своему варианту, почему и Hitler и Google после перевода оба должны начинаться с "Г"? Наверное, сможешь. Но формула получится настолько громоздкой, что для "швейцарского ножа" станет непригодной.
Почему это невозможно? Если соблюдать определённую последовательность замен, то очень даже возможно. У меня же там неспроста символы расставлены не по алфавиту, а по очерёдности замен. Если повыбираешь там "транслит. обратим." и "русский алфавит" в обеих направлениях для любых русских текстов, то увидишь, что происходит совершенно точное преобразование без потерь и ошибок.
Цитата: JohnSUN от 18 января 2014, 12:23Повеселил вариант "Fjodor Saweljewitsch Chitruk"->"Фжодор Завелжевитзсх Схитрук"
Транслитерация производится с русского языка на определённый транслит и обратно, а с другого неполноценного транслита обратно в русский разумеется не переведётся. И про букву "г" тоже самое - это не программа для перевода текстов, а транслитератор.
Цитата: JohnSUN от 18 января 2014, 12:23Кстати о формулах. Не хочешь в D3:E68 третий параметр HLOOKUP с константы заменить на (ROW()-1)?
Этот параметр с константой имеет то преимущество, что обе таблицы можно переносить в любое другое место без всяких изменений в формулах.

celler

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

JohnSUN

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

celler

Спасибо, но там похоже задачу до решения не довели, наверное действительно сложно такие задачи решать. Однако интересно,- стоит подумать.

celler

Добавил ещё пару инструментов.

[вложение удалено Администратором]

celler

#11
Добавил календарь и планировщик расходов.