БлогNot. Блог ПерСа

числа php алгоритм ссылки общество россия личное политика безопасность браузеры протоколы памятка textprocessing список сервис сервер html javascript шахматы чат избранное email история маразм медвепуты excel дата программирование random блог статистика firefox музыка видео интернет учебное mathcad графика картинка c++ эмоции философия эзотерика windows цвет прогноз сон образование ссср деградация все теги все комментарии свежие изменения


[1-15] [16-30] ... [2761-2775] [2776-2786]


Прикреплённое сообщение, правила и всё такое

Остеклить балкон, лоджию в Новосибирске? Проверено, Вам сюда

Encoding: UTF-8 (Unicode). Primary language: Russian. Для полноценной работы блога нужны включённые в браузере картинки + Javascript + Cookies. Ссылки, открывающие новое окно (вкладку), везде подсвечены.

Даже по законам Эрефии этот блог - не СМИ, все сообщения выражают личную точку зрения своих авторов и являются оценочными суждениями, при этом любые совпадения мест, имён, названий и действующих лиц далеко не случайны. В блоге нет файлов, способных нанести вред Вашему компьютеру или мобильному устройству. Если Вам не исполнилось 18+, срочно отвалите отсюда, прикиньтесь ветошью и не отсвечивайте покиньте этот ресурс. Учтите, что посещая его, Вы вторгаетесь на мою личную территорию :) Страница статьидалее...

19.01.2038, 15:15 [14032 просмотра]


PHP: перевести бесконечную периодическую дробь в обыкновенную

На самом деле, задачка вот такая:

Заданы натуральные величины а, b, c, где а — целая часть вещественного числа, b — дробная часть до периода, с — период. Получить число в виде обыкновенной дроби вида m/n, где m — числитель, n — знаменатель.

Суть в том, что некоторые дроби конечны, например, 1/4 = 0,25, а некоторые - нет, скажем, 1/3 = 0,3333333..., это можно записать как тройку чисел (0,false,3) - где 0 - целая часть, false означает отсутствие части до периода (которая есть у других дробей, например, у 59/55 = 1,072727272... = (1, 0, 72) часть до периода это "0", отличаем от ситуации, когда её нет совсем, как у 1/3), а период это "3".

По идее, реализация такова:

  • сцепить цифры до периода и период в число $d;
  • получить число $d2, в котором столько девяток, сколько цифр в периоде дроби и затем столько нулей, сколько цифр до периода. Например, для (1, 791, 6) получится 9000, т.к. в периоде одна цифра и три цифры до периода, для (2, false, 72) получится 99, в периоде две цифры, а до периода цифр нет. Мы пользуемся "скользкими" преобразованиями вроде strval(false) и число - false, но на данный момент в PHP 8 они работают корректно;
  • от числа $d отнять часть до периода $b;
  • добавив в уменьшенный числитель $d целую часть $a, полученное значение $d1 делим на $d2, сократив дробь, получаем результат.

Вот написанный несколько второпях код, проверен на локальном хосте XAMPP с PHP8. Страница статьидалее...

05.12.2021, 17:48 [11 просмотров]


Ссылки декабря-2021

Это - пополняемая статья, следите за обновлениями.

Не знаю, станет ли эта рубрика традиционной (предыдущий месяц - здесь), но, благодаря стараниям

  1. суверенной росдействительности, поставляющей большинство инфоповодов;
  2. ув. Алексея, присылающего большинство ссылок;
  3. Bulk Opener-а, позволяющего их быстро открыть и просмотреть

- мне точно не придётся скучать. Разгребая с 8 утра всё, накопившееся в почтах-чатах и т.п. за пару дней беспробудной работы, добираюсь и до ссылок... Страница статьидалее...

01.12.2021, 13:09 [32 просмотра]


Как зайти в интернет без браузера

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

Заметим, что в реальности "преимущество" сертификата и протокола HTTPS одно - "в случае чего" сайт будет заблокирован целиком, а не постранично.

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

Заходить будем через справку HTML. Она работает даже тогда, когда заблокирован Internet Explorer/MS Edge. Страница статьидалее...

01.12.2021, 09:17 [37 просмотров]


PHP: редактируем список строк

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

С некоторыми поправками можно использовать подход из этой заметки. Предполагается, что строки могут содержать символы разметки HTML и всё закодировано в кодировке Юникода UTF-8. Строки автоматически избавляются от лишних разделителей в начале, конце и между лексемами. Если текстовый файл отсутствует, он создаётся автоматически с одной пустой строкой.

Также предполагаем здесь, что редактирование не требует авторизации или ввода пароля. Кстати, простейший способ "защиты" скрипта в таких случаях - сохранить его под случайным именем, на которое у Вас есть ссылка, а в файле .htaccess запретить просмотр оглавления папки директивой Options -Indexes (ну или создать в папке скрипта файл index.html нулевого размера). Страница статьидалее...

