Курс "Основы программирования. Часть 1." рассчитан на учащихся в возрасте от 11 лет. Начать прохождение курса можно в любой момент. Оптимальным для размеренного и вдумчивого прохождения курса считается срок в 1 учебный год, при средней нагрузке в неделю 2-4 академических часа. Можно пройти курс и гораздо быстрее, но если, по каким-то причинам, учащийся не успевает, то можно проходить курс и дольше, дополнительная плата за это не взимается.
На текущий момент в курсе представлены учебные материалы по двум языкам программирования: Pascal и C++. При этом выполнять задания можно на любом из более 20 представленных языков, поэтому курс уже сейчас можно использовать, как практикум для обучения на этих языках. Для данного курса наша команда планирует постепенно добавлять учебные материалы и по другим языкам программирования.
Курс состоит из трех блоков, каждый из которых содержит 8 занятий и зачетное задание. Отдельное занятие представляет собой набор из 8-9 задач различной сложности и материалов, необходимых для решения этих задач. Большая часть материалов - это небольшие видео-уроки с демонстрацией программного кода и закадровым пояснением этого кода.
Учащийся изучает материалы занятия и пытается применить полученные знания для решения задач. Проверка решений производится системой DOTS в автоматическом режиме (обычно) в течение нескольких секунд после отправки этого решения. Для прохождения курса и выполнения заданий в принципе достаточно любого устройства с доступом к Internet и возможностью набора текста. Решения можно сдавать в любое время дня или ночи.
Учащийся может корректировать и сдавать свое решение сколько угодно раз, никаких "штрафов" за это не налагается. При этом язык, на котором учащийся выполняет задания также не имеет значения. То есть, учащийся может пройти обучение на языке Pascal, а затем, используя тот же курс, изучать C++ или другой язык программирования.
Блоки курса:
1. Введение. Линейная алгоритмическая структура. Знакомство с языком программирования, среда разработки, первые программы. Ввод и вывод данных, типы данных и операции над ними.
2. Алгоритмическая структура ветвления. Операторы ветвления. Структуры выбора. Составление сложных логических выражений. Линеаризация ветвлений.
3. Алгоритмическая структура цикл. Повторения участков кода. Циклы с проверкой условия. Вложенные циклы. Линеаризация циклов.