Опубликован: 27.09.2006 | Уровень: для всех | Доступ: свободно
Основы информатики и программирования В первой части курса происходит знакомство с языком программирования Java, и строится теоретическая база, необходимая для изложения последующего материала. Во второй части излагаются практические методы построения правильных программ небольшого объема. Третья часть посвящена введению в объектно-ориентированное программирование, основам реализации базовых структур данных и рассмотрению небольших программных проектов, являющихся прототипами реальных задач, которые позже будут рассматриваться в курсах по теории компиляции, вычислительной геометрии и компьютерной графики.
Изложение ведется на достаточно высоком уровне абстракции с постоянным привлечением материала из параллельно изучаемого блока математических дисциплин. Наличие в книге большого числа разобранных задач на программирование, решения которых изложены достаточно подробно и всегда завершаются построением текста итоговой программы, позволяет отнести книгу к категории "практически полезных" студенту, а значительное число задач для самостоятельного решения - преподавателю.
Цель: Пособие предназначено для студентов первого курса специальностей "Прикладная математика и информатика", "Математическое обеспечение и администрирование информационных систем" и "Прикладная информатика", однако оно может быть полезно всем тем, кто желает познакомиться с методами проектирования программ, приобрести практические навыки программирования в малом и получить начальное предствление о методах объектно-ориентированного программирования на языке Java.

План занятий

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