Алгоритмы, языки и программирование
Программа — это инструкции для компьютера. Алгоритм — план решения задачи, который можно выполнить по шагам. В школе часто учат сначала алгоритмы и блок-схемы, затем язык (Visual Basic, Python или другой). Подробности про ПО — Программа; здесь — база для курса информатики.
Что такое алгоритм
Алгоритм — конечная последовательность шагов с понятными правилами, которая за конечное время приводит к результату.
Свойства, которые обычно перечисляют в учебнике:
- Дискретность — шаги отделены друг от друга.
- Понятность — исполнитель (человек или машина) знает, что делать на каждом шаге.
- Конечность — алгоритм завершается.
- Результат — после выполнения получаем ответ или изменение данных.
Пример из быта: «налить чай» — проверить чайник, вскипятить воду, залить в чашку. Это алгоритм; программа на VB/Python — его запись для компьютера.
Термин в глоссарии: Алгоритм.
Блок-схемы
Блок-схема — графическое описание алгоритма. Удобна на уроке и на экзамене.
Типовые блоки (ГОСТ 19.701 и учебная традиция):
| Символ | Назначение |
|---|---|
| Овал / скругление | Начало, конец |
| Параллелограмм | Ввод, вывод |
| Прямоугольник | Вычисление, действие |
| Ромб | Условие (ветвление) |
| Контур с подписью | Цикл |
Ветвление: если условие то … иначе …
Цикл: пока условие или для i от 1 до n — повторение шагов.
От алгоритма к программе
- Постановка задачи — что на входе, что на выходе.
- Алгоритм — словами или блок-схемой.
- Программа — код на языке.
- Тест — проверка на примерах (в том числе граничных: 0, пустая строка).
★ Программа — файл с командами на языке, понятном человеку и транслятору (компилятору или интерпретатору). См. Что такое программа.
Компиляция — весь код переводят в исполняемый файл заранее (C, Pascal, VB.NET).
Интерпретация — команды выполняются построчно (Python в классическом учебном режиме). Подробнее: Компиляторы и интерпретаторы.
Классификация языков (кратко)
| Уровень / признак | Примеры | Комментарий |
|---|---|---|
| Машинный код | 0 и 1 | Выполняет CPU напрямую |
| Ассемблер | ASM | Символы вместо чисел для команд |
| Высокоуровневые | Python, Java, C#, VB | Ближе к человеческой логике |
| Компилируемые | C, Go, VB.NET | Сначала .exe / бинарник |
| Интерпретируемые | Python, JavaScript | Запуск через интерпретатор |
| Процедурные | C, Pascal | Последовательность процедур |
| Объектно-ориентированные | Java, C#, Python | Объекты с полями и методами |
Углубление: Парадигмы и уровни абстракции, Основные языки.
Проектирование программ (для школьного уровня)
«Проектирование ПО» в профессии — архитектура, требования, команды (см. Проектирование и архитектура). В базовой информатике достаточно:
- разбить задачу на подзадачи (модули, функции);
- описать данные (переменные, типы);
- нарисовать интерфейс (кнопки, поля) для оконных программ;
- продумать тесты.
Школьные среды — Pascal, блоки, игры
Кроме Visual Basic и Python на кружках часто используют:
| Среда | Материал |
|---|---|
| PascalABC.NET | PascalABC.NET |
| MIT App Inventor | App Inventor |
| Scratch | Scratch |
| Godot / Construct 3 | Игры без и с кодом |
Сводная таблица всех перечисленных инструментов (BeautifulSoup, Blender, Flutter и др.): Инструменты и среды.
Visual Basic в учебной программе
В российских школах часто встречаются VB.NET (среда Visual Studio) или VBA (макросы в Excel). В энциклопедии — полный раздел Visual Basic:
| Шаг | Материал |
|---|---|
| 1 | История VB |
| 2 | Основы синтаксиса |
| 3 | Первая программа |
| 4 | VBA в Excel — если курс в таблицах |
Общие основы кода (переменные, циклы): Код — о разделе.
Дальше по курсу можно вернуться к Интернету или к Праву.
См. также
Другие статьи этого же раздела в боковом меню (как на странице «О разделе»). Вход в учебный курс: зачем раздел, чем он отличается от соседних глав энциклопедии и в каком порядке проходить темы. Как информация становится байтами: текст, числа, картинка, звук и видео; сжатие и архивы — с примерами и ссылками на подробные главы. Устройство ПК простыми словами: процессор, память, диски, ввод-вывод и сеть — с пояснением терминов и маршрутом по энциклопедии. Операционная система, файлы, NTFS и FAT, антивирус и утилиты — с разбором терминов для начинающих и ссылками на подробные главы. Интернет, адреса, DNS, URL, почта, поиск, RSS и безопасность — с разбором терминов для новичка и маршрутом по энциклопедии. Авторское право на программы, лицензии, персональные данные и основные статьи УК РФ о преступлениях в сфере компьютерной информации — вводный обзор. Эргономика, освещение, перерывы, правила компьютерного класса и безопасность — подробный обзор для школьного курса и домашней учёбы. Путеводитель по популярным средам: Python-библиотеки, графика, игры, мобильные приложения и школьные платформы — с ссылками на подробные главы энциклопедии. Краткие итоги курса «Базовая информатика» — кодирование, железо, ОС, интернет, алгоритмы, право и рабочее место. Вопросы для самопроверки по курсу «Базовая информатика» — кодирование, железо, ОС, интернет, алгоритмы, право и рабочее место.Базовая информатика — с чего начать
Кодирование, сжатие и архивация
Компьютер, периферия и сетевое оборудование
ОС, файловые системы и служебные программы
Интернет и сетевые сервисы
Право и защита информации в РФ
Организация рабочего места
Инструменты и среды разработки
Итоги
Чек-лист самопроверки