27.11.2021, 12:50 [34 просмотра]


Javascript: читаем текстовый файл с сервера в таблицу HTML

В отличие от этой заметки, работаем с "простым" текстовым файлом, а не с JSON. Тем не менее, все "важные моменты", указанные в конце статьи по ссылке, верны и здесь.

Предположим, что табличные данные находятся в текстовом файле на хосте. В одной строке файла содержится одна строка таблицы, а данные будущих ячеек разделены символом табуляции. При этом необязательно, чтобы количество столбцов во всех строках было одинаковым, "недостающие" столбцы просто заполнятся пробелами справа. Данные ячеек могут содержать разметку HTML.

Вот пример файла 1.txt, который находится в одной папке на хосте с документом скрипта и обрабатывается им: Страница статьидалее...

27.11.2021, 10:53 [42 просмотра]


Три хода - три исхода

Случайно родился такой тип задачи в "лёгкой" практической партии.

8/8/1p3k2/p1p2p1K/P1P2P2/1P6/8/8 w - - 1 15
8/8/1p3k2/p1p2p1K/P1P2P2/1P6/8/8 w - - 1 15

Увидев, что здесь у меня всего три возможных хода, причём, Kh6 в норме ведёт к выигрышу, Kh4 - к ничьей, а b4 - к проигрышу, подумал, нельзя ли насочинять ещё такого же и замутить новый жанр учебной шахматной задачи с классификацией возможных из позиции ходов по группам "выигрыш-ничья-проигрыш"? Страница статьидалее...

27.11.2021, 00:17 [38 просмотров]


Карлсен - Непомнящий, матч за звание чемпиона мира по шахматам - 2021: action

Это - пополняемая статья, следите за обновлениями.

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

Вот краткое резюме по матчу.

Место проведения: Дубай, ОАЭ.

Игровые дни: 26-28, 30 ноября, 1, 3-5, 7-8, 10-12, 14-15 декабря (последний день - если будет тай-брейк).

Выходные дни: 29 ноября, 2, 6, 9, 13 декабря.

Начало игры: 15:30 мск (19:30 нск).

Регламент: 14 партий в классику с контролем 120 минут на 40 ходов, затем 60 минут на 20 ходов и 15 минут до конца партии с добавлением 30 секунд на каждый ход, начиная с 61-го. Предложения о ничьей не допускаются до 40 хода. В случае общего ничейного итога 14-ти классических партий проводится тай-брейк: 4 партии с контролем 25 минут + 10 секунд на ход, затем (при равенстве счёта) 2 партии 5 минут + 3 секунды на ход, далее (при необходимости) еще 4 блицматча из 2 партий. Если 10 партий не выявят победителя, играется решающая партия в армагеддон, цвет определяет жеребьёвка, у белых 5 минут, у чёрных 4, с добавлением 2 секунд после 61-го хода, ничья в пользу чёрных.

Для Магнуса Карлсена это пятый матч за корону чемпиона мира (2013, 2014, 2016, 2018 гг.), для Яна Непомнящего – первый.

Призовой фонд: 2 млн. евро, 60% победителю (при победе на тай-брейке 55%).

Смотреть трансляции, как нам обещают, можно много где:

  • на ChessPro (ссылки "ChessPro Live", видео - рус. и англ. с канала ФИДЕ, встроенный анализ от ГМ, чат);
  • на "шахматном ТВ" от chess.com (с Костенюк, Грищуком и др., та же трансляция в Twitch, на YouTube);
  • на chessbomb (ходы, анализ Stockfish 14.1 и чат);
  • на канале ФИДЕ (с Шиповым и Беленькой). На телеканале Матч.Страна - то же самое; на ruchess (сайте ФШР) - ещё одна копия с Шиповым; англоязычные трансляции на канале ФИДЕ ведут Ананд и А. Музычук;
  • на канале самого Шипова комментатором заявлен Филимонов;
  • на канале Левитова заявлены Карпов, Крамник и Карякинд;
  • Суров обещает вечерние разборы партий с Дреевым на своём канале;
  • на chess24.com тоже есть не только ходы, Stockfish 14 и чат, но и видео, комментируют Аниш Гири и Юдит Полгар (выбрать партию из списка);
  • обзоры партий (на англ.) делаются и на канале Гарри Каспарова;
  • г-н Sesse свой "глубокий анализ" обещался на партии включать;
  • собраны ссылки на текущие стримы о матче и на Личессе - выберите во время партий слева в списке игру.
Страница статьидалее...

25.11.2021, 16:59 [279 просмотров]


Пётр I и пустота

