wieiner_ - старая кодобаза [игры]
December 18th, 2023
11:12 pm

[Link]

Previous Entry Add to Memories Tell A Friend Next Entry
старая кодобаза
вьітащил на поверхность свою старую кодобазу на с++, еще 2006 года где-то , может раньше.
Там тересная штука "стековая машина" tscc -- типа кастомный контейнер, но очень хитрО устроенный
и с вопиющим глюком в-середине (исправим).

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

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

в следующем слое -- сделан "список списков"(tscc), в который можно ложить и tsc, и сам tscc.


видимо из-за нехватки времени, или неоссиляторства, я тогда отвлекся на что-то другое и момент был упущен.
Я не протянул поддержку указателей в самый нижний уровень.
в результате, явная ошибка. (может типа заглушка). что в одном месте значение указателя на класс
конвертируется и копируется в строку char[] и ложится в таком виде в (tsc), а в другом месте извлекается,
конвертится в длинное целое и преобразуется к указателю. Но все это так куртуазно обставлено,
что меня терзают сомнения не шутка ли это , а может просто заглушка до лучших времен. вот я и добрался до єтих времен. ТАм еще с макро "цирк с конями".. целые куски кода задефайнены. я уж понемногу вручную по-препроцессил.. )) не афигенные времена были...

Current Mood: sick
Current Music: -- нечто более адское --

(13 комментариев | сказать)

Comments
 
From:(Anonymous)
Date:December 19th, 2023 - 12:12 am
(Link)
а ты как, навыки программирования с 2006 то не растерял? а то у меня просьба есть - написать программу архиватор из пункта 1)
https://www.linux.org.ru/forum/development/17428191
[User Picture]
From:[info]wieiner_
Date:December 19th, 2023 - 08:36 am
(Link)
не, не растерял. Только сейчас я загружен работой -- pet-project по L4, пока не устроился на настоящую, денежную.
В L4 закончена формализация достаточно большого куска, это надо запрограммировать (ну я тут писал про додекаэдры, октаэдры Хайдеггера, преобразования-экстракции), кроме того за 5 лет пока я активно работал в разных компаниях -- времени не было, к тому же неизвестно еще, что "погибло в пожаре войны" (часть наработок, но не по Л4, а еще школьные 1991-1998 г., которые были у меня в ДосБоксе, все конспекты и архив фотосканов моих идей по Л4, и архивы еще два очень важных).

Вобщем у меня есть чем заняться, но смотрю-читаю сейчас, может оно мне как-то н-надо. отпишусь еще..
[User Picture]
From:[info]wieiner_
Date:December 19th, 2023 - 08:41 am
(Link)
автор q250?
Это тюменец с "плакатом Кадьірова"?
Надеюсь его выпустили. Я виноват перед ним, не понял вначале, что он наш лжровец, к тому же у меня на нашего минского тюменца одного был зуб по работе. Но он не тюменец на самом деле, тот минский, он откуда-то с самого севера, якутия-чукотка. В Тюмене только учился.
[User Picture]
From:[info]wieiner_
Date:December 19th, 2023 - 09:42 am
(Link)
ну что, я прочитал..и про пункт 1, в том числе -- думаю это старый Ситский Принцип "Правило 2-х". Его проявление во всей этой математике.

Я не совсем уверен , что , как q250 пишет в первом пункте мощности отличаются на 2. я тут на бумажке посчитал, проинтегрировал (от 1 до N-1) показательную функцию (2^N)
и заменил основание логарифма, у меня получилось, что во втором случае сумма(интеграл) равна (Log_2(e))*(2^(N-1)-2) , не знаю может єто можно как-то упростить, но єто явно не 2^(N-2), єто

(Log_2(e))*(2^(N-2)-2)/2

численно может оно и близко к этому 2^(N-2). ;-) так что этим можно воспользоваться.

если не переходить к новому основанию, то результат интегрирования будет, весьма похож на 2^(N-2), а именно:

( 2^(N-2) ) / 2Ln2 ) - 2/Ln2

