• Почему не работает программа на C++ с решением задачи об "Игре в жизнь"?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    У вас ошибка в логике: вы меняете поле отдельно в каждой клетке. И потом используете уже поменянные клетки для подсчета количества соседей в следующей клетке. Но в игре жизнь все клетки считаются параллельно.

    Для этого вам понадобится 2 массива map. Один для текущей итерации, и другой для следующей. Или массив должен быть не bool, а int, и там вы должны разными числами помечать живые клетки, которые умрут, живые клетки, пустые клетки и пустые клетки, которые родятся. В первый проход вы считаете соседей и помечаете клетки, а вторым проходом все изменения применяете.

    Кажется, из-за этого у вас там поле никогда не вымирает и программа не останавливается.
    Ответ написан
    1 комментарий
  • Почему программа заканчивается даже не начавшись?

    В Setup вы присваиваете gameOverStatus ноль, а потом в while проверяете его на равность единице (в комментарии пишете при этом противоположное).
    Естественно, 0 != 1, цикл не запускается и программа заканчивает исполнение.
    Ответ написан
    2 комментария
  • Почему объект не передается по ссылке?

    @Mercury13
    Программист на «си с крестами» и не только
    В BoxContainer, скорее всего, не происходит инициализация nbox.
    Поскольку NumberBox не имеет конструктора по умолчанию, компилятор ругается, что нельзя это поле инициализировать по умолчанию.
    Так что варианта два
    1. nbox инициализировать, наконец.
    BoxContainer::BoxContainer(NumberBox& nb) : nbox(nb) { ... }

    2. Придумать NumberBox конструктор по умолчанию
    class NumberBox {
    	...
    public:
    	NumberBox();
    	NumberBox(int i);
    	...
    };
    Ответ написан
    1 комментарий
  • Почему для добавления единичного бита используется именно 0x80?

    @MarkusD Куратор тега C++
    все время мелю чепуху :)
    Сперва давай познакомимся с машинным представлением числа: Little Endian, Big Endian, PDP Endian. Машинное представление имеет прямое отношение к целевой платформе, на которой будет работать код.
    Далее давай поймем, что такое битовый поток. Особенностью битового потока является то, что в нем один за другим следуют биты, а не байты или слова. И порядок бит нарушать нельзя, особенно нельзя его нарушать через непонимание машинного представления числа. Битовый поток должен восприниматься одинаково при любом машинном представлении числа.

    После этого тебе все должно стать понятно без объяснений. Но если не понятно, то вот объяснения.
    SHA-1 является битовым потоком, организованным в блоки по 512 бит. Дальше по википедии: Последний блок дополняется до длины, кратной 512 бит. Сначала добавляется 1 (бит), а потом — нули, чтобы длина блока стала равной 512 — 64 = 448 бит.
    После основной нагрузки блока пишется ровно один поднятый бит, а дальше блок забивается нулями до конца. Этот самый единичный поднятый бит, чтобы он был первым после нагрузки в битовом потоке, имеет представление 0x80.
    Ответ написан
    Комментировать
  • Можно ли использовать mozilla thunderbird как SMTP-сервер?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Нельзя. Thunderbird - это клиент.
    Поднять свой сервер гораздо сложнее, чем кажется на первый взгляд. Придётся получить фиксированный белый IP, разобраться в DNS, настроить SPF, DKIM, DMARK. Гораздо проще разобраться, как отправлять письма через SMTP-сервер того же gmail.
    Ответ написан
    7 комментариев
  • Почему запрашивается пароль при git push если авторизация по ключу настроена?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Если вы хотите аутентификацию по ключу, то вам нужен remote с URL для SSH-протокола, а у вас тут HTTPS-протокол, на который ваши SSH-ключи никак не влияют — там аутентификация своя — по паролю, либо токену.

    Скорее всего вам надо поменять ссылку на правильную.
    git remote set-url origin git@gitlab.com:malashko/bla-bla-bla.git
    Ответ написан
    1 комментарий
  • Почему компилятор выдает ошибку error: expected declaration or statement at end of input?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Пропущена закрывающая фигурная скобка в print_arr
    Ответ написан
    Комментировать
  • Будет ли правильным если в ESXI один вирутальный сервер будет подключен сразу к трём физически разным сетям, две из которых относятся к КИИ?

    @SunTechnik
    Можно или нельзя - определяется Вашими регламентами.
    Если сети изолированный друг от друга, то это сделано по каким-то причинам. Включение сервера одновременно во все три, нарушает условие физической изоляции и добавляет вектор атаки.

    Но даже если Вы поставили в каждую сеть свой сервер zabbix, как потом планируется рассылать/получать уведомления о событиях?
    Ответ написан
    2 комментария
  • Что будет если сделать 2 одинаковых домена в разных зонах?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Куда укажешь - туда и будет ссылаться. Но habr.com.ru (как и любой домен 3-го уровня) можно "купить" только у администратора com.ru.
    Ответ написан
    Комментировать
  • Как восстановить конкретную папку на btrfs если нет снапшотов?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    восстановить конкретную папку на btrfs ... нет снэпшотов ... Сижу из под другой системы, которая даже о btrfs ничего не знает.

    Если Windows (оптимальный выбор для вашей задачи), то пробуйте Klennet Recovery и UFS Explorer (последний есть и под другие ОС, но лучше Винда). Вряд ли какие-либо другие инструменты найдут больше.

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

    Дамп всего nvme тоже сделал

    Но если успел отработать TRIM, то беда - почти наверняка с данными надо прощаться. Можно пробовать обращение к специалистам, но вероятность успеха низкая, особенно с учётом специфики БТРФС.
    Ответ написан
    3 комментария
  • Как получить нужное значение на разных версиях виндовс?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Заведите, например enum со всеми версиями виндоуз и занумеруйте их. Смещения ваши раскладывайте не по неймспейсам, а массиве. Во время исполнения через winapi получайте версию винды и приводите ее к значению в вашем энуме. Его используйте как индекс в массиве.
    Ответ написан
    2 комментария
  • Что такое перекрашенный IP?

    CityCat4
    @CityCat4 Куратор тега Сетевое администрирование
    //COPY01 EXEC PGM=IEBGENER
    Насколько я знаю и помню:

    Дело было в Красноярске. У нас стали возникать проблемы с доступом одного клиента (аптеки) к БД краснояского филиала. Разборки привели к тому, что выяснилось, что у аптеки RFC1918-compliant адрес, но "союз меча и орала" (то есть все краснояские провайдеры) так договорились, что RFC1918-compliant адреса считали маршрутизируемыми! Внутри своих сетей ессно. А мы, как нормальные люди, глушили весь RFC1918-compliant трафик, пришедший извне.
    Мы долго переписывались и скандалили, но все же добились того, что там как-то настроили, что на нас эта "перекраска" не распространялась...

    Было это очень давно, больше десяти лет назад.
    Ответ написан
  • Создал личный сервер в майнкрафт. после закрытия программы Putty, сервер закрывается (я полный ноль, все делал по гайдам), что делать?

    @rPman
    после авторизации в putty нужно запускать screen и уже в нем запускать сервер.
    Что бы подключиться позже к этому screen, нужно запускать его с опцией screen -rd (-d это закрытие уже открытого соединения с screen в другом окне или если оно 'повисло', например если закрыл putty не закрыв screen с помощью кнопок ctrl+a d)
    Ответ написан
    2 комментария
  • Кириллица в c++. Что с ней не так?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Как распознать кракозябры:

    Как распознаете - сможете понять из какой кодировку в какую у вас происходит трансформация и настроить всё в единой кодировке или добавить нужные опции где надо.
    Ответ написан
    Комментировать
  • Как быстро переключаться между редактором и консолью во vscode?

    @heinehen Автор вопроса
    Простите, это уже теперь неактуально — сам задал вопрос, сам и ответил:
    1. ctrl+shift+p;
    2. Open Keyboard Shortcuts (JSON);
    3. Прописать следующий код:
    {
            "key": "ctrl+`",
            "command": "workbench.action.terminal.focus"
        },
        {
            "key": "ctrl+`",
            "command": "workbench.action.focusActiveEditorGroup",
            "when": "terminalFocus"
        }
    Ответ написан
    Комментировать
  • Как контролировать комплектацию рабочего места?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Почему никто не назвал 10-Strike? Опять же российский софт, импортозамещение и все такое. Да, он за деньги, но небольшие.
    Ответ написан
    2 комментария
  • Как сгенерировать непрерывные случайные величины с заданным законом распределения?

    @SunTechnik
    У Вас тема вопроса и сам вопрос - разные.
    Можно генерировать случайные числа с за данным законом распределения, но для непрерывных величин, вероятность конкретного значения всегда равна нулю.
    Это к фразе: "Как сгенерировать непрерывные случайные числа с определенной(известной) вероятностью?"

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

    Большинство алгоритмов сводятся к преобразование равномерного распределения к заданному.

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

    Поэтому, без дополнений к вопросу, ответить на текущий - невозможно..

    Всё известные алгоритмы генерации случайных чисел даже для равномерного распределения имеют кучу недостатков, поэтому большинство современных систем имеют в своём составе аппаратные реализации генераторов, основанные на физических принципах.
    Ответ написан
    Комментировать
  • Почему каст u32::MAX в f32 увеличивает число на 5?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    32-bit unsigned int имеет 32 бита для хранения значения.
    32-bit float только 24 бита для хранения мантиссы.
    Поэтому точность представления числа и падает.
    Ответ написан
    3 комментария
  • Как предоставить доступ к админской шаре ( \\ip\ADMIN$) локальному администратору?

    @NortheR73
    системный инженер
    Б - безопасность...
    У вас комп в домене, и вы идете локальной учеткой - (по умолчанию) Винда такое не любит и, соответственно, не пропускает. Если использовать доменные учетки (входящие в локальную группу Администраторы) - тогда доступ есть.
    Либо добавлять в реестр параметр LocalAccountTokenFilterPolicy (но тут могут админы домена возбудиться...)
    Ответ написан
    Комментировать
  • Как вывести список адресов всех пользователей OpenVPN?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Добавить директиву status в настройки сервера с расположением файла, в котором будет актуальная информация по подключенным клиентам.

    --status file [n]
        Write operational status to file every n seconds.
        Status can also be written to the syslog by sending a SIGUSR2 signal.
    Ответ написан
    1 комментарий