ПОЛОЖЕНИЕ ОБ ОБЛАСТНОЙ ОЛИМПИАДЕ ПО ПРОГРАММИРОВАНИЮ СРЕДИ СТУДЕНТОВ, ОБУЧАЮЩИХСЯ ПО СПЕЦИАЛЬНОСТЯМ И ПРОФЕССИЯМ СРЕДНЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ УКРУПНЕННОЙ ГРУППЫ 09.00.00 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА»

I. Общие положение

  1. Настоящее Положение определяет порядок проведения областной олимпиады по программированию среди студентов, обучающихся по специальностям и профессиям среднего профессионального образования укрупненной группы профессий и специальностей 09.00.00 Информатика и вычислительная техника (далее – Олимпиада), ее организационное и методическое обеспечение, порядок участия в Олимпиаде и определения победителя и призеров.
  2. Оператором по подготовке и проведению Олимпиады является Государственное бюджетное профессиональное образовательное учреждение Иркутской области «Иркутский авиационный техникум» (далее – ИАТ).

II. Цели и задачи Олимпиады

Олимпиада проводится в целях выявления качества подготовки выпускаемых специалистов, дальнейшего совершенствования их мастерства, закрепления и углубления знаний и умений, полученных в процессе теоретического и практического обучения, стимулирования творческого роста, повышения престижа среднего профессионального образования, выявления наиболее одаренных и талантливых обучающихся в области информационных технологий и посвящена 90-летию Государственного бюджетного профессионального образовательного учреждения Иркутской области «Иркутский авиационный техникум».

  1. Основными задачами Олимпиады являются

4.1 повышение интереса студентов к своей будущей профессии, осознание её социальной значимости;
4.2 стимулирование творческого роста студентов, выявление одаренной молодежи для формирования кадрового потенциала для исследовательской и производственной деятельности России в сфере высоких технологий;
4.3 выявление уровня подготовки студентов, закрепление и углубления знаний и умений студентов, полученных в процессе теоретического, практического и профессионального обучения;
4.4 проверка способностей студентов к системному действию в профессиональной ситуации;
4.5 проверка готовности будущего специалиста к самостоятельной трудовой деятельности;
4.6 совершенствование навыков самостоятельной работы и развития профессионального мышления;
4.7 обмен опытом в области профессионального обучения по новым технологиям.

III. Организация и проведение Олимпиады

5. Олимпиада проводится 28 марта 2025 г. на базе ИАТ по адресу: г. Иркутск, ул. Ленина, 5 «а».
6. К участию в Олимпиаде допускаются студенты, обучающиеся по специальностям и профессиям среднего профессионального образования укрупненной группы профессий и специальностей 09.00.00 «Информатика и вычислительная техника», прошедшие регистрацию на сайте op.irkat.ru в срок до 21 марта 2025 года.
7. Процедуру регистрации участников Олимпиады от образовательного учреждения осуществляет ответственный сотрудник (руководитель команды), назначенный приказом руководителя.
8. Полный список участников Олимпиады публикуется на сайте олимпиады (op.irkat.ru) 21 марта 2025 года.
9. От одной образовательной организации в Олимпиаде может принимать участие не более 3 человек.
10. Руководитель команды от образовательной организации входит в состав жюри.
11. Организацию работы по подготовке и проведению Олимпиады осуществляет оргкомитет Олимпиады, состав которого утверждается приказом руководителя ИАТ.
12. В функции оргкомитета входят: разработка плана подготовки и проведения Олимпиады, разработка конкурсных заданий и критериев их оценки.
13. План проведения Олимпиады:

ВремяМестоМероприятие
09:00-09:30Холл актового зала ИАТ (3 этаж)Регистрация участников Олимпиады и их руководителей
09:30-09:50Актовый зал ИАТОткрытие олимпиады, инструктаж
09:50-14:00Аудитории ИАТ: 206, 208, 209, 211Проведение Олимпиады
10:00-11:00Аудитория ИАТ 315Согласование критериев оценки
11:00 – 13:00Аудитория ИАТ 315Круглый стол (315 ауд) 1. «Демонстрационный экзамен: из опыта» 2. «Дидактическое содержание профессиональных дисциплин и МДК»
13:00-13:30БуфетОбед
13:10 – 14:00Аудитория ИАТ 315Проверка заданий
14:00-15:00Актовый зал ИАТПодведение итогов, награждение

