Computer Science

Учебник Паскаль и КуМир для начинающих

35 уроков · 8 разделов · бесплатно, без регистрации

Это полный школьный курс программирования на Паскале — от первой программы до процедур, рекурсии и работы с файлами. Мы используем PascalABC.NET (самую популярную школьную среду) и объясняем каждую тему подробно, с примерами, разбором частых ошибок и заданиями «Попробуй сам». К ключевым алгоритмам мы добавляем запускаемые врезки на Python, чтобы вы могли пощупать логику вживую прямо в браузере. Курс готовит к информатике в школе и к олимпиадам.

Курс «Паскаль и КуМир» состоит из 8 разделов и 35 уроков: Введение и первая программа, Данные и операции, Ветвления и циклы, Массивы и строки, Процедуры, функции и файлы, КуМир: среда и алгоритмический язык, Исполнители КуМира и Алгоритмы и подготовка к ОГЭ (задание 15.1). Уроки идут по порядку — от основ к более сложным темам, в каждом есть объяснение с примерами, а в конце — вопросы для самопроверки. К урокам привязаны задачи с автоматической проверкой: прочитали тему — сразу закрепили её кодом.

Программа курса

  1. 1 Введение и первая программа

    1. Что такое Паскаль и зачем его учить

      Откуда взялся Паскаль, почему его учат в школе, чем хорош PascalABC.NET и где язык применяется на практике. Честный разговор для новичка.

    2. Среда PascalABC.NET: установка и первый запуск

      Как скачать, установить и запустить PascalABC.NET, из чего состоит окно среды, как набрать и выполнить первую программу и где искать ошибки.

    3. Структура программы: program, begin, end и точка с запятой

      Разбираем устройство паскалевской программы: заголовок program, раздел описаний, тело begin/end, роль точки с запятой и слов-операторов.

    4. Вывод на экран, комментарии и первая осмысленная программа

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

  2. 2 Данные и операции

    1. Переменные и оператор присваивания :=

      Что такое переменная, как объявить её в разделе var, чем оператор присваивания := отличается от равенства и как переменные меняют значения.

    2. Типы данных: integer, real, boolean, char, string

      Основные типы данных Паскаля: целые integer, дробные real, логические boolean, символы char и строки string — для чего нужен каждый и как их сочетать.

    3. Ввод данных: read и readln

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

    4. Арифметика, div и mod, приоритет и функции

      Арифметические операции Паскаля, целочисленное деление div и остаток mod, порядок выполнения операций, стандартные функции и форматный вывод чисел.

  3. 3 Ветвления и циклы

    1. Условный оператор if, then, else и составной оператор

      Условный оператор if/then/else в Паскале: как программа принимает решения, составной оператор begin/end, вложенные условия и частые ошибки.

    2. Оператор выбора case и логические выражения

      Оператор выбора case в Паскале для множества вариантов и логические связки and, or, not для составных условий с примерами и приоритетом.

    3. Цикл for: повторяем известное число раз

      Цикл for с to и downto в Паскале: как повторять действия заданное число раз, перебор чисел, накопление суммы и работа со счётчиком цикла.

    4. Циклы while и repeat, вложенность и досрочный выход

      Циклы while и repeat/until в Паскале для повторений по условию, вложенные циклы, защита от зацикливания и досрочный выход break и continue.

  4. 4 Массивы и строки

    1. Одномерные массивы: объявление, индексы, заполнение

      Что такое массив в Паскале, как объявить его через array of, обращение по индексу, заполнение и вывод элементов через цикл for.

    2. Типовые задачи с массивами: сумма, макс, мин, поиск, реверс

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

    3. Сортировки: пузырёк и выбором наглядно

      Сортировка массива пузырьком и выбором: понятное объяснение идеи каждого алгоритма, пошаговый разбор, код и сравнение с частыми ошибками.

    4. Двумерные массивы и матрицы

      Двумерные массивы (матрицы) в Паскале: объявление, обращение по строке и столбцу, заполнение и вывод в виде таблицы, сумма элементов и диагонали.

    5. Строки: посимвольная обработка, length, copy, pos

      Работа со строками в Паскале: тип string, обращение к символам по индексу, функции length, copy, pos и процедуры delete, insert с примерами.

  5. 5 Процедуры, функции и файлы

    1. Процедуры: выносим повторяющийся код

      Процедуры в Паскале: как объявить подпрограмму, зачем выносить код, параметры процедуры, локальные и глобальные переменные с примерами.

    2. Функции и передача параметров по ссылке var

      Функции в Паскале возвращают значение через Result или имя функции; разница параметров по значению и по ссылке var на наглядных примерах.

    3. Рекурсия: функция, вызывающая саму себя

      Что такое рекурсия в Паскале, базовый и рекурсивный случай, классические примеры — факториал и числа Фибоначчи — и защита от бесконечного вызова.

    4. Работа с текстовыми файлами: запись и чтение

      Работа с текстовыми файлами в Паскале: assign, rewrite, reset, append, запись и чтение данных, проверка eof и обязательное закрытие close.

  6. 6 КуМир: среда и алгоритмический язык

    1. Что такое КуМир и зачем он школьнику

      КуМир — Комплект Учебных МИРов от НИИСИ РАН: бесплатная среда с русскоязычным алгоязыком и исполнителями Робот, Черепаха, Чертёжник, Водолей. Зачем он нужен для ОГЭ.

    2. Структура алгоритма: алг, нач, кон, дано и надо

      Разбираем структуру программы КуМира: заголовок алг с именем и типом, тело нач…кон, комментарии дано и надо, типы алгоритмов и первые осмысленные программы.

    3. Величины и типы: цел, вещ, лог, сим, лит. Ввод и вывод

      Типы данных алгоритмического языка КуМир: цел, вещ, лог, сим, лит и табличные. Объявление переменных, команды ввод и вывод, нс, литералы и значения да/нет.

    4. Присваивание, арифметика и стандартные функции

      Оператор присваивания := в КуМире, арифметические операции, целочисленное деление div и остаток mod, степень, стандартные функции sqrt, abs, int, иррациональные значения.

    5. Алгоритмический язык против Паскаля: ключевые отличия

      Сравниваем алгоритмический язык КуМира и Паскаль: русские ключевые слова, синтаксис ветвлений и циклов, присваивание, объявление переменных, исполнители. Таблица соответствий.

  7. 7 Исполнители КуМира

    1. Исполнитель Робот: поле и команды движения

      Знакомство с исполнителем Робот в КуМире: клетчатое поле и стены, команды вверх, вниз, влево, вправо и закрасить, команда «использовать Робот», первые линейные программы.

    2. Проверки обстановки: стены, закрашенность, измерители

      Условия Робота в КуМире: «слева стена/свободно», «справа», «сверху», «снизу», «клетка закрашена/чистая», логические операции и, или, не, функции-измерители температура и радиация.

    3. Ветвления: если-то-иначе-всё и выбор

      Ветвления в КуМире: полная и неполная форма если-то-иначе-всё, вложенные условия, конструкция выбор-при-иначе-всё. Примеры для Робота и для вычислений.

    4. Циклы: нц…кц, нц пока, нц N раз, нц для

      Все циклы алгоритмического языка КуМир: цикл «нц пока» с условием, цикл «нц N раз» с повторами, цикл «нц для i от a до b», цикл с постусловием. Примеры для Робота.

    5. Черепаха и Чертёжник: рисование в КуМире

      Графические исполнители КуМира: Черепаха (вперёд, вправо, влево на градусы, поднять и опустить перо) и Чертёжник (сместиться в точку, сместиться на вектор, перо). Примеры рисования.

  8. 8 Алгоритмы и подготовка к ОГЭ (задание 15.1)

    1. Вспомогательные алгоритмы: процедуры и функции

      Вспомогательные алгоритмы в КуМире: процедуры и функции, аргументы (арг), результаты (рез), аргрез, возврат значения через знач. Декомпозиция задач Робота на подпрограммы.

    2. Робот глубже: счётчики, обход стен, накопление

      Продвинутые приёмы для Робота в КуМире: вложенные циклы, счётчик закрашенных клеток, движение вдоль стены, обход препятствий, сочетание нц пока с проверками. Готовимся к 15.1.

    3. Разбор задания 15.1 ОГЭ: типовые сюжеты и шаблоны

      Полный разбор задания 15.1 ОГЭ для Робота в КуМире: формулировка, требование универсальности, шаблоны решения для лабиринта, периметра и лестницы, цикл «пока не стена».

    4. Частые ошибки 15.1 и стратегия: 15.1 на КуМире vs 15.2 на Python

      Чек-лист частых ошибок в задании 15.1 ОГЭ на Роботе и стратегия выбора: когда решать 15.1 на КуМире, а когда 15.2 на Python. Как готовиться к экзамену эффективно.