Как пользоваться информатиксом

Задачи Гость Школьник Команда Учитель Авторизованный учитель Редактор
Просмотр материалов сайта + + + + + +
Просмотр закрытых материалов при наличии ключа при наличии ключа при наличии ключа при наличии ключа
Сдача решений в тестирующую систему + во время виртуального турнира + +
Просмотр списка посылок + + + +
Просмотр текстов и протоколов своих программ + + + +
Просмотр чужих посылок +
Создание групп школьников + +
Создание своих курсов и материалов + +
Создание задач + + + + +
Редактирование условий, разборов, тем +
Предложение новых тем к задаче + + + + +
Создание мониторов + +
Комментирование посылок участников + +
Редактирование статусов посылок +

Авторизованный учитель

Авторизованный учитель имеет возможность просматривать все посылки участников (исходные коды, протоколы и тесты). Им могут стать учителя и руководители кружков после аккредитации (инструкция чуть ниже). К сожалению, если вы ведете частную преподавательскую практику (например, как репетитор или готовите друзей и близких по какой-то теме), статус авторизованного учителя не будет выдан. 

Чтобы получить статус авторизованного учителя, зарегистрируйтесь как учитель (основная возможность регистрации на сайте – ученик, будьте аккуратны при выборе), познакомьтесь с возможностями сайта в этом режиме (возможно, вам их будет достаточно) и заведите тикет https://informatics.msk.ru/support/, приложив следующую информацию о себе:

  1.  Вашу ФИО, город, образовательную организацию
  2. Логин и привязанную к нему почту на информатиксе в рамках учетной записи (проверьте в личном кабинете, что эта почта действительно привязана)
  3. Ссылку на страницу образовательной организации, в которой вы работаете 
  4. Ссылку на свой курс на информатикс (или тот, который проходите с учениками) 
  5. Ссылку на группу школьников, проходящих ваш курс (url должен содержать подстроку group_id), в случае если у вас не ваш курс

В рамках этой роли мы просим не публиковать и не распространять тесты к задачам, не изменять статусы посылок не ваших учеников.

Почти авторизованный учитель

