Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Самостоятельная работа студента




Самостоятельная работа студента включает в себя:

- проработку лекционного материала;

- подготовку к лабораторным работам и защите отчетов по ним;

- выполнение расчетно-графических работ;

- изучение дополнительных материалов (перечень тем для самостоятельной работы приведен ниже).

 

5.1 ПЕРЕЧЕНЬ ТЕМ САМОСТОЯТЕЛЬНОЙ РАБОТЫ СТУДЕНТА

  1. Стандартная библиотека шаблонов. Вектора.
  2. Стандартная библиотека шаблонов. Двусвязные списки.
  3. Стандартная библиотека шаблонов. Дэки.
  4. Стандартная библиотека шаблонов. Множества (set)
  5. Стандартная библиотека шаблонов. Множества (multiset)
  6. Стандартная библиотека шаблонов. Ассоциативные массивы (map)
  7. Стандартная библиотека шаблонов. Ассоциативные массивы (multimap)
  8. Стандартная библиотека шаблонов. Стеки
  9. Стандартная библиотека шаблонов. Очереди
  10. Стандартная библиотека шаблонов. Очереди с приоритетом.
  11. Стандартная библиотека шаблонов. Псевдоконтейнеры.
  12. Стандартная библиотека шаблонов. Алгоритмы
  13. Стандартная библиотека шаблонов. Функторы
  14. Стандартная библиотека шаблонов. Псевдоконтейнеры

 

 

6. ВРЕМЯ КОНСУЛЬТАЦИЙ

Консультационные часы (оffice hours) по расписанию СРСП на кафедре КТ два часа в неделю при соотношении лекционных занятий к СРС 1:1, что позволяет учащемуся самостоятельно изучить материал более углубленно. Время консультаций выбирается с учетом расписания, утвержденным УМО на 7 триместр. В начале учебного года будет висеть на доске объявления кафедры «Компьютерные технологий» (С307).

 

5. Тема и содержание курсовой работы

По данной дисциплине студент должен выполнить одну курсовую работу (КР).

Курсовые работы имеет целью:

- углубить и расширить теоретические знания студента по изучаемой дисциплине;

- формировать навыки исследовательской работы: определение объекта и предмета исследования, постановка целей и задач, умение анализировать, обобщать, делать выводы;

- научить студента применять полученные теоретические знания для решения практических задач.

При выполнении курсовой работы по дисциплине «Объектно-ориентированное программирование» студент должен более глубоко освоить объектно-ориентированный подход к построению модели предметной области и декомпозиции прикладной задачи, объектно-ориентированную технологию проектирования программы, объектные модели языков программирования С/С++, технологии программирования в объектно-ориентированных инструментальных средах.

Результаты курсовой работы оформляются студентом согласно требованиям, предъявляемым к подобным работам и указанным в учебно-методическом пособии «Методические рекомендации по выполнению курсовых работ по дисциплине объектно-ориентированное программирование»

В целом курсовая работа включает следующие разделы:

1. Титульный лист (оформляется по образцу, данному в приложении 1)

2. Содержание (с указанием страниц)

3. Постановка задачи

4. Описание входных и выходных параметров

5. Описание алгоритма

6. Описание использованной объектной модели данных

7. Приложение (Приложения)

.

 

Задания на КУРСОВЫЕ работы

ЧАСТЬ 1

Создать иерархию классов, в которой абстрактному базовому классу наследуют несколько производных классов. Для каждого производного класса реализовать конструктор с параметрами. В каждом производном классе реализовать указанную в таблице чистую виртуальную функцию. Для каждого производного класса перегрузить операторы ввода, операторы вывода и указанную (в таблице) операцию. Операторы ввода перегрузить с помощью механизма дружественных функций, а операцию указанную в таблице с помощью операторной функции – члена класса.

Написать демонстрационную программу, иллюстрирующую вызов виртуальных функций.

Варианты заданий

Вариант Базовый класс Производные классы Виртуальная функция Перегруженная операция
  Фигура Квадрат. Прямоугольник. Треугольник. Площадь Больше
  Тело Шар. Куб. Параллелепипед. Объем Меньше
  Числовой объект Скаляр. Двумерный вектор. Трехмерный вектор. Модуль Умножение (скалярное)
  Многочлен а. a+b*x. a+ b*x+c*x2 a+ b*x+c*x2+c*x3 Сумма коэффициентов Сложение
  Числовой объект Действительное число. Комплексное число в алгебраической форме Модуль Умножение
  Числовой объект Действительное число. Комплексное число в алгебраической форме Модуль Деление
  Числовой объект Действительное число. Комплексное число в тригонометрической форме Модуль Умножение
  Правильный многоугольник Правильный треугольник. Правильный четырехугольник. Правильный пятиугольник Площадь Деление
  Многочлен а. a+b*x. a+ b*x+c*x2 a+ b*x+c*x2+c*x3 Сумма квадратов коэффициентов Вычитание
  Фигура Окружность. Параллелограмм. Трапеция.   Периметр Равно

 

 

