Ответы пользователя по тегу C++
  • Что нужно сделать, чтобы свернуть в функцию?

    @Beltoev
    Живу в своё удовольствие
    Сама функция (так как никаких результатов не отдаем, возвращаем пустое значение)
    void func(std::string& str)
    {
        int size = str.size();
        int i = 0;
        while (i < size)
        {
            if (islower((unsigned char)str[i]))
     
                str[i] = toupper((unsigned char)str[i]);
            else
                str[i] = tolower((unsigned char)str[i]);
     
            if (!isalpha((unsigned char)str[i]) && str[i] != ' ')
            {
                str.erase(i, 1);
                size = str.size();
            }
            else
                ++i;
        }
    }


    Ну, и её использование:
    int main()
    {
        setlocale(0, "");
        SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
        string line;
        cout << "Enter text: " << endl;
        getline(cin, line);
     
        func(line);
     
        cout << line << endl;
        system("pause");
    }
    Ответ написан
    3 комментария
  • Как сделать такой сайт по примеру сайтом по олимпиадному программированию?

    @Beltoev
    Живу в своё удовольствие
    Ну, если на сервере установлен компилятор и используется PHP (кстати, не указали характеристики/параметры), то можно использовать функцию exec().
    Порядок действий будет небольшой:
    1. Компилируем файл вышеназванной функцией (в параметрах указываем, что запрещено использовать/подключать, чтобы избежать зловредного кода)
    2.1. Если скомпилировалось:
    Запускаем собранную программу (тут нужно определиться с выводом для анализа результатов: перенаправить поток вывода в PHP, либо сделать вывод в файл. Чаще всего в условии задачи требуют вывод в файл out.txt, а ввод - из in.txt. Тогда особых заморочек не бывает)
    2.2 Если не скомпилировалось:
    Выдаем ошибки компилятора пользователю (здесь нужно будет в 1-м пункте вывод ошибок компилятора перенаправить в PHP, либо в файл)

    Вроде ничего не упустил

    UPD: функция exec() может возвращать результаты вывода ( php.net/manual/ru/function.exec.php ). Учитывайте этот момент, задача упрощается =)
    Ответ написан
    1 комментарий