Процедура аккредитации может занимать длительное время (несколько недель), с сентября 2023 года появилась возможность вести занятия с просмотром кода посылок и коротких протоколов. Как это работает? Владелец курса (роль "Менеджер) назначает роль "Авторизованный учитель" в рамках курса для просмотра посылок (это не то же самое, что глобальный авторизованный учитель на всем сайте, описанный выше, а как бы авторизованный учитель только в рамках курса). После этого любая учетная запись со статусом "Учитель" может смотреть исходный код посылок и сокращенные протоколы, отправленных только в рамках курса.

Просмотр списка посылок

В каких разрезах можно смотреть списки посылок: 

  • по данной задаче (список посылок всех пользователей, можно попасть с страницы с условием задачи, кнопка в правом верхнем углу "Посылки по задаче")
  • по задачам данного контеста (список посылок всех пользователей по выбранному контесту, можно попасть с страницы с условия любой задачи из контеста, кнопка в правом верхнем углу "Все посылки")
  • по задачам данного контеста с фильтром по вашей группе (список посылок всех пользователей, можно попасть с страницы с условием задачи, кнопка в правом верхнем углу "Все посылки" и далее в списке ниже выбрать фильтр по вашей группе, или, если используете механизм "Запись на курс" сделать фильтр по нему)
  • все собственные посылки по всем задачам ("Мои посылки" на главной странице)

Редактирование задач

Отдельным пользователям дополнительно предоставляются права редактора сайта. Эти пользователи могут редактировать условия и разборы всех задач, а также указывать новые и редактировать старые темы, отнесенные к задаче. Если вы не редактор и нашли ошибку, заведите, пожалуйста, тикет https://informatics.msk.ru/support/

Создание групп

Для фильтрации результатов ваших учеников от остальных пользователей сайте есть 2 механизма:

  1. Вы создаете собственный курс и настраиваете запись/записываете учеников на курс (раздел "Участники", шестеренка в правом верхнем углу, "Настроить запись"). После этого в таблице результатов и всех посылках у вас есть фильтр "Все записавшиеся на курс". По его нажатию и произойдет отображение результатов только ваших учеников. 
  2. Вы не создаете собственный курс, а проходите с учениками уже существующий. Вы можете объединить школьников в группы. У вас, как у создателя группы, и у всех включенных вами в группу участников на странице каждого контеста появятся новые ccылки в разделе "Список групп"

Как это выглядит 

Группу может создать учитель/авторизованный учитель. В группу можно включать как школьников, так и других учителей (при этом изменять состав группы может только ее создатель или администраторы сайта).

Для того, чтобы создать группу:

  1. На главной странице в правом столбце выберите "Управление группами".
  2. На открывшейся странице выберите "Создать группу"
  3. Введите название группы (например, "Школа 125, 9А, 2020") и нажмите на кнопку создать.
  4. В правом окне размещен список всех пользователей сайта. Выберите нужных вам участников и перетащите их в левую часть. Для поиска нужных людей вы можете воcпользоваться сортировкой по любому столбцу (для этого нажмите на его заголовок) а также поиском в столбце (для этого наведите курсор на правый конец заголовка столбца, выберите появившуюся стрелочку, выберите в меню "Фильтр" и введите текст для поиска (например, фамилию ученика, номер школы или город).
  5. Найти нужного школьника и перетащите его в левую таблицу. Он сразу же будет добавлен в группу.
  6. Чтобы исключить школьника из группы, нужно перетащить его из левой таблички в правую.

Создание курса

Курс может создать учитель/авторизованный учитель. Курс может включать в себя несколько разделов, состоящих из материалов различного типа: контестов, теоретических материалов, тестов, заданий, ссылок на файлы и веб-страницы, таблиц результатов и т.д. Ссылки на все созданные курсы отображаются на главной странице в разделе "Кружки и уроки".

Для создания нового курса заполните приведенную форму. Слева от каждого блока есть знак вопроса - при наведении на него курсора откроется текстовая подсказка с пояснением, что происходит :) В дальнейшем вы всегда сможете изменить любой из указанных параметров курса.

Добавление пользователей в курс

Для того, чтобы добавить пользователей в курс, перейдите на главную страницу курса, нажмите на шестерёнку и выберите "Больше". Во вкладке "Пользователи" перейдите в "Записанные на курс пользователи". Нажмите на кнопку "Записать пользователей на курс", найдите пользователя которого хотите добавить, выберите роль и нажмите "Запись пользователей на курс"

Информация ниже относится к предыдущей версии сайта, местами может не соотвествовать новой версии. Постараемся скоро поправить

Добавление учебных материалов

Для начала редактирования курса нажмите кнопку Редактировать в правом верхнем углу на страничке курса.

Курс состоит из вводного раздела (без номера), в котором собрана информация и материалы, относящиеся ко всему курсу целиком, а также пронумерованных разделов (1, 2, 3, ...) каждый из которых может соответствовать по вашему желанию одному занятию, одному классу, одному мероприятию и т.п.

Для указания названия (или вступления) к разделу, нажмите на в левом верхнем углу соответствующего раздела. В этом поле вы можете написать любой текст в формате html, например:

<b>Условный оператор</b><br>Задачи этого раздела нужно сдать до 5 февраля.

или просто указать название раздела, например:

Условный оператор

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

  • Условия задач: контест, составленный из задач, имеющихся в тестирующей системе сайта. Школьникам будут доступны условия задач и возможность сдачи решений в тестирующую систему. Отметим, что эти материалы являются основным содержанием сайта, и мы надеемся, что вы будете создавать курсы с использованием задач с автоматическим тестированием.
  • Таблица результатов: сводная таблица по нескольким контестам для данной группы.
  • Пояснение: небольшой фрагмент текста на странице курса (в формате html)
  • Текстовая страница: отдельный текстовый документ, который вы планируете написать, со ссылкой на него со страницы курса.
  • Веб-страница: то же, но в формате html
  • Ссылка на файл или веб-страницу: ссылка на существующую страницу в сети интернет или на страницу или файл на данном сайте. Вы также можете предварительно закачать файлы в свой курс и поставить ссылку на них.

Также вы можете создавать тесты, задания. опросы и т.п.

После создания любого материала справа от него появятся значки: перенести вправо (сделать отступ), перенести (в другое место курса), редактировать (сам материал и/или его настройки), удалить, спрятать (от школьников).

Создание контеста

Контест - это набор задач на одну тему, либо предлназначенный для решения на одной олимпиаде, тренировке итп.

Для каждого контеста доступна своя таблица результатов, а также список посылок, сделанных школьниками по задачам данного контеста. Одна задача может входить в разные контесты, при ее решении результаты (в таблице результатов и списке посылок) появляются сразу во всех контестах, содержащих данную задачу.

Для создания контеста выберите в выпадающем меню Добавить ресурс в соответствующем разделе вашего курса пункт Условия задач. В поле название укажите заголовок контеста (например: Условный оператор или Тренировка №5). Если вы планируете провести олимпиаду и контрольную работу, вы можете отметить флажок Не показывать разборы, темы и т.д. - в этом случае школьникам не будут показываться различные подсказки.

Если вы пока не хотите открывать данный контест для школьников, выберите в пункте Доступные вариант Спрятать.

Нажмите кнопку Сохранить.

После этого вы сможете выбрать задачи для данного контеста. Для этого есть два основных способа:

  1. Выбрать задачи из тематического рубрикатора. После перехода по данной ссылке вы попадете в тематический рубрикатор. Там присутствуют не все, но большая часть задач, имеющихся в тестирующей системе, и он постоянно пополняется. Под каждой задачей есть ссылка добавить, которая перемещает данную задачу в ваш контест. После выбора всех необходимых задач нужно нажать ссылку Создать контест в левом верхнем углу.

  2. Добавить задачи по id (идентификационному номеру). Вы можете предварительно выбрать интересующие вас задачи в других разделах сайта и выписать себе их номера, а затем ввести их, перейдя по данной ссылке.

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

После выбора задач вы можете менять их порядок и удалять или скрывать те или иные задачи.

О задачах

Задача - это основной объект на данном сайте. Данный сайт в первую создавался в первую очередь как база задач по программированию для школьников с автоматической проверкой. Чтобы успешно использовать его в своей деятельности, необходимо прежде всего понять, что такое задача и как она устроена.

Структура задачи

Каждая задача включает в себя:

  1. Id - уникальный числовой идентификатор, по которому вы можете получить доступ к данной задаче из окошка на главной странице, по которому вы можете добавить задачу в контест и который удобнее всего использовать при ссылке на данную задачу.
  2. Название задачи
  3. Условие задачи - хранится на сайте в формате html. Некоторые задачи опуликованы без условий, либо по лицензионным соображениям (задачи взяты из книг), либо потому что добавивший их учитель не хочет раньше времени показывать условие ученикам.
  4. Темы - большинству задач приписаны одна или несколько тем из Тематического рубрикатор. Вы можете предложить новые темы для каждой задачи, после одобрения администратором они будут прикреплены к задаче.
  5. Разбор - описание решения задачи. Как правило, разборы написаны школьниками-участниками сайта, и мы не несем ответственности за их содержание и грамотность. При этом данные тексты часто бывают полезны школьникам, поэтому пока мы оставили их на сайте в таком виде.
  6. Описание - краткий текст для учителя, описывающий задачу и/или ее решение.
  7. Тестирующий модуль: тесты и проверяющие программы - практически все задачи на сайте сопровождаются возможностью их автоматической проверки.
  8. Посылки - список всех посланных на проверку решений с указанием результатов проверки. Авторизованным учителям и администраторам также доступны тексты всех решений и тестов и правильных ответов. Остальным участникам доступны только тексты своих решений, протоколы проверки, а также - для некоторых задач, как правило, личных олимпиад начального уровня - тесты и правильные ответы.
  9. Результаты - таблица результатов по данной задаче. Одна и та же задача может присутствовать в разных контестах, при этом сдача решения в одном контесте влечет за собой появление информации о посылке и результатах данного участника по данной задаче во всех контестах, куда входит эта задача.

Список всех ваших посылок доступен в меню на главной странице сайта (ссылка Мои посылки).

Создание задач

Задачи на сайт добавляются при помощи системы Polygon. Более подробно о добавлении задач на сайт можно прочитать в этой инструкции.

Редактирование задач

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

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

Мониторы

Иногда бывает удобно объединить в одну таблицу результатов несколько контеcтов (например, все уроки данного класса или два тура одной олимпиады).

Создание таких таблиц результатов делается в два шага.

  1. Создание набора контестов (монитора). На главной странице в разделе Рабочий стол учителя пройдите по ссылке Управление мониторами, далее: создать монитор и укажите название создаваемого монитора. Выберите контесты, которые необходимо в него включить и перетащите их мышью из правой таблицы в левую.

  2. Создание таблицы результатов. Находясь в своем курсе, нажмите кнопку редактировать, в нужном разделе в выпадающем меню Добавить реcурс... выберите пункт Таблица результатов. Укажите ее название, выберите в пункте Таблица результатов созданный вами в п.1 монитор, а в пункте Группа - интересующую вас группу школьников либо пункт Все участники. Нажмите Сохранить.

В мониторе указываются только те участники, которые сделали в указанных контестах хотя бы одну посылку, и только те контестых, в которых указанные участники сделали хотя бы одну посылку.

Чтобы сделать монитор по секретной ссылке, можно сделать следующее:

  1. найти id нужных контестов, например https://informatics.mccme.ru/course/view.php?id=34 — id это 34
  2. сгенерировать секретную ссылку, для этого нужно отправить POST-запрос на /py/monitor, с нужными параметрами

Параметры: contest_id=1&contest_id=2&contest_id=3 ... -- нужные id контестов aka модулей курсов group_id=4 -- группа, по которой делается монитор, если не указывать, будет по всем пользователям time_before=1521742439 -- время в timestamp, до которого собирать посылки time_after=1521742439 -- время в timestamp, после которого собирать посылки

Можно сделать это например с помощью js в консоли браузера на сайте информатикса:

url = 'https://informatics.msk.ru/py/monitor?contest_id=19635&group_id=11139'
jQuery.post(url, (data) => console.log(data))
> {link: "b1gefbmozwa72hasnj8z"}

или

url = 'https://informatics.msk.ru/py/monitor?contest_id=19635&group_id=11139&time_before=1521742439'
jQuery.post(url, (data) => console.log(data))
> {link: "g0fa6u928we50w1pdow9"}

Из запроса вернётся JSON с токеном для доступа к монитору

  1. Вставить токен вот сюда, https://informatics.msk.ru/py/monitor//render -- это будет собственно монитор, например https://informatics.msk.ru/py/monitor/b1gefbmozwa72hasnj8z/render https://informatics.msk.ru/py/monitor/g0fa6u928we50w1pdow9/render

Параметры: partial_score=on -- показывать баллы, например: https://informatics.msk.ru/py/monitor/b1gefbmozwa72hasnj8z/render?partial_score=on

Так же можно получить и чистый JSON: https://informatics.msk.ru/py/monitor/b1gefbmozwa72hasnj8z https://informatics.msk.ru/py/monitor/g0fa6u928we50w1pdow9

Чтобы сгенерировать ссылку, нужно быть авторизованным учителем; чтобы увидеть монитор, нужно быть залогиненым

Статусы посылок

После автоматического тестирования каждое решение получает статус проверки: OK, неполное решение, превышен лимит времени, превышен лимит памяти, и т.д.

Авторизованные учителя могут вручную изменять статус проверки. Обычно вручную устанавливаются следующие статусы:

  1. Ошибка оформления кода: этот статус устанавливается учителем, если ему не нравится, как отформатирован код, как названы переменные и т.п.
  2. Проигнорировано: этот статус означает, что учитель по тем или иным причинам не хочет засчитывать данное решение (например, использован не тот алгоритм итп)
  3. Дисквалифицирован: решение не засчитано по причине списывания и т.п.

Варианты статусов посылок

Сокращение In English Расшифровка
OK OK OK
RJ Rejudge Перетестировать
AC Accepted for Testing Зачтено/Принято
SV Style Violation Ошибка оформления кода
IG Ignore Проигнорировано
CE Compilation Error Ошибка компиляции
DQ Disqualified Дисквалифицировано
PT Partial Solution Частичное решение
PD Pendin Ожидает проверки
RT Run-Time Error Ошибка во время выполнения программы
TL Time-Limit Exceeded Превышено максимальное время работы
PE Presentation Error Неправильный формат вывода
WA Wrong Answer Неправильный ответ
CF Check Failed Ошибка проверки, обратитесь к администраторам
ML Memory Limit Exceeded Превышение лимита памяти
SE Security violation Security error
RU Running Проверяется
CG Cpmpilling В очереди компиляции или компилируется
AW Awaiting В очереди проверки
Последнее изменение: Воскресенье, 1 Октябрь 2023, 00:17