14. Программное обеспечение: для выполнения заданий Олимпиады всем участникам предлагаются (на выбор) следующие программные продуты:

  • Pascal ABC.NET;
  • Visual Studio 2022 (C#, VB.NET, C++);
  • Java 21;
  • Python 3;
  • Go 1.21;
  • Node.js 20.

IV. Правила учета решений

15. Решения участников Олимпиады будут оцениваться строго по формальному принципу с помощью тестирования на некотором множестве тестов. Поэтому к решениям участников и их оформлению предъявляются жесткие формальные требования, за несоответствие которым жюри оставляет за собой право оценивать решения в 0 (ноль) баллов.
16. Задания по программированию предполагают решение в виде написания программы на выбранном языке программирования. Разработанные программы должны выполнять обработку каких-либо входных данных согласно условию задачи.
17. Тесты для задачи представляют собой наборы входных данных согласно условию задачи, а также тестирующий модуль, который для конкретного набора входных данных (теста) может проверить правильность набора выходных данных, полученных с помощью программы-решения участника Олимпиады. Для каждого олимпиадного задания разрабатывается свой набор тестов.
18. Оценка решения участника производится в зависимости от количества пройденных решением тестов. Тест считается пройденным, если для данного теста с помощью решения участника получены выходные данные, правильные согласно условию задачи. Каждому тесту сопоставляется какое-то количество баллов за прохождение теста в зависимости от сложности данного теста. Таким образом, каждое решение оценивается в сумму баллов за пройденные данным решением тесты.
19. Форматы входных файлов строго соответствуют заявленным в условиях задач. Форматы выходных файлов решения должны строго соответствовать требуемым форматам в условиях задач. Любое несоответствие может быть рассмотрено жюри в качестве неверного решения с оценкой в 0 (ноль) баллов.
20. Решения, которые являются «подгонкой» под правильный ответ с целью пройти ряд тестов, оцениваются жюри в 0 баллов независимо от того, сколько такое решение набрало баллов в результате тестирования. Такие решения выявляются жюри при изучении исходного кода программ. Если к решению участника исходных текстов не прилагается, то такое решение оценивается в 0 (ноль) баллов.

V. Правила поведения участников Олимпиады и руководителей команд при выполнении заданий

21. Запрещаются переговоры между участниками Олимпиады (далее – участник), между участниками и руководителями команд.
22. Строго запрещается пользоваться сотовыми телефонами, справочниками и другими источниками информации (за исключением источников инсталлированных на ПК).
23. Участник может покинуть аудиторию только в сопровождении волонтера.
24. Участник обязательно должен согласовать свой выход за пределы техникума со своим руководителем.
25. Руководитель команды  имеет право заходить в аудитории, где участники выполняют задания, но при этом контакт с участниками в той или иной форме запрещён.

VI. Правила оформления решений

26. Учитывая, что решения участников Олимпиады оцениваются с помощью тестов, при разработке решений следует строго соблюдать форматы входных и выходных данных, указанных в условии задачи.
27. В общем случае программа-решение состоит из трех частей:
— чтение входных данных из входного файла;
— обработка данных для поиска правильного ответа;
— запись полученного ответа в выходной файл.
Примеры оформления решений представлены в Приложении к данному положению.

VII. Критерии оценивания

28. Критерии оценивания согласовываются на заседании оргкомитета.

VIII. Подведение итогов олимпиады

30. Для подведения итогов Олимпиады и определения победителей и призеров (второе и третье место) оргкомитетом Олимпиады создается жюри.
31. В состав жюри входят представители от образовательных организаций, направивших студентов для участия в Олимпиаде, и ИАТ.
32. По итогам Олимпиады определяются победитель и призеры среди участников, а также победитель и призеры среди команд. Победитель и призеры среди команд определяются в случае, если численность команды составляет три человека.
33. Победителем Олимпиады считается участник (команда участников), набравший наибольшее количество баллов, призерами – участники (команды участников), набравшие по количеству баллов второй и третий результаты.
34. По результатам работы жюри составляет протокол, в котором указываются победители и призеры Олимпиады.
35. Победители и призеры Олимпиады награждаются соответствующими дипломами.
36. Образовательным организациям, подготовившим победителей и призеров, вручаются благодарственные письма.

Примеры оформления решений задачи «Сумма чисел»
на различных языках программирования

Пример задания

Имя входного файла:Input.txt
Имя выходного файла:Output.txt
Максимальное время работы на одном тесте:3 секунды  
Максимальный объем используемой памяти:50 мегабайт
Максимальная оценка100 баллов

Задача (сумма чисел):
Требуется написать программу, которая складывает два целых числа.

Формат входных данных Входной файл содержит одну строку, в которой через пробел представлены два целых числа.

Формат выходных данных
Выходной файл должен содержать целое число. Гарантируется, что решение существует.

Примеры входных и выходных данных

Input.txtOutput.txt
12 315
3 -5-2
0 99
-2 -3-5

Примеры решения задачи

Pascal ABC.NETVisual C#
const  
InputFileName = ‘input.txt’;
OutputFileName = ‘output.txt’;  
var  
A, B, C: Integer;
Input, Output: Text;  
begin  
Assign(Input, InputFileName);  
Reset(Input);  
Assign(Output, OutputFileName);  
Rewrite(Output);   
ReadLn(Input, A, B);  
C := A + B;   WriteLn(Output, C);
  Close(Input);
  Close(Output);
end.

using System ;
using System.IO ; 
using System.Text ; 

namespace ConsoleApplication2

class Program

static void Main (string[] args) 

StreamReader input = new StreamReader(«input.txt»); 
String[] line = input.ReadLine().Split(‘ ‘); 
int a = Convert.ToInt32(line[0]) ; 
int b = Convert.ToInt32(line[1]) ; 

int c = a + b; 
StreamWriter output = new StreamWriter(«output.txt»); 
output.Write(c); 
output.Close(); 


}
Visual C++Visual Basic .NET
#include «stdafx.h» 
#include <iostream> 
#include <fstream> 
using namespace std ; 

