Интерпретатор Oflameron

 AI Prompting

Примеры ИИ Запросов

Интерпретатор языка программирования Oflameron версия 1.27

Интерпретатор Oflameron



Запрос версии 1.27 с элементами криптографии


Напиши HTML+JavaScript код веб-страницы, оптимизированной для просмотра на смартфоне с вертикальной ориентацией с полем ввода большого простого числа (textarea №1), с полем ввода кода программы (textarea №2), полем вывода (textarea №3) и кнопками RUN и XOR.

В поле ввода большого простого числа (textarea) помести начальное значение = 176684706477838432958329750074291851582748389687561895812160620129261977163358586401104946332014022802424840484736440263640058869150064213123847594034139965365510006253457917812163931669483321

Для поля ввода ввода большого простого числа (textarea №1) помести название поля: "Простое число"


Реализуй интерпретатор со следующими правилами:


Переменные и константы:

h, q, l, k - числовые переменные, начальное значение 0 для всех


Константы и их значения:

a=0, b=1, c=3, d=5, e=7, p=19, t=23, v=43, w=73


Обработка чисел:

Если число >127: while(num > 127) num -= 127


Если число <0: num = Math.abs(num)


Эти преобразования применяются после КАЖДОЙ математической операции к результату


Диапазон для ASCII-операций: 0-127


Допустимые операнды в операциях:

Константы: a, b, c, d, e, p, t, v, w


Переменные: h, q, l


k используется ТОЛЬКО как индекс, НЕ как операнд в вычислениях


Операторы:

fXY - умножение: h = normalize(X * Y) (k+3)


gXY - сложение: h = normalize(X + Y) (k+3)


iXY - вычитание по модулю: h = normalize(Math.abs(X - Y)) (k+3)


lX - записать в l код символа из позиции k + normalize(X) (k+2)


X - любой допустимый операнд


Если позиция вне строки > пропустить операцию


mX - вывести символ с кодом normalize(X) в поле вывода (k+2)


Выводить только если код в диапазоне 32-126 (печатные символы)


X - любой допустимый операнд


nq - заменить символ в позиции k + normalize(q) на символ с кодом normalize(h) (k+2)


Если позиция вне строки > пропустить операцию


После замены продолжать выполнение обычным образом


Общие правила:

Исполнение: строго слева направо


Указатель k: только увеличивается, никогда не уменьшается


Движение по коду:


Операторы f,g,i: k+3


Операторы l,m: k+2


Оператор nq: k+2


Любой другой символ: k+1


Обработка ошибок:


Если ожидается операнд, но символ не является допустимым > k+1, пропустить текущий символ


Пример: fgh > символ 'g' недопустим как операнд для 'f' > k+1


Неизвестные символы: любые символы, не описанные выше, просто пропускаются (k+1)


Самомодификация: код может изменять сам себя через оператор nq


Сброс состояния: при каждом нажатии RUN начинать с чистого состояния


Нормализация чисел: функция normalize(num) применяется ко всем результатам математических операций и при использовании чисел как индексов/ASCII-кодов:


javascript

function normalize(num) {

    while (num > 127) num -= 127;

    if (num < 0) num = Math.abs(num);

    return num;

}

Примеры поведения:

fbc > h = normalize(1?3) = 3, k+3


ghc > h = normalize(h + 3), k+3


lp > l = код_символа_в_позиции(k+19), k+2


ml > вывести символ с кодом normalize(l) (если 32-126), k+2


nq > code[k+normalize(q)] = символ_с_кодом normalize(h), k+2


Требования к реализации:

Чистый JavaScript, без внешних библиотек


По нажатию кнопки XOR выполняется битовая операция XOR между введенным простым числом в поле textarea №1 и содержимым поля textarea №3. Если значение textarea №1 или textarea №3 отсутствуют, то операция XOR не выполняется. Если количество символов в полях textarea №1 и textarea №3 не совпадает, то операция XOR производится  с тем количеством символов, которое имеется. 

Например: если в поле textarea №1 содержится 7 символов, а в поле textarea №3 содержится 10 символов, то операция XOR выполняется только для 7 первых символов каждого поля. При этом показать сообщение с предупреждением, что простое число короче текста для декодирования.

                  Если в поле textarea №1 содержится больше символов, чем в поле textarea №3, то для операции XOR используется столько символов из textarea №1, сколько нужно (столько, сколько символов в поле textarea №3)


Интерфейс: три textarea и две кнопки. В заголовке - надпись "Интерпретатор языка Oflameron ver 1.25"


Защита от бесконечных циклов (максимум 100000 шагов)


Интерпретатор не должен сохранять состояние между запусками


Примечание: Интерпретатор допускает неоднозначные ситуации - обязанность контроля возлагается на программиста.


https://telegra.ph/Kripto-programmirovanie-Oflameron-01-29


AI Code Generation

https://oflameron.com

Комментарии

Популярные сообщения из этого блога

Crypto Tech

Бесплатные JAVA проекты

Crypto Tech