Информатика · 9 класс
133 тем
Темы программы
Основы программирования
Язык Python: переменные, типы данных, условия, циклы, функции.
Базы данных
Реляционные БД, таблицы, SQL-запросы: SELECT, WHERE, ORDER BY.
Компьютерные сети и интернет
IP-адреса, протоколы, веб-технологии: HTML, CSS. Безопасность в сети.
Алгоритмы и их свойства
Свойства алгоритмов, способы записи, эффективность.
Ветвления и циклы
Условные операторы и циклы в программах.
Массивы
Хранение и обработка наборов данных.
Моделирование
Модели, формализация, компьютерное моделирование.
Системы счисления
Двоичная, восьмеричная и шестнадцатеричная системы счисления: перевод чисел и арифметика.
Логические операции и таблицы истинности
Основы алгебры логики: операции И, ИЛИ, НЕ, таблицы истинности и логические выражения.
Кодирование информации
Как кодируются текст, изображения и звук, и как вычислить объём данных в памяти компьютера.
Электронные таблицы
Работа с табличным процессором: формулы, абсолютные и относительные ссылки, диаграммы.
Графы и деревья
Графы и деревья как способ описания связей: вершины, рёбра, пути и взвешенные графы.
Управление исполнителями и робототехника
Формальные исполнители, система команд и принципы управления роботами и устройствами.
Информационная безопасность
Защита данных, надёжные пароли, вредоносные программы и правила безопасного поведения в сети.
Условный оператор и сложные условия
Полная и неполная форма условного оператора, вложенные условия и объединение проверок логическими связками.
Цикл с условием (цикл «пока»)
Как устроен цикл с предусловием и постусловием, чем он отличается от цикла со счётчиком и как избежать зацикливания.
Линейные алгоритмы и обмен значений
Последовательное выполнение команд, работа с переменными и классический приём обмена значений двух переменных.
Обработка символьных строк
Что такое строка, как обращаться к символам, измерять длину и перебирать строку в цикле для подсчёта и поиска.
Процедуры и функции
Зачем нужны вспомогательные алгоритмы, чем функция отличается от процедуры, что такое параметры и возвращаемое значение.
Сортировка массива
Идея упорядочивания элементов, сортировка обменом (пузырьковая) и выбором, пошаговый разбор работы на примере.
Поиск элемента в массиве
Линейный и двоичный поиск, поиск максимума и минимума, подсчёт количества элементов с заданным свойством.
Двоичное кодирование звука
Дискретизация и квантование сигнала, частота дискретизации, глубина кодирования и расчёт объёма звукового файла.
Растровая и векторная графика
Чем пиксель отличается от объекта, глубина цвета и расчёт информационного объёма растрового изображения.
Измерение количества информации
Содержательный и алфавитный подходы, формула Хартли, единицы измерения информации и решение типовых задач.
Целочисленная арифметика: деление нацело и остаток
Операции деления нацело и взятия остатка, их свойства и применение для разбора числа на цифры.
Поиск минимума и максимума в наборе данных
Алгоритмы нахождения наибольшего и наименьшего элементов и их характеристик за один проход цикла.
Накопление суммы и произведения в цикле
Приём накопителя: как складывать и перемножать элементы последовательности с помощью цикла.
Простые числа и решето Эратосфена
Проверка числа на простоту и быстрый способ найти все простые числа до заданной границы.
Работа с файлами: ввод и вывод данных
Чтение исходных данных из файла и запись результатов, последовательная обработка строк файла.
Вложенные циклы и двумерные массивы
Обработка таблиц вложенными циклами: суммы строк и столбцов, обход прямоугольной таблицы.
Делители числа и алгоритм Евклида
Перебор делителей, нахождение наибольшего общего делителя двумя способами, в том числе по Евклиду.
Сложные логические выражения в условиях
Построение и упрощение составных условий с операциями «и», «или», «не» для ветвлений и циклов.
Запросы, сортировка и фильтрация записей в базе данных
Условия отбора, сортировка и подсчёт записей в реляционной базе данных, логика составных запросов.
Трассировка алгоритма и определение результата
Пошаговое выполнение программы по таблице значений переменных для предсказания результата работы.
Кодировки текста: ASCII, Windows-1251 и Unicode
Как символы превращаются в числа: однобайтовые кодировки, проблема «кракозябр» и универсальный стандарт Юникод.
IP-адреса и доменные имена
Как устроена адресация в интернете: структура IP-адреса, маска подсети, доменные имена и работа службы DNS.
Цикл с параметром (цикл «для»)
Счётный цикл «для»: переменная-счётчик, шаг, число повторений и типичные задачи на перебор значений.
Реляционные базы данных: ключи и связи
Таблицы, записи и поля, первичный и внешний ключ, связи между таблицами и зачем нужна нормализация данных.
Электронные таблицы: относительные и абсолютные ссылки
Чем отличаются относительные, абсолютные и смешанные ссылки и как знак доллара управляет копированием формул.
Диаграммы и графики в электронных таблицах
Виды диаграмм, выбор подходящего типа под данные и построение наглядного графика по таблице значений.
Перебор вариантов и основы комбинаторики
Правила суммы и произведения, подсчёт числа вариантов и решение задач полным перебором в алгоритмах.
Арифметика в двоичной системе счисления
Как складывать, вычитать и умножать двоичные числа столбиком и проверять результат переводом в десятичную систему.
Логические схемы и элементы: И, ИЛИ, НЕ
Логическая схема — соединение логических элементов (И, ИЛИ, НЕ), реализующее логическое выражение. Обозначения элементов, как построить схему по формуле и наоборот, примеры для 9 класса.
Отладка программ и поиск ошибок
Виды ошибок в программах, приёмы отладки, проверка на тестах и трассировка для поиска неверного результата.
Рекурсия: функции, вызывающие сами себя
Что такое рекурсивная функция, база и шаг рекурсии, как работает стек вызовов на примерах факториала и чисел Фибоначчи.
Стек и очередь как структуры данных
Принципы LIFO и FIFO, основные операции со стеком и очередью, где они применяются в программах и алгоритмах.
Двоичный (бинарный) поиск в отсортированном массиве
Как за логарифмическое число шагов найти элемент в отсортированном массиве, границы поиска и сравнение с линейным перебором.
Перевод дробных чисел между системами счисления
Как переводить числа с дробной частью из десятичной системы в двоичную и обратно методом умножения и сложения разрядов.
Законы логики и упрощение логических выражений
Основные тождества алгебры логики: законы де Моргана, поглощения, распределительный, и упрощение булевых выражений.
Расчёт объёма памяти для текста, изображений и звука
Как вычислить информационный объём файла, зная разрешение, глубину цвета, частоту дискретизации или количество символов.
Основы HTML: создание простых веб-страниц
Структура HTML-документа, базовые теги для заголовков, абзацев, ссылок, списков и изображений на веб-странице.
Перебор и обработка цифр числа
Как выделить отдельные цифры натурального числа с помощью деления нацело и остатка, подсчёт суммы и количества цифр.
Математические модели и формализация задач
Как описать реальную задачу формулами и уравнениями, виды моделей и этапы построения математической модели.
Жадные алгоритмы: размен монет и выбор шагов
Принцип жадного выбора локального оптимума, классические задачи размена и планирования, когда жадность работает, а когда нет.
Построение таблиц истинности для сложных формул
Пошаговый алгоритм построения таблицы истинности для выражений с несколькими переменными и операциями.
Основы теории вероятностей в задачах информатики
Понятие вероятности события, классическое определение, простейшие расчёты вероятностей и связь с комбинаторикой.
Множественное ветвление: оператор выбора
Как заменить длинную цепочку «если» одним оператором выбора и не запутаться в условиях.
Логические переменные и флаги в программах
Зачем нужны переменные, хранящие «истину» или «ложь», и как с их помощью запоминать факты в цикле.
Типы данных и диапазон значений переменных
Почему у каждой переменной есть тип, какие бывают типы и что произойдёт при переполнении.
Графы: матрица смежности и таблица связей
Как описать граф таблицей чисел и быстро определить, соединены ли две вершины.
Цикл с постусловием (цикл «до»)
Чем цикл с проверкой условия в конце отличается от обычного цикла «пока» и когда он удобнее.
Шестнадцатеричная система счисления
Зачем программисты используют систему с основанием 16, как в ней появляются буквы и как переводить числа.
Приоритет логических операций
В каком порядке выполняются «не», «и», «или» и зачем нужны скобки в логических выражениях.
Передача данных: скорость и пропускная способность канала
Как связаны объём данных, скорость канала и время передачи и как решать задачи на это.
Электронные таблицы: автозаполнение и копирование формул
Как при копировании формулы автоматически меняются адреса ячеек и как этим пользоваться.
Запросы поисковых систем и операции над множествами
Как логические связки в поисковых запросах связаны с операциями над множествами и подсчётом результатов.
Локальные и глобальные переменные
Где «живёт» переменная, чем отличается локальная переменная от глобальной и почему это важно.
Поиск кратчайшего пути в графе
Как по таблице расстояний или схеме найти самый короткий маршрут между двумя пунктами.
Условные обозначения блок-схем алгоритмов
Графические символы блок-схем: начало, ввод-вывод, действие, условие и связи между ними.
Исключающее ИЛИ (операция XOR)
Логическая операция исключающего ИЛИ, её таблица истинности и применение в задачах.
Глубина цвета и палитра растрового изображения
Как глубина цвета определяет число оттенков и размер палитры растрового изображения.
Топология компьютерных сетей
Схемы соединения узлов сети: шина, звезда, кольцо и их сравнение по надёжности.
Облачные хранилища и сервисы
Что такое облачные хранилища, как они работают и в чём их плюсы и риски.
Антивирусные программы и защита от вредоносного ПО
Виды вредоносных программ и методы антивирусной защиты компьютера.
Восьмеричная система счисления
Восьмеричная система счисления, перевод чисел и её связь с двоичной системой.
Контроль ввода и проверка корректности данных
Как проверять вводимые данные на допустимость и защищать программу от ошибок ввода.
Среднее арифметическое набора чисел
Вычисление среднего арифметического элементов набора и подсчёт по условию в цикле.
Логическое следование (импликация)
Операция импликации, её таблица истинности и типичные ошибки при разборе условий.
Сжатие данных и архиваторы
Принципы сжатия данных, отличие сжатия с потерями и без потерь, работа архиваторов.
Алфавитный подход к измерению информации
Связь мощности алфавита и информационного веса символа при измерении количества информации.
Оценка времени работы алгоритма
Как сравнивать алгоритмы по числу действий и понимать, почему один способ быстрее другого.
Побитовые операции над числами
Как работают операции И, ИЛИ, исключающее ИЛИ и сдвиги над отдельными битами числа.
Подсчёт количества элементов по условию
Как с помощью счётчика в цикле находить, сколько элементов набора удовлетворяют условию.
Переворот строки и проверка палиндрома
Как развернуть строку посимвольно и проверить, читается ли слово одинаково в обе стороны.
Маска подсети и адрес сети
Как по IP-адресу и маске определить адрес сети и число доступных узлов.
Сортировка выбором
Как упорядочить массив, на каждом шаге выбирая минимальный элемент из оставшихся.
Обход графа в ширину
Как с помощью очереди обойти все вершины графа по слоям от стартовой вершины.
Сумма цифр и цифровой корень числа
Как найти сумму цифр числа и свести её к одной цифре повторным сложением.
Логические операции и множества элементов
Как связаны логические И и ИЛИ с пересечением и объединением множеств данных.
Интерпретаторы и компиляторы
Чем отличается перевод программы в машинный код заранее от выполнения строка за строкой.
Округление и точность вычислений
Как округлять числа разными способами и почему дробные вычисления дают погрешность.
Условное форматирование в электронных таблицах
Как автоматически выделять ячейки цветом по заданному условию для анализа данных.
Заполнение массива случайными числами
Как заполнить массив случайными значениями и зачем это нужно при тестировании программ.
Контрольная сумма и проверка целостности данных
Как с помощью контрольной суммы обнаруживают искажение данных при передаче и хранении.
Хеш-функции и их применение
Что такое хеш-функция, зачем она нужна и как с её помощью хранят пароли и ускоряют поиск.
Двумерный массив: работа с диагоналями
Как обращаться к элементам главной и побочной диагонали квадратной таблицы и считать их сумму.
Сортировка вставками
Как работает сортировка вставками: упорядочивание массива по одному элементу за шаг.
Преобразование типов данных
Как и зачем программа превращает строку в число, число в строку и целое в вещественное.
Форматированный вывод чисел
Как управлять видом чисел при выводе: количество знаков после запятой, выравнивание, ширина поля.
Имитационное моделирование очереди
Как с помощью имитационной модели изучают работу очереди в магазине или у банкомата.
Сводные таблицы в электронных таблицах
Как сводная таблица группирует и обобщает данные, отвечая на вопросы «сколько» и «на какую сумму».
Протоколы TCP и IP: как данные идут по сети
Зачем нужны протоколы TCP и IP и как они вместе доставляют данные через интернет.
Задачи на остатки и периодичность
Как остаток от деления помогает решать задачи о повторяющихся событиях и циклах.
Связный список как структура данных
Что такое связный список, чем он отличается от массива и когда его удобно применять.
Кортежи в Python: создание, распаковка и отличие от списка
Кортеж, или tuple , — упорядоченная последовательность, у которой нельзя заменить, добавить или удалить отдельный элемент. Он удобен для небольшой записи с фиксированным смыслом по
Как перемешать список в Python и сохранить исходные данные
Перемешивание меняет порядок элементов, сохраняя сами элементы и их количество. В Python для учебных задач подходит random.shuffle : функция переставляет элементы изменяемой послед
Рефакторинг: как улучшать код, сохраняя поведение
Рефакторинг — последовательное изменение внутренней структуры программы без изменения её наблюдаемого поведения. Цель — сделать код понятнее и удобнее для дальнейшей работы. Если о
Суперкомпьютеры: зачем нужны тысячи вычислительных узлов
Суперкомпьютер — вычислительная система для очень больших задач, которые требуют высокой производительности, памяти и быстрого обмена данными. Обычно он объединяет множество вычисл
Таблицы и фреймы в HTML: данные и встроенный документ
HTML-таблица описывает данные, у которых есть строки и столбцы. Встроенный фрейм iframe показывает внутри страницы другой документ. Это разные задачи: таблица помогает понять отнош
Триггер в цифровой схеме: как хранится один бит
Триггер в цифровой электронике — устройство с устойчивыми состояниями, используемое для хранения двоичной информации. Выход зависит не только от текущего входного сигнала, но и от
Autodesk Fusion: эскиз, размеры и первая параметрическая деталь
Почему размеры и ограничения важнее случайного перетаскивания линий.
Рисование мышью в Python: Tkinter Canvas и события
Рабочая программа с линиями, сбросом состояния и кнопкой очистки.
Что такое CMS: содержание, шаблоны и процесс публикации
Как сайт отделяет текст статьи от оформления и зачем нужны роли пользователей.
Стиль кода на C: читаемость, имена и границы правил
Как отделить соглашения проекта от синтаксиса языка и проверить код на понятном примере.
Eclipse для Java: рабочее пространство, проект и отладка
Путь от Java Project к запуску класса и чтению панели Problems.
Цикл for в Java: обычный и расширенный обход
Счётчик, сумма массива и enhanced for: когда нужен индекс и что меняет continue.
Цикл for в C: порядок выполнения и границы
Инициализация, проверка, тело, шаг: трассировка суммы и ошибки на единицу.
Git и контроль версий: первый репозиторий и коммит
Рабочая папка, индекс и история: как сохранить осмысленную версию и проверить, что вошло в коммит.
If и else в Java: условия, границы и порядок ветвей
Boolean, цепочка else if и независимые проверки: как выбрать нужную ветвь.
Условный оператор if в C: ноль, сравнение и ветвление
Как выбирать ветвь, не путать = и == и проверять граничные значения.
Import в Java: полные имена, пакеты и static import
Почему import не скачивает библиотеку и почему java.util.* не включает вложенные пакеты.
Модуль sys: аргументы командной строки, выход из программы и служебная информация
Модуль sys даёт программе доступ к служебной информации интерпретатора: аргументы командной строки, коды завершения, стандартные потоки ввода-вывода и путь поиска модулей.
Аргументы командной строки: как программа получает данные при запуске
Программу можно запускать с параметрами: python3 sum.py 12 30. Разберёмся, как Python получает эти параметры через sys.argv, почему они всегда строки и как безопасно превращать их в числа.
Словари: храним данные по именам, а не по номерам
Словарь (dict) сопоставляет каждому ключу значение: вместо «элемент номер 3» — «оценки Ани» или «цена банана». Разберём создание, чтение, метод get и частотный анализ слов.
Генераторы списков: создаём списки одной строкой
Генератор списка — компактная запись цикла, который строит новый список: квадраты чётных чисел, имена лучших учеников, проценты баллов. Учимся читать и писать [x ** 2 for x in numbers if x % 2 == 0].
Практикум: задачи на кортежи и множества
Четыре учебные задачи: обмен значениями через распаковку, расстояние между точками, уникальные посетители сайта и кружковая статистика. В каждой — полное решение и разбор.
Плановая обработка ошибок: try, except и собственные исключения
Ошибка не должна рушить программу неожиданно. Разберём механику try/except, почему except должен быть конкретным, как поднимать свои ValueError и зачем нужен finally.
Математические функции: модуль math для школьных задач
Гипотенуза, направленное округление, площадь круга, НОД и факториал: проверяем аргументы и выбираем подходящие математические функции.
Множества: уникальные элементы и операции над ними
Множество хранит только уникальные элементы и умеет отвечать на вопросы «есть ли в обоих», «только здесь», «хотя бы где-то». Разберём создание, методы add/discard и операции &, |, -, ^.
Разложение числа на множители: перебор делителей до корня
Каждое натуральное число n >= 2 раскладывается на простые множители. Напишем алгоритм, который делит число нацело на все меньшие делители и проверяет только до квадратного корня из n.
Код в одну строку на Python: когда коротко — это читаемо
Условные выражения, lambda и генераторные выражения помогают писать короткий читаемый код. Разбираем их назначение и случаи, когда обычный цикл понятнее.
Файлы и работа с файловой системой в Python: pathlib, with и UTF-8
Читаем, пишем и дозаписываем текстовые файлы с явной кодировкой UTF-8, собираем пути объектами pathlib, закрываем файлы через with и обрабатываем FileNotFoundError. Все примеры проверены во временной папке.