int main ( ) 

    ifstream input («input.txt»); 
    int a, b, c; 
    input >> a >> b;
    c = a + b;
    std::ofstream out(«output.txt»);
    out << c;
    out.close();
    return 0;
}
Imports System.IO
Module Module1

Sub Main ( ) 
  Dim line As String , parts As Array, a As Integer , b As Integer , c As Integer 
 
  Using input As New StreamReader(«input.txt») 
    line = input.ReadLine() 
  End Using
  parts = line.Split(» «) 
  a = parts(0) 
  b = parts(1) 
  c = a + b
 
  Using output As New StreamWriter(«output.txt») 
    output.Write(c) 
  End Using End Sub 
End Module
JavaPython
import java.util.*;
import java.io.*;
public class Main{  
public static void main(String[] argv)
throws IOException{    
new Main().run();  
}  
PrintWriter pw;
Scanner sc;public void run() throws IOException{
sc = new Scanner(new File(«input.txt»));
int a=sc.nextInt(), b=sc.nextInt();
pw = new PrintWriter(new File(«output.txt»));
pw.print(a+b);    
pw.close();  
}
}
fin = open(«input.txt»)
fout = open(«output.txt»,»w»)

a, b = map(int, fin.readline().split())
fout.write(str(a+b))

fin.close()
fout.close()  
GoNode.js
package main
import («fmt»; «os»)
func main(){
in, _ := os.Open(«input.txt»)
out, _ := os.Create(«output.txt»)
var a, b int
fmt.Fscanf(in, «%d %d», &a, &b)
fmt.Fprintf(out, «%d», a+b)
}
const fs = require(‘fs’);
const readableStream = fs.createReadStream(‘input.txt’, ‘utf8’)
readableStream.on(‘data’, (data) => {
let input = data.split(‘ ‘);
throw data;
let a = +input[0];
let b = +input[1];
let c = a+b;
fs.writeFileSync(«output.txt», c.toString());
})