• Как сделать вычисление координаты точнее?

    @Karpion
    Я ничего не понял, но навскидку надо как-то так: field[Math.round(2*yt/zoom) + pxt] = color; Т.е. я сначала всё перемножил и разделил, и только в конце округлил. Попробуйте - отпишитесь о результате.
    Ответ написан
    2 комментария
  • Проблемы с /var/run в ubuntu 16.04?

    @Karpion
    Дайте команду ls -ld /run /var/run - и будет видно, кто есть кто.

    В /var/run обычно лежат файлы с PID процессов демонов. Размер их маленький. Зачем делать симлинк, интересно?

    Какие ошибки выдаются?
    Ответ написан
  • Как создать публичный web сервер на своем linux пк?

    @Karpion
    1) Надо выяснить, имеется ли связность между Вашим другом и Вами.
    Дело в том, что провайдеры обычно предлагают подключение через NAT, когда юзеру дают IP-адрес из пула "10.*.*.*", а запросы юзера наружу - на выходе подвергаются NAT-маскарадингу. А общение пользователей между собой обычно блокируется.
    Многие юзеры ставят у себя роутер, которые доже делает NAT - это создаёт ещё один барьер для доступа к компьютера (и заодно защищает компьютер от ряда хакерских атак).

    Допустим, Ваш друг подключён к другому провайдеру (или к другому NAT-пулу этого же провайдера) - тогда он рассматривается как внешний клиент. В этом случае Вам надо получить у провайдера внешний неизменный IP-адрес. Сотрудники провайдера должны объяснить Вам, что делать; но с высокой вероятностью они откажутся это делать. А если согласятся - это стоит денег, сопоставимых с арендой вирт.сервера.

    Если у Вас есть роутер - то на нём надо настроить проброс портов. Смотрите настройки роутера - там должно быть.
    Учтите, что на порту:80 обычно висит Web-интерфейс роутера.

    2) Если Вы хотите обращаться по доменному имени - то надо получить доменное имя. Ну или если обращаться будет только один человек - то он может прописать это имя себе в файл hosts.

    3) Сейчас модно использовать HTTPS, а ему нужны сертификаты. Сертификат можно купить за деньги. Или можно сделать свой собственный сертификат - и друг внедрит его в свой браузер.
    Если же обойтись HTTP - то провайдер может всовывать в Ваш сайт свою рекламу, многие так давно уже делают.
    Ответ написан
    1 комментарий
  • Как создать папку в Ubuntu при отказе в доступе?

    @Karpion
    Надо изменить права доступа к папке, в которой Вы создаёте эту папку - команды chmod, chown, chgrp. Надо смотреть, какому юзеру и какой группе она принадлежит; сравнить это с тем юзером и группами, в которых Вы работаете. И далее - либо поменять нужную тройку прав (скорее всего, это последняя тройка, которая "для всех остальных"), либо сменить юзера/группу на то, в которой работаете Вы.
    Ответ написан
    Комментировать
  • Что значит -y в ubuntu?

    @Karpion
    С т.з. системы дело происходит так:
    Командная строка разбивается на части по пробелам. Эти части передаются как аргументы в процедуру main() - об этом написано в любом учебнике по языку Си.
    Т.о., в данном случае "-y" - это второй аргумент для программы apt-get; и как она его обработает - это её внутреннее дело.

    В Unix есть соглашение, которое выполняется большинством программистов (т.е. присутствует в большинстве программ; исключение - разве что очень древние программы): "аргумент, начинающийся с минуса - это ключ, т.е. модификатор поведения".

    Собственно, в данном случае Вам надо дать команду man apt-get и читать, что означают аргументы и ключи. Также можно загуглить мануал - тут написано
    -y, --yes, --assume-yes
    	Автоматически отвечать "да" в ответ на запрос программы; ...
    Ответ написан
    Комментировать
  • Плавный реалистичный полет игральной карты из точки А в точку Б?

    @Karpion
    Я не понимаю, что значит "реалистичный" в данном случае. iRL - кинуть карту в нужное место невозможно.

    Тут надо придумать не реалистично, а красиво. Но у меня с эстетикой плоховато.
    Ответ написан
    Комментировать
  • Как сохранить изменения в загрузочной флэшке?

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

    Если Вы про аналог LiveCD - то никак, оно заточено на работу без сохранения изменений. Значит, надо записать на флешку то, что сохраняет изменения.
    Ответ написан
    Комментировать
  • Можно ли сделать switch-case из списка?

    @Karpion
    Данное действие хорошо в схеме
    if (... one) then
    	{...}
    else if (...two) then
    	{...}
    indif


    Остался вопрос о том, как определить принадлежность inp к списку. Это хорошо делается хэш-массивами.
    Ответ написан
    Комментировать
  • Как выровнять несколько блоков по центру?

    @Karpion
    Я не понял, как блоки должны располагаться. Ну, можно взять их в блок-контейнер - и уже его выравнивать как угодно.
    Ответ написан
    Комментировать
  • Как возобновить интернет соединение в Ubuntu?

    @Karpion
    Возможно, проблема физического подключения.

    Начнём с команды ifconfig - там будет список интерфейсов и их статус.

    Проверим кабель, если он есть. Фраза "У меня нету проводного подключения" может обозначать две противоположные вещи: "кабеля нет, и не нужен" и "кабель есть, но соединения по нему нет".
    Ответ написан
  • Какой 2Д игровой движок javascript просчитывает траекторию движения?

    @Karpion
    Я читал, что в StarCraft использовались грязные хаки типа возможности рабочих юнитов проходить друг-через-друга.
    Ответ написан
    Комментировать
  • Как защитить код если предлагают помощь с разработкой?

    @Karpion
    Код программ д.б. открытым. (C) Ричард Столлман.
    Ответ написан
    1 комментарий
  • Как сделать кросс-доменную аутентификацию?

    @Karpion
    Насколько я понимаю, кука должна иметь список доменов, с которых её могут читать.

    Попробуйте запросить любой сайт, который ставит куки - и сравнить Ваш ответ с ответом того сайта.

    И наконец, куками может оперировать Ваш скрипт.
    Ответ написан
    Комментировать
  • Возведение в степень число отрицательный?

    @Karpion
    Подсказка: 5^-2 == (1/5)^2 Т.е. надо инвертировать число, возводимое в степень, и дальше возводить его в положительную степень.

    Возводить в степень циклом - глупо. Есть способ быстрее, покажу на примере x^19:
    x1=x
    x2=x1*x1
    x4=x2*x2
    x8=x4*x4
    x16=x8*x8
    x19=x16*x2*x1 // ибо 19=16+2+1
    Как это переписать в виде цикла - думайте сами.

    PS: Моё возведение в степень - быстрее, чем цикл, но и накопление ошибок вычислений там хуже. Почему так - тоже думайте сами.
    Ответ написан
    Комментировать
  • Как сделать движение существа к еде?

    @Karpion
    Для начала надо решить - будет ли существо обладать инерцией, или оно движется в сильно вязкой среде.

    Для вязкой среды всё просто:
    1. вычисляем вектор до еды: { X_еды-X_существа, Y_еды-Y_существа }
    2. вычисляем длину этого вектора по теореме Пифагора;
    3. если длина вектора больше, чем шаг_существа - делим каждую компоненту этого вектора на его длину и умножаем на размер_шага_существа (иногда шаг_существа вычисляется по количеству времени после прошлой итерации);
    4. а если длина вектора меньше, чем шаг_существа - то оставляем вектор как есть;
    прибавляем к координатам_существа модифицированный (или не модифицированный) вектор.

    С инерцией всё сложно, т.к. ускорение существа обычно сильно зависит от направления и скорости. Характер движения - зависит от того, какой у существа нрав.
    Например, существо может ускоряться в сторону еды, когда еда далеко, и тормозить, когда еда близко.
    А бывает так, что для поворота - существо должно остановиться, развернуться и потом бежать к еде.

    Ну и понятно, что если существо бежит к еде на максимальной скорости - то оно ускориться сильнее уже не может.
    Ответ написан
    1 комментарий
  • Насколько безопасны SPA-приложения?

    @Karpion
    В данном случае надо сделать так, чтобы зловредный юзер не мог узнать никакой валидный токен другого юзера. Т.е. надо при авторизации генерировать реально случайное число (псевдослучайное - нельзя), которое бэкенд хранит у себя всё время сессии. Теперь зловредный юзер утомится подбирать токен.

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

    Если юзер выходит из системы - то его токен становится недействительным.

    Проверка токена делается не на клиенте, а в бэкенде. И не "перед переходом в закрытый раздел", а при каждом обращении.
    Клиент только хранить токен и предъявляет его бэкенду.
    Ответ написан
    Комментировать
  • Компьютер включается и выключается через секунд 10,почему?

    @Karpion
    Как Вы смогли сбросить BIOS за десять секунд?
    Что показывает экран? Может, там есть какое-то сообщение?

    Для начала - вынуть из мат.платы вообще всё: все кабели (USB, SATA), память, процессор, батарейку. Включить - посмотреть, выключится или нет.
    В таком состоянии выключить систему - надо держать кнопку питания долго, секунд десять.

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

    Где Вы территориально - город, район? Может, кто-то из здешних рядом - посмотрит.

    Какая мат.плата? Может, кто-то подгонит похожую.
    Ответ написан
    Комментировать
  • Возможно ли распознать номер машины из видео?

    @Karpion
    Если цифра меньше пикселя - то совершенно нереально.

    Есть алгоритмы, которые позволяют распознать номер из движущегося видео, когда цифра в разных кадрах ложится на разные пиксели. Но всё равно достоверность очень низкая.

    Начните с просмотра кадра в граф.редакторе - увеличивайте до размера пикселя в пару миллиметров. У меня зрение слабое, я не берусь.
    Ответ написан
    Комментировать
  • Можно ли сделать отображение разделов дисков как в windows на linux mint?

    @Karpion
    В XUbuntu разделы отображаются и в общем дереве файловой системы, и как отдельные ярлыки.
    Ответ написан
    Комментировать