ЧАСТЬ 2

1. Построить класс окон, обеспечивающий заданные размеры, цвета, рамки,

движение по экрану, изменение размеров и положения на экране. Составить

демонстрационную программу.

2. Построить класс горизонтальных меню, обеспечивающий размеры и положение на

экране, цвета, рамки, содержимое. Составить демонстрационную программу.

3. Построить класс выпадающих меню, обеспечивающий размеры и положение на

экране, цвета, рамки, содержимое. Составить демонстрационную программу.

4. Построить класс для реализации изображения и движения “червяка” по экрану.

“Червяк” может менять длину, двигаться в вертикальном и горизонтальном направлениях,

волоча за собой “хвост”. Составить демонстрационную программу.

5. Построить класс для реализации изображения и движения условного “человечка”.

Составить демонстрационную программу.

6. Создать программу - рабочее место пользователя. Она должна обеспечить

просмотр текстовых файлов, поддержку записной книжки, встроенный калькулятор, часы.

7. Coздать программу - просмотрщик файлов в формате bmp, обеспечивающую

увеличение, уменьшение, прокрутку “картинок”.

8. Создать программу - просмотрщик графиков заданных функций,

обеспечивающую увеличение, уменьшение, прокрутку “графиков”.

9. Создать класс «Аналитическая геометрия на плоскости».. Составить

демонстрационную программу.

10. Создать класс «Аналитическая геометрия в пространстве».. Составить

демонстрационную программу.

 

 

Рекомендуемая литература

Основная

1. Шилдт Г. Полный справочник по С++. М: Изд.дом «Вильямс», 2006

2. Марченко А.Л. С++. Бархатный путь. М: Горячая линия-Телеком, 2005

3. Саттер Г., Александреску А. Стандарты программирования на С++. М: Изд.дом «Вильямс», 2006

4. Вандервурд Д., Джоссатис Н. Шаблоны С++. Справочник разработчика. М: Изд.дом «Вильямс», 2003

5. Бимагамбетов Т.С. Объектно- ориентированное программирование на языке С++. Методические указания к выполнению лабораторных работ. Алматы. АИЭС, 2006.

6. Бимагамбетов Т.С. Программирование на языке Си++. Учебное пособие. Алматы. АИЭС, 2007.

Дополнительная

7. Архангельский А.Я. Программирование в Delphi 7. – Москва: Издательство «Бином», 2004.

8. Галисеев Г.В. Delphi 8 for NET. – Москва: Издательство «Диалектика», 2004.

9. Кандзюба С.П., Громов В.Н. Delphi. Базы данных и приложения. Москва: ООО «ДиаСофтЮП», 2005.

 

10. Шиманович Е.Л. С/С++ в примерах и задачах. Мн.: Новое знание, 2004.

11. Давыдов В.Г. Технологии программирования С++. Санкт- Петербург, 2005.

 

ТЕСТОВЫЕ ВОПРОСЫ ДЛЯ ДОПУСКА К ЭКЗАМЕНУ

 

 

1.Какие языки относится к ООП?

2. Укажите основные недостатки процедурного программирования.

3. Член класса имеет спецификатор доступа protected. Какие из перечисленных далее функций не имеют к нему доступ:

4. Какие спецификатор доступа имеет по умолчанию член класса, если определение класса начинается со служебного слова struct?

5. Укажите правильную запись:

5@

А) float var1=11; void*ptrint=&var1;

B) float var1=11; int*ptrint=&var1;

6. int*a; int b; a=&b; b=7; *a++; cout <<b; b-чему равна.

7. int n=15; void main() { float y; int n=2; y=5*::n; cout<<y;} Вычислите значение y

8 Какие специфікатор доступа (private, protected или public) имеет по умолчанию член класса, если определение класса начинается со служебного слова class?

9. Имеется следующий фрагмент программы: struct A:B {……..}}; Какой спецификатор доступа действует по умолчанию перед именем базового класса B?

10 Имеется следующий фрагмент программы: class A:B {……..}}; Какой спецификатор доступа действует по умолчанию перед именем базового класса B?

11. Дано:

#defaine a b

# define c d

# ifdef d c=d

# endif

Найдите правильное значение

А) с

В) d= d

12. Перегруженная функция:

13. Для чего нужны классы?

14. Что входит в структуру класса?

15. Если перед данными базового класса написан спецификатор protected:

16. Если перед данными базового класса написан спецификатор private:

А) Эти данные доступны только для данного класса

17. Если перед данными базового класса написан спецификатор public:

18. struct part {double n, char m, float cost;};

int main() {part s1;

………….

return 0;} s1 из скольких байтов состоит объект s1

 

19. class A {protected:int t; public:char u;} class B:A {}. Как наследуются данные t и u в классе B

20. class A {protected:int t; public:char u;} strtuct B:A {}. Как наследуется данные t и u в классе B;

21. Какие операции допустимы для любого типа итератора?

А) «.», «->», «++», «=»

22 Каков будет результат int var1=20, cout<<var1— и cout<<++var1?

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...