- •Методичні вказівки
- •1 Директивипрепроцесора. Багатомодульне програмування
- •1.1 Мета роботи
- •1.2 Вказівки щодо організації самостійної роботи студентів
- •1.3 Порядок виконання роботи
- •1.4 Контрольні запитання та завдання
- •1.5 Завдання
- •1.6 Варіанти завдань
- •1.7 Контрольний приклад
- •2.1 Мета роботи
- •2.2 Вказівки щодо організації самостійної роботи студентів
- •2.3 Порядок виконання роботи
- •2.4 Контрольні запитання та завдання
- •2.5 Завдання
- •2.6 Варіанти завдань
- •2.7 Контрольний приклад
- •3 Файлові потоки мови с
- •3.1 Мета роботи
- •3.2 Вказівки щодо організації самостійної роботи студентів
- •Ввод и вывод символов
- •Ввод и вывод строк
- •Ввод и вывод записей
- •Управление указателем файла
- •Состояние потока
- •Форматированный вывод
- •Форматированный ввод
- •Другие функции форматного ввода и вывода
- •Примеры
- •3.3 Порядок виконання роботи
- •3.4 Контрольні запитання та завдання
- •3.5 Завдання
- •3.6 Варіанти завдань
- •3.7 Контрольний приклад
- •4 Перегрузка операцій
- •4.1 Мета роботи
- •4.2 Вказівки щодо організації самостійної роботи студентів
- •4.3 Порядок виконання роботи
- •5.1 Мета роботи
- •5.2 Вказівки щодо організації самостійної роботи студентів Классы и объекты
- •Инкапсуляция
- •Конструктор
- •Деструктор
- •Указатели на объекты
- •Операции new и delete
- •5.3 Порядок виконання роботи
- •5.4 Контрольні запитання та завдання
- •5.5 Завдання
- •5.6 Варіанти завдань
- •5.7 Контрольний приклад
- •6 Наслідування, поліморфізм, інкапсуляция
- •6.1 Мета роботи
- •6.2 Вказівки щодо організації самостійної роботи студентів
- •Наследование
- •Уровни доступа
- •Виртуальные функции
- •Механизм работы виртуальных функций
- •Полиморфизм
- •Множественное наследование
- •6.3 Порядок виконання роботи
- •6.4 Контрольні запитання та завдання
- •6.5 Завдання
- •6.6 Варіанти завдань
- •6.7 Контрольний приклад
- •Рекомендована література
- •61166 Харків, просп. Леніна, 14.
6.7 Контрольний приклад
//Пример базового шаблонного класса с виртуальными методами
//и порожденного наследника с определением шаблона
#include <iostream>
#include <string>
using namespace std;
struct TStud
{
string Name;
int Bal;
};
template <typename T>
class TMen
{
protected:
T *mas;
int n;
public:
TMen()
{n=2;mas=new T[n];}
TMen(int k)
{n=k;mas=new T[n];}
TMen(const TMen &Men)
{
if (this==&Men) return ;
this->n=Men.n;
mas=new T[n];
for(int i=0;i<n;i++)
mas[i]=Men.mas[i];
}
virtual ~TMen()
{ delete []mas; }
virtual void input()=0;
virtual void output()=0;
};
class Stud :public TMen<TStud>
{
public:
Stud():TMen<TStud>(){;};
Stud(int k):TMen<TStud>(k){;};
Stud(const Stud &St):TMen<TStud>(St){;};
virtual void input()
{
cout<<"Input info for "<<n <<" students"<<endl;
for(int i=0;i<n;i++)
{
cout<<"Input name: ";
cin>>mas[i].Name;
cout<<"Input bal: ";
cin>>mas[i].Bal;
}
};
virtual void output()
{
for(int i=0;i<n;i++)
cout<<mas[i].Name<<'\t'<<mas[i].Bal<<'\n';
};
};//class Stud
int main(int argc, char* argv[])
{
Stud st1(3);
st1.input();
Stud st2(st1);
st2.output();
cin.get();
cin.get();
return 0;
}
//---------------------------------------------------------------------------
Рекомендована література
Павловская Т.А. С/С++. Программирование на языке высокого уровня — СПБ Питер.: 2004., — 461 с.
Франка П. C++: учебный курс. - СПб.: Питер, 2003. — 521 с.
Сабуров С.В. Языки программирования C и C++. М.: Букпресс, 2006. 647 с.
Керниган Б., Ритчи Д. Язык программирования Си: Пер. с англ. — М.: Финансы и статистика, 1992. — 272 с.
Страуструп Б. Язык программирования С++. Часть 1. — Киев: "ДиаСофт", 1993. — 264 с.
Страуструп Б. Язык программирования С++. Часть 2. — Киев: "ДиаСофт", 1993. — 296 с.
Подбельский В.В. Язык Си+: Учеб. пособие. — М.: БИНОМ, 1995. — 400 с.
Глушаков С.В. и др. Язык программирования С++. —Харьков: Фолио, 2002. — 500 с.
Х.М.Дейтел, П.Дж. Дейтел Как программировать на С++.- М.:ЗАО «Издательство БИНОМ», 2000 г. — 1024 с.
Ван Тассел Д. Стиль, разработка, отладка и испытание программ.-M.:Мир,1985.
Проценко В.С. Техніка програмування мовою С. —Навч. Посібник. –К.:Либідь, 1993. — 224с.
Жешке Р. Толковый словарь стандарта языка Си: — С.-Петербург: Питер, 1994. — 221с.
Язык Си. Книга ответов: Пер. с англ. — М.: Финансы и статистика, 1994.— 160 с.
Навчальне видання
МЕТОДИЧНІ ВКАЗІВКИ
до лабораторних та практичних робіт з дисципліни
“Програмування”
для студентів денної форми навчання спеціальності
_____________
.
Упорядники: ЛЮБЧЕНКО Валентин Анатолійович
ЯКОВЛЕВА Олена Володимирівна
РУДЕНКО Діана Олександрівна
Відповідальний випусковий Є.П.Путятін
Редактор В.І.Заславська
Комп’ютерна верстка Л.Ю.Свєтайло
План 2006, поз. 29
Підп. до друку 8.07.06. Формат 60х84 1/16. Спосіб друку-ризографія
Умов. друк. арк. 2,6. Облік вид. арк.2,3. Тираж 75 прим.
Зам.№ 1-122. Ціна договірна.
ХНУРЕ. 61166 Харків, просп. Леніна, 14.
Віддруковано в навчально-науковому
видавничо-поліграфічному центрі ХНУРЕ