Часто задаваемые вопросы (FAQ)Объявление. Доступ к сайту может временно не работать из последних версий браузера Chrome. Варианты решения проблемы:1. Использовать браузер Mozilla Firefox 2. В строке адреса браузера Chrome ввести адрес "chrome://flags" и установить в Disabled (Выключено) флаги "HTTPS Upgrades" и "HTTPS-First Mode V2 For Engaged Sites". Вопрос:Что представляет собой система, для чего она предназначена?Ответ:Смотрите здесьВопрос:Как вводить данные и выводить ответ?Ответ:Ваша програма должна считывать входные данные со стандартного потока ввода (с консоли) и выводить результаты в стандартный поток вывода (на консоль). Примечание: в условиях некоторых задач, взятых со старых олимпиад, может говориться о входных и выходных файлах. Тем не менее, ввод и вывод должен выполняться только через через стандартные потоки.Ваша программа не должна выводить ничего лишнего, наподобие подсказок "введите число" или "ответ равен". Не используйте модуль crt в Pascal. Пример программы на Pascal для решения задачи №1 "A+B":
Пример аналогичной программы на C++:
Примеры для других языков смотрите ниже. Вопрос:Каковы командные строки компиляции и запуска решений на сервере?Ответ:Смотрите здесьВопрос:В процессе отладки входные данные часто удобнее считывать из файла. Как это делать?Ответ для некоторых языков:На Pascal в начале программы достаточно написать строчку:
На C++ в начале функции main достаточно написать:
Вопрос:Что означает сообщение "Security Violation (Нарушение безопасности)"?Ответ:Проверяющая система отслеживает вызовы из вашей программы функций операционной системы, и в случае вызова запрещенной функции (работа с файлами, сокетами и т.п.) прерывает выполнение программы и выдаёт соответствующее сообщение.Примечание: в текущей версии системы иногда возможна выдача такого сообщения, когда программа аварийно завершается, и на самом деле должно быть "Runtime error (Ошибка выполнения)". Вопрос:Что означает сообщение "Presentation Error (Ошибка представления)"?Ответ:Это означает, что формат вывода вашей программы не соответствует указанному в условию задачи - например, программы выдала строку вместо числа или два числа вместо одного и тому подобное. Вообще, что считать неправильным ответом, а что - ошибкой представления, вопрос неоднозначный и для каждой задачи определяется автором её проверящей программы.Встречаются (но крайне редко) задачи, где проверяющая программа особо строго контролирует формат вывода и выдаёт ошибку представления даже за лишний пробел в конце вывода или за лишнюю пустую строку. Как правило, при выводе чисел лишние пробелы выводить допускается. Вопрос:Что делать, если в программе большая глубина рекурсивных вызовов, и программа аварийно завершается из-за переполнения стека?Ответ для некоторых языков:Для увеличения размера стека во FreePascal и Delphi можно поставить, например, такую строчку в начало программы: {$M 67108864} - тем самым размер стека будет равен 64 мегабайт.Для Visual C++ можно вставить в программу директиву #pragma comment(linker, "/STACK:67108864") Для GNU C++ и Java размер стека уже настроен в системе и составляет не менее 64 мегабайт. Для языка Python можно написать следующий код:
Вопрос:Как на своём компьютере оценить, сколько времени и памяти занимает программа?Ответ:Можно воспользоваться программой runexe. Ещё один вариант - программа Run. Также можно воспользоваться программой Тестер (но она умеет запускать только 32-битный код).Вопрос:Как правильно считывать входные данные, если неизвестно заранее их количество?Ответ для некоторых языков:
Вопрос:Как писать и отправлять задачи на Java?Ответ:Смотрите здесьВопрос:Как писать и отправлять задачи на Free Basic?Ответ:Смотрите здесьВопрос:Как писать и отправлять задачи на Perl?Ответ:Смотрите здесьВопрос:Как писать и отправлять задачи на Lua?Ответ:Смотрите здесьВопрос:Как писать и отправлять задачи на Visual Basic?Ответ:Смотрите здесьВопрос:Как писать и отправлять задачи на Visual C#?Ответ:Смотрите здесьВопрос:Как писать и отправлять задачи на Python?Ответ:Смотрите здесьВопрос:Как писать и отправлять задачи на ассемблере?Ответ:Смотрите здесьВопрос:Как писать и отправлять задачи на CScript (WSH) JScript?Ответ:Пример решения задачи "A+B":
Вопрос:Как писать и отправлять задачи на CScript (WSH) VBScript?Ответ:Пример решения задачи "A+B":
Вопрос:Как отправлять задачи на Node.js?Ответ:Пример решения задачи "A+B":
Пример альтернативного решения в одну строку:
Вопрос:Как писать и отправлять задачи на Octave?Ответ:Смотрите здесьВопрос:Как отправлять задачи на SQL?Ответ:Язык SQL не является универсальным языком, он используется только для решения задач раздела Учебные курсы / Базы данных. При отправке SQL-запросов следует придерживаться следующих правил:1. Точка с запятой в конце предложения не ставится 2. Всем вычисляемым полям необходимо явно давать имена длиной до 30 символов, например, так:
Вопрос:Как отправлять задачи на Go (golang)?Ответ:Пример решения задачи "A+B":
Вопрос:Как отправлять задачи на Kotlin?Ответ:Пример решения задачи "A+B":
Вопрос:Как отправлять задачи на Rust?Ответ:Пример решения задачи "A+B":
Вопрос:Как отправлять задачи на Prolog?Ответ:Язык Пролог используется в основном для решения задач раздела Учебные курсы / Логика и теория алгоритмов. Но на нём можно решать и другие задачи.При запуске вашей программы будет запускаться правило с именем main. Пример решения задачи A+B:
Проверка условий на Прологе может выполняться стрелочным оператором ->. Пример программы, определяющей, которое из двух чисел больше:
Вопрос:Почему у меня недоступны подсказки к задачам или нет доступа к учебникам?Ответ:Доступ к подсказкам (например, просмотр теста, на котором решение получает "Неверный ответ") зависит от тем, к которым принадлежит задача. Например, для задач с олимпиад подсказки, как правило, выключены.Доступ к большинству учебников доступен только студентам, имеющим учетную запись в домене кафедры АВТ ВоГУ. Чтобы подтвердить наличие учетной записи в домене, нужно сделать следующее: 1). Войти в проверяющую систему с текущим логином и паролем, щелкнуть по ссылке - своему имени, перейти в "Редактировать профиль" и поменять логин, чтобы он совпадал с именем входа в домен. 2). Заново войти в систему, введя при этом доменный пароль. Если возникает ошибка входа, перезапустить браузер. Если у вас ещё нет учетной записи в домене, обращайтесь к Андрианову И.А. или Ржеуцкой С.Ю. Вопрос:Как правильно оформить условие новой задачи?Ответ:Условие задачи оформляется по специальному HTML-шаблону.Нигде в шаблоне не должно присутствовать название задачи! HTML-шаблон условия задачи выглядит так:
Если вы не нашли ответа на свой вопрос, пишите на avt@vogu35.ru или igand@mail.ru. | |||||||||||||||||||||||||||||||||||||||||
|