Искусство программирования

  • (1)

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

Педагоги

Кравцова Мария Владимировна

  • Должность: заместитель директора по учебно-воспитательной работе
  • Образование: высшее профессиональное
  • Место учебы: Российский государственный педагогический университет им. А.И. Герцена
  • Специальность: Математика
  • Категория: высшая
  • Педагогический стаж: 24 года

Русанова Ольга Александровна

  • Должность: педагог дополнительного образования
  • Образование: послевузовское профессиональное
  • Ученая степень: к.т.н.
  • Место учебы: Красноярский государственный технический университет
  • Специальность: Вычислительные машины, комплексы, системы и сети
  • Категория: не имеет
  • Педагогический стаж: 20 лет

Расписание

Занятия проходят 2 раза в неделю, по 2 академических часа

Содержание программы

1 год обучения (144 часа):

  • Основные операторы Паскаля. Повторение
  • Массивы
  • Строковые и символьные функции
  • "ВООШ"
  • Строковые и символьные функции
  • Подпрограммы
  • Рекурсия
  • Сортировки
  • Преобразование типов данных
  • "ВОШ". Муниципальный этап
  • Индивидуальные творческие проекты
  • Комбинаторика
  • Многоразрядная арифметика. Решение задач.
  • Магические квадраты.
  • Латинские квадраты.
  • Решение задач на скорость.
  • Задача Люка.
  • Методы сортировок.
  • Организация справочников.
  • Структурный тип данных. Задачи.
  • Анализ арифметических выражений. Польская запись.
  • Решение систем линейных уравнений.
  • Алгоритмы решения нелинейных уравнений.

2 год обучения (144 часа):

  • "ВООШ"
  • Невзвешенные графы. Обход в ширину и глубину
  • Взвешенные графы. Кратчайшие пути и остовные деревья
  • Графы. Потоки и паросочетания
  • Топологическая сортировка графа
  • Циклы в графах (Эйлеров цикл, Гамильтонов цикл)
  • Алгоритм Дейкстры с кучей
  • Алгоритм Флойда-Уоршелла
  • Организация справочников
  • Решение систем линейных уравнений.
  • Указатели и списки
  • Динамическое программирование

Цели программы

  • Поиск новых эффективных средств развития у одаренных учащихся алгоритмического и операционального мышления.
  • Подготовка учащихся к успешному участию в конкурсах и олимпиадах по программированию высокого уровня.

Результат программы

Учащиеся должны знать:

  • алгоритмы обработки массивов (поиск элемента с заданными свойствами, удаление элементов, вставка элементов, замена элементов, обмен местами групп элементов);
  • математические основы комбинаторики
  • понятие размещения с повторениями, перестановки, сочетания
  • понятие динамического программирования.
  • принципы многоразрядной арифметики и области ее применения; знание алгоритмов сложения, вычитания, деления, нахождения факториала и извлечения корня в многоразрядной арифметике.
  • иметь понятие о латинских квадратах; знать алгоритмы их получения
  • иметь понятия о структуре справочников, об их организации, методах их построения на компьютере; знать алгоритмы замены, вставки, удаления объектов; иметь представление о хэшировании; знать основные подходы и алгоритмы хэширования.
  • знать принципы и алгоритмы анализа арифметических выражений; иметь понятие об инфиксной, префиксной и постфиксной записи арифметических выражений и их решения при соответствующих записях; иметь понятие о польской записи; знать алгоритмы решения выражений в польской записи; алгоритмы перевода выражений из обычной записи в польскую.
  • иметь понятие о задаче люка и ее модификациях; знать алгоритм решения классической задачи Люка
  • знание принципов и алгоритмов построения нечетных, четных и четно-нечетных квадратов; знание алгоритма Лялубера; знание алгоритмов построения вложенных магических квадратов, магических N-угольников

 Учащиеся должны уметь:

  • применять алгоритмы сортировки для решения задач
  • применять различные структуры данных при решении задач
  • использовать процедуры и функции при решении задач
  • использовать принципы динамического программирования при решении задач
  • иллюстрировать на конкретных примерах понятие алгоритма и его свойства;
  • записывать конструкции языка программирования Паскаль;
  • составлять, отлаживать и исполнять на ЭВМ программы решения учебных задач по программированию;
  • применять методы вычислений для решения задач из курса физики, математики и др.;
  • применять метод пошаговой детализации построения алгоритма для решения задач.
  • решать задачу Люка и ее различные модификации
  • распознавать задачи, где возможно применение алгоритмов построения магических N-угольников; умение решать задачи на построение магических квадратов и N. угольников различных типов
  • определять задачи, где требуется применение многоразрядной арифметики, умение решать задачи этого типа.
  • решать задачи на латинские квадраты.
  • строить справочники, применять алгоритмы замены, вставки, удаления объектов; решать задачи на применение методов хэширования.
  • переводить выражения из одной записи в другую; умение строить выражение в польской записи или переводить из обычной, а также решать выражения на ней

Особые условия проведения

В соответствии с Правилами приема, зачисление на программу происходит по результатам собеседования. Запись на
собеседование через личный кабинет на сайте asu.ctrigo.ru

Материально-техническая база

  • компьютерный класс, оборудованный в соответствии с санитарными нормами: столами и стульями для педагога и обучающихся, персональными компьютерами, шкафами для хранения учебной литературы
  • мультимедийный проектор и интерактивная доска
  • подключение к сети Интернет
  • программное обеспечение для занятий: пакет программ Microsoft Office, включающий текстовый редактор Microsoft Word, табличный редактор Microsoft Excel и программу для создания презентаций Microsoft PowerPoint, свободно распространяемые программы PascalABC

Стоимость

Занятия проходят на бюджетной основе.