Jump to content

Индусский код JavaScript


Arinden
 Share

Recommended Posts

Только начал изучать индусский, первое упражнение, по устоявшейся мировой практике - Hello World! :) Встречайте:

var b = -1;var c = ~(b * 2 + (b = 0));var b$1 = 65 % 33;var b$2 = c + 110;var b$3 = (b$1 * b$2) % 109;var d = String.fromCharCode(b$3*2-56,b$2-10,b$3+44,b$3+44,b$2);var e = String.fromCharCode((b$2/b$3^0)*87,b$2,b$3*2-14,b$3+44,b$2-11);var f = String.fromCharCode(b$1);var g = String.fromCharCode(b$1+1);!!!!!!!!!!!!!!!(b > ++c) && alert(d + f + e + g);

JSFiddle

Link to comment
Share on other sites

Какова практическая ценность данного кода кроме понтов в стиле "смотрите как я умею"?

 

На самом деле никаких понтов, я ничего не умею. JavaScript изучаю на самых азах. Тему разместил в Флейм, исключительно из-за её бесполезности. На идею навела статья на лурк касательно индусского кода. Не знаю как Вас, а вот меня данные примеры немного удивляют и веселят. Их интересно и, бывает, познавательно изучать, не могу сказать что мой пример мог бы быть кому-то полезен в этом плане, но я рассчитывал, что меня поддержат и будут публиковать свои примеры или копипастить коды с других мест. Не поддерживаете - удалите, пожалуйста, тему.

Link to comment
Share on other sites

"бесполезные примеры познавательно изучать" - это как?

 

Ну не придирайтесь...

 

 

Клондайк!  :blink: Это же "учитаться"! Не видел такой сайт, но в принципе моя идея была похожей. Спасибо :)

4799011.gif

Я не осилил... Но, выглядит внушительно :)

Edited by Arinden
Link to comment
Share on other sites

Предлагаю вариацию на тему индусской математики, рассмотрим простое тождество:

1=1

В переводе на индусский:

4799011.gif

А расписать интеграл и упростить слабо? или только примеры приводить...    )))))))))))))

Link to comment
Share on other sites

А расписать интеграл и упростить слабо? или только примеры приводить...    )))))))))))))

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

 

Вон у Бурбаки полная запись единицы составила бы примерно 10^47 книг.

пруф страница 6:

https://www.dpmms.cam.ac.uk/~ardm/inefff.pdf

Так, что это детский сад.

Edited by Игорь Ермаков
Link to comment
Share on other sites

Вон у Бурбаки полная запись единицы составила бы примерно 10^47 книг.

Офигеть... Я в математике не силён и на первый взгляд это "уму не постижимо"... Это вообще, понять, до уровня "написать фрагмент самостоятельно", возможно?  :huh:

Link to comment
Share on other sites

Это вообще, понять, до уровня "написать фрагмент самостоятельно", возможно? 
 Понять-то можно, это не такие уж и сложные вещи, но не нужно. То о чём рассказывается в статье есть самый настоящий интеллектуальный анонизм. Вещи настолько бесполезные, что не несут даже самоценности для математики. Существует масса намного более интересных задач на которые стоит обратить внимание. 
Link to comment
Share on other sites

 

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

 

 

Типа "что вижу, то пою", научный абстракционизм не имеющий конца и смысла. :) С одной стороны, если это высокоинтеллектуально, это может и развивает личность. С другой стороны - вот уж действительно есть более ценные задачи, теории над которыми можно поломать голову, да и применить по жизни.

 

А вот по поводу "индусского кода", я не знаю, может у них тихий "стёб" просто над заказчиками или реально так получается от несовершенного знания языка? Я вот от каждого языка по чуть-чуть нахватался и ни один хорошо не знаю, а когда что-то пишу, получается 20 строк "кода", слепленного из простейших выражений и адаптированных сниппетов, аля "работает и ладно", вместо 1-й логичной.строки. Провести вот аналогию с иностранным языком: если не знаешь слова, будешь стоять объяснять, что "вот такая мол штука, которая применяется там-то и там-то, ещё такого цвета и есть в каждом офисе", как бы тебя поймут в конечном счёте, но знаний явно не хватает.

Link to comment
Share on other sites

 

А расписать интеграл и упростить слабо? или только примеры приводить...    )))))))))))))

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

 

Вон у Бурбаки полная запись единицы составила бы примерно 10^47 книг.

пруф страница 6:

https://www.dpmms.cam.ac.uk/~ardm/inefff.pdf

Так, что это детский сад.

 

Ага, для первокурсника ))))

Я вот от каждого языка по чуть-чуть нахватался и ни один хорошо не знаю

 

Если тебе реально нужно что то такое, то тебе сюда http://ru.wikipedia.org/wiki/Brainfuck

Link to comment
Share on other sites

А вот по поводу "индусского кода", я не знаю, может у них тихий "стёб" просто над заказчиками или реально так получается от несовершенного знания языка?
 

Ходят слухи, что это из-за того, что индусские программисты в Индии получали/получают зарплату за количество строк, а не за саму сделанную задачу :)

Link to comment
Share on other sites