Читатель, начитавшийся предыдущей заметки, проявил себя почти болгарином в плане восхищения моими скромными выкладками, да ещё и "самый лучший вариант для России на сегодня" его интересует (не задан критерий "лучшести", для кого лучший?).

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

Я уже неоднократно пейсал на все такие темы, но истина не тускнеет от повторения, как известно. Конечно, лучше было бы с утра и трезвым, как про Сурка, чем вечером и в том (уставшем) состоянии, как сейчас, но жизнь, как сказал В.В. Путин, вносит свои коррективы в наши планы.

Если коротко, то примерно так. Страница статьидалее...

23.11.2021, 21:04 [46 просмотров]


Куда делся Сурок? Распальцовка невежества

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

Убойно в начале про Гегеля и Гёделя. А как же Бабель, Бебель, Гоголь и Мендель? Страница статьидалее...

23.11.2021, 14:40 [38 просмотров]


Excel: количество лет и месяцев до даты или от неё с правильным склонением слов

Задача состояла в том, чтобы по входной дате из одной ячейки выводить в другой сообщение вида "в этом месяце", "остался один месяц", "прошло 13 лет 5 месяцев" и т.п., с правильным склонением слов. Дни не учитываются, даже если вчера было 31-е, а сегодня 1-е.

Также требовалось экономичным способом проверить корректность ввода даты в исходной ячейке.

Если исходная дата находится в ячейке A2, формула для проверки получилась такой:

=ЕСЛИ(ЕОШИБКА(СЕГОДНЯ()-A2)=ЛОЖЬ;"дата верна";"ошибка!")

Формула для отображения периодов Страница статьидалее...

20.11.2021, 08:48 [43 просмотра]


Простой генератор текста с помощью цепей Маркова

Вот здесь мы делали на C++ достаточно сложный проект для генерации текста с помощью цепей Маркова, на днях понадобилось что-то попроще, приведу мини-проект из одной функции на PHP.

Обычно подобная программа для цепей Маркова разбивает входной текст на цепочку токенов-слов, затем, перемещаясь по ним в некотором окне фиксированного размера, сохраняет первые $keySize слов в качестве префикса, и добавляет ($keySize+1)-ое слово, выбранное из набора соответствующих префиксу суффиксов.

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

Скрипт выполнялся на локальном хосте XAMPP с PHP 8.X, исходный файл data.txt ("Колобок") также прикреплён ниже. Страница статьидалее...

20.11.2021, 08:08 [37 просмотров]


13 лет этому блогу

Да-да, как раз сегодня. С прошлой годовщины я добавил сюда 188 записей, из которых несколько отметил как "избранные", но если вспомнить, что отложилось в памяти за минувший чумной год, в "плюсе" будет относительно нормально проведённое лето и "рост благосостояния" по-российски - то есть, материальные потери составили меньший процент, чем доля работы, от которой я был насильственно "избавлен", а в "минусе" окажется примерно то же, что у всех - общее ухудшение обстановки в стране и социуме, неуклонно прогрессирующая эпидемия и связанные с ней потери множества людей, социальных связей и способов проведения времени. Страница статьидалее...

14.11.2021, 17:03 [59 просмотров]


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

...второй раз за сутки всплыла тема, а это ведь не обучение Димы Личессу, а гораздо важнее. Думаю, последовательность действий понятна:

1. Установить в своём браузере savefrom.net (при условии работающего uBlock Origin, конечно).

Найдите дополнение SaveFrom.Net в Firefox (меню-"гамбургер" ≡ справа вверху - Дополнения и темы, SaveFrom.Net в поле поиска), не используйте Chrome, хотя тоже ничего страшного не будет, только перспектива жизни "железа" короче.

1. Включить в своём браузере savefrom.net
1. Включить в своём браузере savefrom.net

Когда не нужен, отключаем этой же кнопкой, комбинация клавиш Ctrl+Shift+A - быстрый вызов окна управления расширениями.

Страница статьидалее...

13.11.2021, 23:20 [90 просмотров]


Количество точек в окружности; задания по основам Mathcad

В тему учебных точек и окружностей в Mathcad, примерно после вводных работ "для самых маленьких" (достаточно номеров 1-4 и 7, всего 8-10 ак. часов).

Задан набор координат точек на площади и окружность радиуса R с центром точке (x0,y0). Найти количество точек, попадающих в окружность (K), номер точки, для которой сумма расстояний от неё до всех остальных точек будет минимальной (n).

Расчёт не должен зависеть от значения ORIGIN (по умолчанию равного нулю). Изобразить объекты задачи графически. Страница статьидалее...

13.11.2021, 19:28 [68 просмотров]


[1-15] [16-30] ... [2761-2775] [2776-2786]