знаменатель первого терма -- примерно 1.3 , а второй терм-вьічитаемое равен
2/Ln2 == 1.44

еще можно решить уравнение при каком N решенияи совпадут

( 2^(N-2) ) / 2Ln2 ) - 2/Ln2 = 2^(N-2)

у меня получилось
N = 4 - Log_2 ( 1-2Ln2)

учитьівая, что (1-2Ln2) == (1 - 1.3) < 0

то решений нет, но что-то окололо строки из 4 символов ))
весьма четверично ))




[User Picture]
From:[info]wieiner_
Date:December 19th, 2023 - 10:02 am
(Link)
*нет решений в области действительньіх чисел, а в комплексной плоскости то решения есть ))
[User Picture]
From:[info]wieiner_
Date:December 19th, 2023 - 11:39 am
(Link)
** ошибка в первой формуле, не
(Log_2(e))*(2^(N-2)-2)/2

а

(Log_2(e))*(2^(N-2)-4)/2

конечно же, но дальше єта ошибка не распространилась
From:(Anonymous)
Date:December 19th, 2023 - 02:36 pm
(Link)
он, да. выпустить то выпустили, а вот компьютер пока не вернули, пишу из под анонима.

какие интегралы, какие логарифмы? в пункте 1) описывается простая идея, вот сейчас рисовать на бумаге придется. пусть, для простоты, возьмем N = 5, те мы взяли все пятибитвые файлы, от "00000" до "11111". выпишем их в столбик, один под другим. таблица начнется так
00000
00001
00010
итд до
11111
понятьненько? а теперь справа строго напротив каждого файла\строки напишем все файлы, которые меньше хотя бы на бит, не включая пустой файл. эта часть таблицы будет выглядеть так
0
1
00
01
итд до
1111.
видно что только две пятибитовые строки\файлы не получили своей пары? там в треде даже картинки есть, для случаев N = 5, N = 4 и N = 8. твоя задача как программиста реализовать данную схему превращения одних строк\файлов в другие для случая ну допустим всех одно-килобайтовых файлов, или N = 8192.
[User Picture]
From:[info]wieiner_
Date:December 19th, 2023 - 03:29 pm
(Link)
немножко совсем непонятно. я посмотрел и камент на сайте.
неясно где натуральное число, а где бинарное.

тоесть бинарное это просто список двоичных чисел,
например пятиразрядньіх (от 0 до 2^6-1)

00000
00001
00011
...
11111

===
ок
а соответствие как?
чего оно 0, 1, 00, 01 ?
почему первьіе две строки однразрядные, а вторые двухразрядные?
и первую же строку вьікидьіваем?
[User Picture]
From:[info]wieiner_
Date:December 19th, 2023 - 03:32 pm
(Link)
или ты просто их перечисляешь?

"таблица М - таблица соответствия бинарной строки натуральному числу: Ø-1; 0-2; 1-3; 00-4; 01-5 итд"
я ннп
From:(Anonymous)
Date:December 20th, 2023 - 01:48 am
(Link)
https://imgur.com/a/YiMWjPF
вот картиночка из треда для N = 5 и N = 4. программа делает проверки входных данных. если длина файла равна числу N и файл не запрещен на вход, те не является в нашем случае строкой вида "00000" и "11111", то файл из левой колонки переводится в файл из правой колонки. если длина файла меньше N, то файл переводится из правой колонки в левую. в остальных случаях программа должна выдать ошибку.

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

таблица м - умозрительная конструкция необходимая для осуществления подобного перевода.

[User Picture]
From:[info]wieiner_
Date:December 20th, 2023 - 08:36 am
(Link)
теперь понятнее. спасибо.
разберусь. у меня тут "опупение" -- продвиги с кубиком 6х6х6.
немного освобожусь -- займусь
From:(Anonymous)
Date:December 20th, 2023 - 03:19 pm
(Link)
ок
отпишись отдельным постом тогда хорошо?
[User Picture]
From:[info]wieiner_
Date:December 20th, 2023 - 06:04 pm
(Link)
ок
Powered by LJ.Rossia.org