Ходят слухи, что это из-за того, что индусские программисты в Индии получали/получают зарплату за количество строк, а не за саму сделанную задачу

а в России по улицам ходят медведи, играют на балалайках и пьют водку

Link to comment
Share on other sites

Ходят слухи, что это из-за того, что индусские программисты в Индии получали/получают зарплату за количество строк, а не за саму сделанную задачу :)

Пример с Александра Дюмы берут :)

Поскольку Дюма платили в газете построчно, он изобрел Гримо — слугу Атоса, который изъяснялся исключительно односложно. Таким образом, строчка, на которой стояло одно слово «да» или «нет», оплачивалась точно так же, как и полная строка текста. К моменту написания «Двадцать лет спустя» издатели решили все же платить Дюма пословно, и Гримо сразу стал чуть более разговорчивым.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By Seadjus
      Добрый день!
      Огромная просьба камнями не кидаться!
      Начал изучать JS , пока нет особых продвижений в изучении.
      помогите оптимизировать игру в пары. по условиям задания необходимо реализовать игру в пары с таймером, выбором количества карт .
      Ниже
      https://codepen.io/Seadjus/pen/VwVedaP
    • By ilya1203
      Прошу помочь с заданием:
      Написать файл скрипта, который генерирует три числа, соответствующие значениям высоты, длины и ширины комнаты. Отобразить в консоли:
      a.Площадь стен комнаты
      b.Объём комнаты
      c.*Объём комнаты за вычетом случайно сгенерированного количества чисел, которые определяет объёмы случайно зашедших в комнату людей.
      (в итоге запустит скрипт последством консоли)
      (заранее огромное спасибо)
    • By Kaido
      Использую готовый плагин для модальных окон(от MaxGraph). Проблема в том, что когда у меня открыто два модальных окна, для примера Форма + Политика конфендициальности, и мне нужно закрыть политику вместе с ней закрывается и другое модальное окно. В JS я не сильно разбираюсь(собственно из за этого и использую готовый плагин), можете помочь кто работал с этим плагином? Я примерно понимаю как он работает, но реализовать чтобы закрывалось только одно не получается.
       
        <div class="content"> <button class="modal-btn" data-path="first" data-animation="fadeInUp" data-speed="1500">Открыть окно 1</button> </div> <div class="modal"> <div class="modal__wrapp" data-target="first"> <div class="modal__content"> <button class="modal__close">Закрыть</button> модальное окно <button data-path="policy">Политика</button> </div> </div> <div class="modal__wrapp" data-target="policy"> <div class="modal__content"> <button class="modal__close">Закрыть</button> политика </div> </div> </div> .modal { --transition-time: 0.3s; position: fixed; left: 0; top: 0; right: 0; bottom: 0; z-index: 1000; cursor: pointer; overflow-y: auto; overflow-x: hidden; text-align: center; opacity: 0; visibility: hidden; transition: opacity var(--transition-time), visibility var(--transition-time); } .modal__wrapp { display: none; cursor: default; width: fit-content; height: fit-content; } .modal__content{ position: absolute; left: 500px; width: 500px; height: 500px; display: flex; color: white; flex-direction: column; text-align: left; background-color: #000; } .modal__content button{ width: 200px; height: 50px; margin: 50px 0; } .modal.is-open { opacity: 1; visibility: visible; transition: opacity var(--transition-time), visibility var(--transition-time); } .modal__wrapp.modal-open { display: flex; } .disable-scroll { position: relative; overflow: hidden; height: 100vh; position: fixed; left: 0; top: 0; width: 100%; } .fade { opacity: 0; transition: opacity var(--transition-time); } .fade.animate-open { opacity: 1; transition: opacity var(--transition-time); } .fadeInUp { opacity: 0; transform: translateY(vw(-100)); transition: opacity var(--transition-time), transform var(--transition-time); } .fadeInUp.animate-open { opacity: 1; transform: translateY(0); transition: opacity var(--transition-time), transform var(--transition-time); } .modal__wrapp[data-target="policy"] .modal__content{ left: 1050px; background-color: #000; opacity: .5; } class Modal { constructor(options) { let defaultOptions = { isOpen: () => {}, isClose: () => {}, } this.options = Object.assign(defaultOptions, options); this.modal = document.querySelector('.modal'); this.speed = false; this.animation = false; this.isOpen = false; this.modalContainer = false; this.previousActiveElement = false; this.fixBlocks = document.querySelectorAll('.fix-block'); this.focusElements = [ 'a[href]', 'input', 'button', 'select', 'textarea', '[tabindex]' ]; this.events(); } events() { if (this.modal) { document.addEventListener('click', function(e){ const clickedElement = e.target.closest('[data-path]'); if (clickedElement) { let target = clickedElement.dataset.path; let animation = clickedElement.dataset.animation; if (clickedElement.classList.contains('modal-close')) { this.close(); } let speed = clickedElement.dataset.speed; this.animation = animation ? animation : 'fade'; this.speed = speed ? parseInt(speed) : 300; this.modalContainer = document.querySelector(`[data-target="${target}"]`); this.open(); return; } if (e.target.closest('.modal__close')) { this.close(); return; } }.bind(this)); window.addEventListener('keydown', function(e) { if (e.keyCode == 27) { if (this.isOpen) { this.close(); } } if (e.keyCode == 9 && this.isOpen) { this.focusCatch(e); return; } }.bind(this)); this.modal.addEventListener('click', function(e) { if (!e.target.classList.contains('modal__wrapp') && !e.target.closest('.modal__wrapp') && this.isOpen) { this.close(); } }.bind(this)); } } open() { this.previousActiveElement = document.activeElement; this.modal.style.setProperty('--transition-time', `${this.speed / 1000}s`); this.modal.classList.add('is-open'); this.disableScroll(); this.modalContainer.classList.add('modal-open'); this.modalContainer.classList.add(this.animation); setTimeout(() => { this.options.isOpen(this); this.modalContainer.classList.add('animate-open'); this.isOpen = true; this.focusTrap(); }, this.speed); } close() { if (this.modalContainer) { this.modalContainer.classList.remove('animate-open'); this.modalContainer.classList.remove(this.animation); this.modal.classList.remove('is-open'); this.modalContainer.classList.remove('modal-open'); this.enableScroll(); this.options.isClose(this); this.isOpen = false; this.focusTrap(); } } focusCatch(e) { const focusable = this.modalContainer.querySelectorAll(this.focusElements); const focusArray = Array.prototype.slice.call(focusable); const focusedIndex = focusArray.indexOf(document.activeElement); if (e.shiftKey && focusedIndex === 0) { focusArray[focusArray.length - 1].focus(); e.preventDefault(); } if (!e.shiftKey && focusedIndex === focusArray.length - 1) { focusArray[0].focus(); e.preventDefault(); } } focusTrap() { const focusable = this.modalContainer.querySelectorAll(this.focusElements); if (this.isOpen) { focusable[0].focus(); } else { this.previousActiveElement.focus(); } } disableScroll() { let pagePosition = window.scrollY; this.lockPadding(); document.body.classList.add('disable-scroll'); document.body.dataset.position = pagePosition; document.body.style.top = -pagePosition + 'px'; } enableScroll() { let pagePosition = parseInt(document.body.dataset.position, 10); this.unlockPadding(); document.body.style.top = 'auto'; document.body.classList.remove('disable-scroll'); window.scroll({ top: pagePosition, left: 0 }); document.body.removeAttribute('data-position'); } lockPadding() { let paddingOffset = window.innerWidth - document.body.offsetWidth + 'px'; this.fixBlocks.forEach((el) => { el.style.paddingRight = paddingOffset; }); document.body.style.paddingRight = paddingOffset; } unlockPadding() { this.fixBlocks.forEach((el) => { el.style.paddingRight = '0px'; }); document.body.style.paddingRight = '0px'; } } const modal = new Modal({ isOpen: (modal) => { console.log(modal); console.log('opened'); }, isClose: () => { console.log('closed'); }, });  
    • By ilyamio
      Здравствуйте. Имеется рабочий скрипт конвертера валют. https://ilyamio.github.io/currencyconverter/
      Мне необходимо изменить источник загрузки курсов на ЦБ РФ вот по этой ссылке: https://www.cbr.ru/scripts/XML_daily.asp
      А также мне необходимо установить ограничение на количество обращений к сайту ЦБ РФ - 1 раз в сутки. При частом обращении, могут заблокировать.
      Вот в этом js файле находятся настройки конвертера:
      const from_currencyEl = document.getElementById('from_currency'); const from_ammountEl = document.getElementById('from_ammount'); const to_currencyEl = document.getElementById('to_currency'); const to_ammountEl = document.getElementById('to_ammount'); const rateEl = document.getElementById('rate'); const exchange = document.getElementById('exchange'); from_currencyEl.addEventListener('change', calculate); from_ammountEl.addEventListener('input', calculate); to_currencyEl.addEventListener('change', calculate); to_ammountEl.addEventListener('input', calculate); exchange.addEventListener('click', () => { const temp = from_currencyEl.value; from_currencyEl.value = to_currencyEl.value; to_currencyEl.value = temp; calculate(); }); function calculate() { const from_currency = from_currencyEl.value; const to_currency = to_currencyEl.value; fetch(`https://api.exchangerate-api.com/v4/latest/${from_currency}`) .then(res => res.json()) .then(res => { const rate = res.rates[to_currency]; rateEl.innerText = `1 ${from_currency} = ${rate} ${to_currency}` to_ammountEl.value = (from_ammountEl.value * rate).toFixed(2); }) } calculate(); Как мне изменить настройки в этом файле чтобы курсы брались с https://www.cbr.ru/scripts/XML_daily.asp и включить ограничение на количество обращений по ссылке cbr.ru - 1 раз в сутки?
      Заранее спасибо всем, кто хотел помочь с решением этой задачи.
    • By vasyl_runner
      $(function () { var mixer = mixitup('.directions__list'); $('.directions__filter-btn').on('click', function () { $('.directions__filter-btn').removeClass('directions__filter-btn--active') $(this).addClass('directions__filter-btn--active') }) })
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy