000 О странице
⚠ Внимание
30.10.2025 — проверочная работа на 10 минут: написание простого кода на C++ (код пишется на бумаге).
001 Вопросы к промежуточной аттестации
- Информатика: направления. Дайте определение информатики. Опишите направления развития дисциплины.
- Информатика как наука. Дайте определение информатики. Опишите структуру информатики как науки. Перечислите задачи теоретической информатики.
- Информация: свойства и измерение. Раскройте понятие информации. Перечислите свойства информации. Опишите подходы к оценке информации. Назовите единицы измерения информации.
- Формула Хартли. Раскройте понятие информации. Назовите единицы измерения информации. Выведите формулу Хартли.
- Формула Шеннона. Раскройте понятие информации. Назовите единицы измерения информации. Выведите формулу Шеннона.
- Информация и данные. Раскройте понятия информации и данных. В чём заключается разница между ними?
- Программирование. Дайте определение программирования. Перечислите этапы программирования.
- Цифровая трансформация. Опишите современный контекст автоматизации. Раскройте понятие цифровой трансформации. Перечислите этапы цифровой трансформации.
- Автоматизация. Раскройте понятие автоматизации. Перечислите этапы автоматизации.
- Машина Тьюринга: принципы. Опишите модель машины Тьюринга. Объясните принципы её работы. Что такое алфавит машины? Что представляет собой таблица переходов?
- Машина Тьюринга и системы счисления. Опишите модель машины Тьюринга. Что такое алфавит машины? Раскройте понятие системы счисления.
- Системы счисления. Дайте определение системы счисления. Чем отличаются позиционные и непозиционные системы счисления? Приведите примеры позиционных систем счисления и опишите их применение.
- Пример работы машины Тьюринга. Опишите модель машины Тьюринга. Приведите пример работы машины Тьюринга.
- Алгоритм и исполнитель. Дайте определение алгоритма. Кто такой исполнитель? Что такое система команд исполнителя? Что является входными и выходными данными?
- Свойства алгоритма. Дайте определение алгоритма. Кто такой исполнитель? Перечислите свойства алгоритма.
- Проблема останова. Объясните связь машины Тьюринга с понятием «алгоритм». Раскройте проблему останова.
- Тезис Чёрча — Тьюринга. Сформулируйте тезис Чёрча — Тьюринга. Что такое физический тезис Чёрча — Тьюринга? Что такое сильный тезис Чёрча — Тьюринга?
- Псевдокод. Опишите способы представления алгоритмов. Что такое псевдокод?
- Блок-схемы. Опишите способы представления алгоритмов. Что такое блок-схемы?
- Виды алгоритмов. Перечислите виды алгоритмов. Проиллюстрируйте виды алгоритмов с помощью блок-схем.
- Парадигмы: цели и место. Дайте определение парадигмы программирования. Каковы цели введения парадигм программирования? Каково место парадигмы в разработке?
- Классификация парадигм. Приведите классификацию парадигм программирования. Как связаны парадигмы программирования и языки программирования?
- Императивный и декларативный подходы. Опишите императивный и декларативный подходы в программировании. В чём их различия?
- Императивные подходы. Опишите императивные подходы в программировании. Раскройте основные понятия: состояние программы, последовательность выполнения и другие.
- Структурное программирование. Раскройте понятие структурного программирования. Сформулируйте теорему о структурированной программе (теорему Бёма-Якопони).
- ООП: основы. Дайте определение объектно-ориентированного программирования (ООП). Перечислите основные концепции. Из каких компонентов состоит объект?
- Декларативное программирование. Опишите декларативное программирование. Перечислите отличительные черты декларативного подхода. Объясните выполнение декларативной программы.
- Логическое программирование. Раскройте понятие логического программирования. Опишите основные концепции.
- Функциональное программирование. Опишите функциональное программирование. Раскройте основные концепции. Что такое ленивые вычисления?
- Язык программирования. Дайте определение языка программирования. Перечислите составляющие языка.
- Поколения языков. Опишите поколения языков программирования. Каковы ключевые цели и достижения каждого поколения?
- Трансляция и интерпретация. Дайте определения транслятора, компилятора и интерпретатора. Чем отличаются компилируемые и интерпретируемые языки программирования?
- Система типов. Дайте определение системы типов. Перечислите виды типизации. Приведите примеры.
- Процедурные языки 1960-х. Опишите период развития языков программирования в 1960-е годы. Что такое процедурные языки?
- Smalltalk. Что такое Smalltalk? Каково его влияние на современные языки программирования?
- Язык C и C++. Опишите появление языка C. Из каких компонентов состоит простая программа на C++?
- Java и JVM. Почему был создан язык JAVA? Каковы причины создания JVM? Опишите исторический контекст.
- Python. Раскройте дзен (философию) Python. Какие языки повлияли на развитие Python?
010 Вопросы к дифференцированному зачёту
- Информатика как наука. Дайте определение информатики. Опишите структуру информатики как науки. Перечислите задачи теоретической информатики.
- Информация и её измерение. Раскройте понятие информации. Перечислите свойства информации. Опишите подходы к оценке информации. Назовите единицы измерения информации. Выведите формулу Хартли. Выведите формулу Шеннона.
- Информация и данные. Раскройте понятия информации и данных. В чём заключается разница между ними? Перечислите свойства информации. Опишите подходы к оценке информации. Назовите единицы измерения информации.
- Программирование. Дайте определение программирования. Перечислите этапы программирования.
- Автоматизация и цифровая трансформация. Опишите современный контекст автоматизации. Раскройте понятие цифровой трансформации. Перечислите этапы цифровой трансформации. Раскройте понятие автоматизации. Перечислите этапы автоматизации.
- Машина Тьюринга. Опишите модель машины Тьюринга. Объясните принципы её работы. Что такое алфавит машины? Что представляет собой таблица переходов? Приведите пример работы машины Тьюринга.
- Системы счисления. Дайте определение системы счисления. Чем отличаются позиционные и непозиционные системы счисления? Приведите примеры позиционных систем счисления и опишите их применение.
- Алгоритм и исполнитель. Дайте определение алгоритма. Кто такой исполнитель? Что такое система команд исполнителя? Что является входными и выходными данными? Перечислите свойства алгоритма.
- Тезис Чёрча — Тьюринга. Объясните связь машины Тьюринга с понятием «алгоритм». Раскройте проблему останова. Сформулируйте тезис Чёрча — Тьюринга. Что такое физический тезис Чёрча — Тьюринга? Что такое сильный тезис Чёрча — Тьюринга?
- Представление алгоритмов. Опишите способы представления алгоритмов. Что такое псевдокод? Что такое блок-схемы? Перечислите виды алгоритмов. Проиллюстрируйте виды алгоритмов с помощью блок-схем.
- Парадигмы программирования. Дайте определение парадигмы программирования. Каковы цели введения парадигм программирования? Каково место парадигмы в разработке? Приведите классификацию парадигм программирования. Как связаны парадигмы программирования и языки программирования?
- Императивное программирование. Опишите императивные подходы в программировании. Раскройте основные понятия: состояние программы, последовательность выполнения и другие. Объясните выполнение императивной программы.
- Структурное программирование. Раскройте понятие структурного программирования. Сформулируйте теорему о структурированной программе (теорему Бёма-Якопони). Объясните выполнение императивной программы.
- Декларативное программирование. Опишите декларативное программирование. Перечислите отличительные черты декларативного подхода. Объясните выполнение декларативной программы.
- Логическое программирование. Раскройте понятие логического программирования. Опишите основные концепции. Объясните выполнение декларативной программы в контексте логического программирования.
- Функциональное программирование. Опишите функциональное программирование. Раскройте основные концепции. Что такое ленивые вычисления? Что такое рекурсия? Объясните выполнение декларативной программы в контексте функционального программирования.
- Язык программирования. Дайте определение языка программирования. Перечислите составляющие языка. Что такое синтаксис и семантика языка? Приведите примеры синтаксических и семантических ошибок.
- Поколения языков программирования. Опишите поколения языков программирования. Каковы ключевые цели и достижения каждого поколения?
- Трансляция и интерпретация. Дайте определения транслятора, компилятора и интерпретатора. Чем отличаются компилируемые и интерпретируемые языки программирования?
- Система типов. Дайте определение системы типов. Перечислите виды типизации. Приведите примеры.
- Язык C и C++. Опишите появление языка C. Из каких компонентов состоит простая программа на C++?
- Java и JVM. Почему был создан язык JAVA? Каковы причины создания JVM? Опишите исторический контекст.
- Python. Раскройте дзен (философию) Python. Какие языки повлияли на развитие Python?
- Типы данных. Перечислите типы данных. Опишите преобразование типов и его виды. Что такое типобезопасность? Что такое переполнение данных?
- Управляющие конструкции. Перечислите виды управляющих конструкций. Отобразите их в виде блок-схем.
- Структурированные типы данных. Дайте определение структурированного типа данных. Приведите классификацию структур. Опишите основные структуры и их свойства: массив, множество, список, стек. Какие операции выполняются над ними?
- Функции. Дайте определение функции. Перечислите виды функций. Что такое параметры функции? Что такое рекурсия? Что такое стек вызова? Раскройте понятие лямбда-исчисления.
- Тестирование ПО. Опишите тестирование программного обеспечения. Перечислите виды тестирования. Что такое классы эквивалентности? Приведите примеры тестирования (в том числе тестирования форм).
- Тестирование больших проектов. Опишите виды тестирования программного обеспечения. Что такое тестирование по знанию системы? Что такое отладчик? В чём заключаются проблемы тестирования больших проектов и какие существуют стратегии его оптимизации?
- ООП: основы. Дайте определение объектно-ориентированного программирования (ООП). Перечислите концепции ООП. Что такое класс и объект? Что такое события и методы? Сравните ООП и процедурную парадигму.
- ООП: инкапсуляция и наследование. Раскройте концепции объектно-ориентированного программирования. Что такое инкапсуляция? Что такое наследование? Перечислите виды наследования. Что такое полиморфизм?
- ООП: методы и конструкторы. Опишите концепции объектно-ориентированного программирования. Что такое методы и события? Раскройте понятие полиморфизма. Что такое функции доступа? Что такое конструкторы и деструкторы?
- ООП: виртуальные функции и исключения. Опишите концепции объектно-ориентированного программирования. Что такое виртуальные функции? Что такое свойство интроспекции? Что такое рефлексия? Как осуществляется обработка исключений?
- Модули, пакеты, библиотеки. Дайте определения модуля, пакета, библиотеки и фреймворка. В чём разница между ними? Раскройте закон дырявых абстракций.
- Расширения Python на C++. Опишите расширения для Python на языке C++. Какие существуют методы интеграции? Перечислите технологические этапы реализации.
011 Полезные ссылки
📚 Литература
Все учебные материалы и методические пособия: Открыть материалы ↗
📊 Презентации
Слайды к лекциям и практическим занятиям: Открыть презентации ↗
📈 Успеваемость
Таблица с оценками и результатами работ: Открыть таблицу ↗
✉ Контакты
Преподаватель: Лебедев Евгений Денисович
Email: lebedeved !собака! edu.miigaik.ru