• Пример чтоб обьяснить подростку как выглядит процесс программирования?

    sabramovskikh
    @sabramovskikh
    В школе информатику отменили?
    возможно он захочет развиваться в этом направлении

    А возможно он не хочет этого?
    Мои родители с этим "возможно" хотели сделать из меня машиниста электропоезда. Дошло до большого скандала в итоге.
    Дайте человеку самому выбирать чего он хочет
    Ответ написан
    6 комментариев
  • Где купить стартовый набор для обучения?

    @kalapanga
    Покупать дешевле конечно у китайцев. Наборов у них масса. Но учитывайте вот что. Все эти наборы в коробочках позволят выполнить некоторое количество примеров, но собрать какое-то законченное полезное устройство вряд ли получится. Чего-нибудь да не хватит, что-то останется лишним. Возможно интереснее купить набор с какой-нибудь ездящей платформой. Всё-таки изделие будет. Или найти в интернете несложный и интересный для вас проект и закупиться деталями под него. А дальше уж как пойдёт. Но всё это на Ваш выбор.
    Ответ написан
    5 комментариев
  • Как сравнить строки string с датами рождения?

    Не оптимальное, но работающее решение, которое вам уже предлагали, основанное на преобразовании в формат YYYYMMDD:

    #include <algorithm>
    #include <iostream>
    #include <string>
    #include <vector>
    
    int main(void)
    {
    	std::vector<std::string> array_data{ "13.11.1999", "09.10.1997", "22.05.1995" };
    	auto as_yyyymmdd = [](const std::string& src){
    		return src.substr(6,4) + src.substr(3,2) + src.substr(0,2); 
    	};
    	auto min_date_it = std::min_element(array_data.begin(), array_data.end(),
    		[as_yyyymmdd](const std::string& a, const std::string& b){ 
    			return as_yyyymmdd(a) < as_yyyymmdd(b);
    		});
    	std::string min_date = *min_date_it;
    	std::cout << min_date << std::endl;
    	return 0;
    }
    Ответ написан
    Комментировать
  • Если отключится свет, спасут ли тепловые трубки видеокарту?

    @Fixid Куратор тега Железо
    Ничего не будет.
    Вырубится свет, прекратится нагрев.
    Рабочий лимит 100C.

    А вы не боитесь выключать комп после игры? Он же нагрет и тут вы его выключаете.
    Ответ написан
    7 комментариев
  • Как удобней делать скриншоты на Linux?

    delvin-fil
    @delvin-fil
    Crazy Linux-admin
    Повесил сто лет назад на PrintScreen вот такую команду(у меня IceWM)
    key "Print" scrot -q 85 -d 2 /home/$USER/screenshot/%H:%M:%S-%d-%m-%y.png

    А вот это для скрина области экрана(не пользую)
    scrot -s /home/$USER/screenshot/%H:%M:%S-%d-%m-%y.png
    Ответ написан
    Комментировать
  • Как убрать зелёные отступы и пробелы в nano?

    Советую использовать micro в качестве редактора в консоли. Перешел на него после nano и доволен как слон. На сайте есть список возможностей. Установка предельно проста, один бинарный файл, который можно переписать в /bin после скачивания curl https://getmic.ro | bash

    Можно менять тему, если не понравился тот, что по умолчанию. Я так понимаю, это для Вас важно.
    Плюс человеческие горячие клавиши:
    Выделение шифтом
    Копирование и вставка по Ctrl+C и Ctrl+V
    Выход Ctrl+Q, сохранение Ctrl+S
    Использование табов, установка плагинов, подсветка синтаксиса, ...
    Ответ написан
    1 комментарий
  • Как чинить интернет?

    CityCat4
    @CityCat4
    Внимание! Изменился адрес почты!
    "- По колесам пинал?
    - Пинал...
    - Капот открывал?
    - Открывал..." (С) Анекдот

    Вызовите уже мастера от провайдера, если сами даже обьяснить не в состоянии...
    Ответ написан
    Комментировать
  • Как правильно поставить загрузчик Linux, дабы он мог загружать и Windows?

    Тут вопрос в том где у вас загрузчик винды.
    Диск то я надеюсь не один?
    Поставьте груб на тот диск на котором нет винды. И сделайте его загрузочным.

    Груб найдет винду и будет все хорошо. Можно будет грузить и линукс и виндоус.

    Вот если диск всего один. И на нем на разных разделах стоят линуксы и винды то операция будет посложнее. И можно поломать винду:) Чтобы действовать наверняка я бы посоветовал взять флешку (на гиг два будет достаточно) и поставить груб (и вообще весь раздел boot linux-овый) туда. И сделать флешку загрузочной.
    У меня сделано так. И делаю периодически бекапчик флешки.
    А если флешку взять побольше, то на такую флешку можно еще например записать liveCD вашего линукс дистрибутива. И какойнидь WinPE для аварийного запуска в виндах.
    Ответ написан
    Комментировать
  • Как создать и обработать событие в Windows Forms C++?

    в MyForm.h автоматически добавилось
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
      }

    Что дальше?

    Дальше
    System::Windows::Forms::MessageBox::Show("FooBar");

    в теле метода.
    Ответ написан
    2 комментария
  • Как сделать простой get запрос используя boost?

    @4rtzel
    Пример с использованием Boost.Beast (доступен с 1.66 версии). За основу взял пример отсюда и слегка изменил его.

    #include <boost/beast.hpp>
    #include <boost/asio/connect.hpp>
    #include <boost/asio/ip/tcp.hpp>
    
    namespace http = boost::beast::http;
    
    int main() {
        const std::string host = "scooterlabs.com";
        const std::string target = "/echo?input=test";
    
        // I/O контекст, необходимый для всех I/O операций
        boost::asio::io_context ioc;
    
        // Resolver для определения endpoint'ов
        boost::asio::ip::tcp::resolver resolver(ioc);
        // Tcp сокет, использующейся для соединения
        boost::asio::ip::tcp::socket socket(ioc);
    
        // Резолвим адрес и устанавливаем соединение
        boost::asio::connect(socket, resolver.resolve(host, "80"));
    
        // Дальше необходимо создать HTTP GET реквест с указанием таргета
        http::request<http::string_body> req(http::verb::get, target, 11);
        // Задаём поля HTTP заголовка
        req.set(http::field::host, host);
        req.set(http::field::user_agent, BOOST_BEAST_VERSION_STRING);
        
        // Отправляем реквест через приконекченный сокет
        http::write(socket, req);
    
        // Часть, отвечающая за чтение респонса
        {
            boost::beast::flat_buffer buffer;
            http::response<http::dynamic_body> res;
            http::read(socket, buffer, res);
    
            std::cout << res << std::endl;
        }
        // Закрываем соединение
        socket.shutdown(boost::asio::ip::tcp::socket::shutdown_both);
    
        return 0;
    }


    Компиляция:
    g++ -lboost_system -pthread main.cpp
    Ответ написан
    7 комментариев
  • Надежен ли данный шифр?

    @cicatrix
    было бы большой ошибкой думать
    Никогда не придумывайте ничего из области криптографии, пока у вас не будет хотя бы докторской степени по математике. В качестве разминки для ума - можно, но боже вас упаси нести эту отсебятину в коммерческие продукты.
    По той же причине, что я озвучил выше, никто здесь, скорее всего, не сможет провести анализ вашего алгоритма на криптографическую стойкость.
    Не знаю, может быть, ваш алгоритм гениален и никто за всю историю компьютерной криптографии до него не додумался, не смотря на то, что над изобретением шифров трудились лучшие математики планеты, но я сильно в этом сомневаюсь.
    Ответ написан
    Комментировать
  • Как безопасно использовать пиратский софт?

    Dnebl
    @Dnebl
    Было бы хорошо, если есть какой-то замечательный способ защиты своего компьютера от всего.

    Пишем в cmd
    shutdown -s
    Ответ написан
    2 комментария
  • Как открыть и закрыть DVD-RW дисковод?

    @alexalexes
    Нужно привязываться к устройству не только по его типу, но и по букве диска.
    Открытие:
    mciSendString("open f: type cdaudio alias cd", NULL, 0, NULL);
    mciSendString("set cd door open wait", NULL, 0, NULL);

    Закрытие:
    mciSendString("open f: type cdaudio alias cd", NULL, 0, NULL);
    mciSendString("set cd door closed wait", NULL, 0, NULL);
    Ответ написан
    6 комментариев