Автор: Евгений Роганов | Московский государственный индустриальный университет
Форма обучения:
дистанционная
Стоимость самостоятельного обучения:
бесплатно
Доступ:
свободный
Документ об окончании:
 
Уровень:
Для всех
Длительность:
26:25:00
Студентов:
2862
Выпускников:
235
Качество курса:
4.17 | 3.79
В первой части курса происходит знакомство с языком программирования Java, и строится теоретическая база, необходимая для изложения последующего материала. Во второй части излагаются практические методы построения правильных программ небольшого объема. Третья часть посвящена введению в объектно-ориентированное программирование, основам реализации базовых структур данных и рассмотрению небольших программных проектов, являющихся прототипами реальных задач, которые позже будут рассматриваться в курсах по теории компиляции, вычислительной геометрии и компьютерной графики.
Изложение ведется на достаточно высоком уровне абстракции с постоянным привлечением материала из параллельно изучаемого блока математических дисциплин. Наличие в книге большого числа разобранных задач на программирование, решения которых изложены достаточно подробно и всегда завершаются построением текста итоговой программы, позволяет отнести книгу к категории "практически полезных" студенту, а значительное число задач для самостоятельного решения - преподавателю.
Специальности: Программист
 

План занятий

Занятие
Заголовок <<
Дата изучения
Лекция 1
26 минут
Алгоритмы и программы
Предмет науки программирования. Пример и свойства алгоритма. Парадигмы программирования (директивное, объектно-ориентированное и функционально-логическое программирование).
-
Лекция 2
1 час 4 минуты
Основы языка Java
Java - язык ООП. Свойства объектно-ориентированных языков программирования. Основные свойства объектно-ориентированных программ. Типы, переменные и операторы. Использование и реализация класса Xterm. Логические и условные операторы.
-
Лекция 3
1 час 22 минуты
Высказывания и предикаты
Значение предикатов для программиста. Синтаксис языка предикатов. Семантика предикатов. Расширение понятия предиката. Приоритеты и ассоциативность операторов языка Java.
-
Лекция 4
42 минуты
Особенности представления чисел в ЭВМ
Представление информации в компьютере. Целые числа. Вещественные числа. Арифметические и побитовые операторы языка Java. Числа произвольной длины и точности.
-
Лекция 5
1 час 3 минуты
Рекурсия, итерация и оценки сложности алгоритмов
Рекурсия и итерация. Особенности рекурсивных программ. Java и циклические конструкции. Основы оценок сложности алгоритмов. Массивы в языке Java. Исключительные ситуации и работа с последовательностями.
-
Лекция 6
1 час 3 минуты
Спецификация программ и преобразователь предикатов
Предикаты и документирование программ. Спецификация программы и преобразователь предикатов wp. Определение простейших операторов языка Java. Оператор if и слабейшее предусловие. Циклы в терминах wp. Вычисление слабейшего предусловия.
-
Лекция 7
1 час 15 минут
Базисные схемы обработки информации
Группы задач на написание программ. Рекурсия и итерация. Инвариант и ограничивающая функция цикла. Схема вычисления инвариантной функции. Функции на пространстве последовательностей.
-
Лекция 8
1 час 7 минут
Проектирование цикла при помощи инварианта
Условия правильности цикла. Теория воздушного шарика. Устранение конъюнктивного члена. Замена константы переменной. Расширение области значения переменной.
-
Лекция 9
1 час 26 минут
Индуктивные функции на пространстве последовательностей
Критерий индуктивности и стационарные значения. Индуктивные расширения. Критерий минимальности. Применение теории индуктивных функций.
-
Лекция 10
1 час 51 минута
-
Лекция 11
1 час 31 минута
Проект "Выпуклая оболочка"
Постановка задачи. Проектирование сверху вниз. Аналитическая геометрия и программирование. Реализация класса Polygon. Аплеты и работа с ними. Текст эталонного проекта.
-
Лекция 12
1 час 46 минут
Проект "Компилятор формул"
Стековый калькулятор. Грамматики языка правильных арифметических формул. Рекурсивный компилятор формул. Стековый компилятор формул. Интерпретатор арифметических выражений. Тексты эталонных проектов.
-
Лекция 13
1 час 53 минуты
Изображение полиэдра
Постановка задачи. Проектирование основных классов. Работа с тенями от граней. Некоторые технологические вопросы и оптимизация. Полный текст проекта.
-
1 час 40 минут
-
Екатерина Щербакова
Екатерина Щербакова
Россия