Разработка приложения на языке программирования C++. Курсовая работа (т). Информационное обеспечение, программирование.
🛑 👉🏻👉🏻👉🏻 ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻
Информационное обеспечение, программирование
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!
Похожие работы на - Разработка приложения на языке программирования C++
Скачать Скачать документ
Информация о работе Информация о работе
Скачать Скачать документ
Информация о работе Информация о работе
Скачать Скачать документ
Информация о работе Информация о работе
Скачать Скачать документ
Информация о работе Информация о работе
Скачать Скачать документ
Информация о работе Информация о работе
Скачать Скачать документ
Информация о работе Информация о работе
Скачать Скачать документ
Информация о работе Информация о работе
Нужна качественная работа без плагиата?
Не нашел материал для своей работы?
Поможем написать качественную работу Без плагиата!
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
"НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ
УНИВЕРСИТЕТ ИМ. Н.И. ЛОБАЧЕВСКОГО"
НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ
ФАКУЛЬТЕТ УПРАВЛЕНИЯ И
ПРЕДПРИНИМАТЕЛЬСТВА
по дисциплине: "Информационные
технологии и платформы разработки информационных систем"
на тему: " Разработка
приложения на языке программирования C++"
++ представляет собой объектно-ориентированный
низкоуровневый язык программирования, отвечающий стандартам ANSI и
Международной организации стандартов (International Standards Organization -
ISO). Объектная ориентированность C++ означает, что он поддерживает стиль
программирования, упрощающий кодирование крупномасштабных программ и
обеспечивающий их расширяемость. Будучи низкоуровневым языком, C++ может
генерировать весьма эффективные высокоскоростные программы. Сертификация ANSI и
ISO обеспечила переносимость C++: написанные на нем программы совместимы с
большинством современных сред программирования. Уже в сам о м названии
содержится намек на то, что C++ является следующим поколением языка
программирования C - результатом добавления новых веяний академической
компьютерной мысли к старому доброму C. На C++ можно делать все то же, что и на
C, и даже таким же образом. Но это нечто большее, чем просто C, наряженный в
новые одежды. Дополнительные возможности C++ весьма значительны и требуют не
только некоторых размышлений, но и привычки, однако результат того заслуживает.
Объектно-ориентированное программирование (ООП) -
подход
к программированию, при котором основными концепциями являются понятия объектов
и классов.
1. Описать класс с именем COLLABORATE (сотрудник), содержащий
следующие члены-данные открытого типа (можно закрытого типа - более сложный
вариант):
2. Описать класс с именем FIRM (фирма), содержащий следующие
члены-данные закрытого типа:
· количество сотрудников;
· указатель на массив
сотрудников.
3. Класс FIRM должен содержать следующие члены-функции:
· конструктор без
параметров;
· конструктор с
параметрами;
· конструктор копирования;
· деструктор, выводящий
сообщение о своей работе;
· функцию ввода данных в
объект класса с клавиатуры (можно из файла);
· функцию вывода данных из
объекта класса на дисплей;
· функцию добавления
сотрудника в массив;
· функцию удаления
сотрудника из массива;
· функцию подсчета
количество женщин пенсионного возраста (возраст ≥ 55 лет);
· функцию подсчета
количество мужчин пенсионного возраста (возраст ≥ 60 лет);
· функцию, формирующую
массив сотрудников в зависимости от пола;
· другие функции, если они
необходимы.
4. Написать программу, демонстрирующую работу с этим классом.
класс конструктор деструктор программирование
Для хранения разнотипной информации о физическом объекте
нужна специальная структура. Эта структура называется классом.
Объявление класса начинается с ключевого слова class, после которого идет имя
класса и пара фигурных скобок. После открывающейся скобки находится ключевое
слово public (public делает все находящиеся за ним члены класса открытыми; private (закрытый, внутренний
член класса) - обращение к члену допускается только из методов того класса, в
котором этот член определен). После ключевого слова идет описание полей класса.
void Get_FIRM () const; // Функцию вывода данных из объекта
класса на дисплей;Set_FIRM (); // Функцию ввvода данных в объект класса с
клавиатуры;
По историческим причинам функции-члены называются также
методами.
Полное имя функции пишется как void FIRM:: Set_FIRM (). Имя
класса в начале полного имени означает, что эта функция является членом класса NKI (:: - оператор
разрешения видимости).
Синтаксис вызова функции-члена такой же, как и синтаксис
обращения к переменной-члену класса.
Указатель - это переменная, которая содержит адрес другого
объекта. Этим объектом может быть некоторая переменная, динамический объект или
функция. Говорят, что указатель ссылается на соответствующий объект
Между массивами и указателями существует тесная связь. Имя
массива без индекса эквивалентно указателю на его первый элемент. К указателю
можно прибавлять или отнимать от него целочисленные выражения, при этом
значение указателя изменяются в соответствии с размером объектов, на которые он
указывает.
Специальные элементы-функции класса
Специальными функциями класса называют функции, которые могут
вызываться компилятором неявно. Это может происходить при создании и удалении
представителей класса, при их копировании и преобразовании в другие типы. К
таким функциям относятся:
· Конструктор. Инициализирует
представителей класса.
· Конструктор копии. Инициализирует новый
представитель, используя значения существующего объекта.
· Операция присваивания. Присваивает содержимое
одного представителя класса другому.
· Деструктор. Производит очистку уничтожаемого
объекта.
· Оператор new. Выделяет память для
динамически создаваемого объекта.
Конструктор имеет тоже имя, что и класс. Он вызывается
компилятором всегда, когда создается новый представитель класса.
// Конструктор с параметром:: FIRM (int n)
{i;>n = n;= new COLLABORATE [n];(i = 0; i < n; i++)
{[i]. fio [0] = 0;[i]. dat = 0;[i]. pol [0] = 0;
Относительно конструкторов имеют место такие правила:
· Для него не объявляется тип возвращаемого
значения
· Он не может возвращать значений оператором
return
Конструктор копии является конструктором специального вида,
который принимает в качестве параметра ссылку или константную ссылку на объект
данного класса. Он автоматически вызывается компилятором, когда вновь
создаваемый объект инициализируется значениями существующего объекта.
// Конструктор копирования:: FIRM (const FIRM& b)
{= b. n;= new COLLABORATE [n];(int i = 0; i < n; i++)[i] =
b. pMas [i];
Деструктор является противоположностью конструктора. Он
вызывается при уничтожении объектов и должен производить необходимую очистку
объекта перед освобождением занимаемой им памяти. Именем деструктора должно
быть имя класса, которому предшествует тильда (~).
{(pMas)[] pMas;<< "dectructor" << endl;
Класс может определить свои собственные операции new и delete (new [] и delete [] для массива объектов).
New - оператор языка
программирования C++, обеспечивающий выделение динамической памяти. Оператор delete возвращает память
выделенный оператором new, чтобы избежать утечки памяти.
pMas = new COLLABORATE [n];[] pMas;
#include namespace std;COLLABORATE
{:n;*pMas;:(); // Конструктор(int n); // Конструктор с
параметром(const FIRM& b); // Конструктор копирования
~FIRM (); // Деструкторoperator = (const FIRM & coll); //
перегрузка оператора =Get_FIRM () const; // Функцию вывода данных из объекта
класса на дисплей;Set_FIRM (); // Функцию ввvода данных в объект класса с
клавиатуры (можно из файла);ADD_FIRM (); // функцию добавления сотрудника в
массив;DEL_FIRM (); // функцию удаления сотрудника из массива;Get_FIRM_W (char
*pol); // функцию подсчета количество женщин пенсионного возраста (возраст ≥
55 лет);Get_FIRM_M (char *pol); // функцию подсчета количество мужчин
пенсионного возраста (возраст ≥ 60 лет);Get_FIRM_POL (); // функцию,
формирующую массив сотрудников в зависимости от пола;
// Конструктор с параметром:: FIRM (int n)
{i;>n = n;= new COLLABORATE [n];(i = 0; i <
n; i++)
{[i]. fio [0] = 0;[i]. dat = 0;[i]. pol [0] = 0;
// Конструктор копирования:: FIRM (const
FIRM& b)
{= b. n;= new COLLABORATE [n];(int i = 0; i <
n; i++)[i] = b. pMas [i];
{(pMas)[] pMas;<< "dectructor"
<< endl;
// перегрузка оператора =FIRM:: operator = (const
FIRM & coll)
{(pMas)[] pMas;= new COLLABORATE [n = coll.
n];(int i = 0; i < n; i++)[i] = coll. pMas [i];*this;
// Вывод массива на экранFIRM:: Get_FIRM () const
{<< "Вывод массива с клавиатуры:
" << endl;<< "---------------------------" <<
endl;(int i = 0; i < n; i++)
{<< pMas [i]. fio << "
";<< pMas [i]. dat <<" ";<< pMas [i]. pol
<< " " << endl;
// Ввод массива с клавиатурыFIRM:: Set_FIRM ()
{<< "Ввод массива с клавиатуры: "
<< endl;<< "--------------------------" <<
endl;(int i = 0; i < n; i++)
{<< "Фамилия: "<<
endl;>> pMas [i]. fio;<< "Год рождения: "<<
endl;>> pMas [i]. dat;<< "Пол сотрудника: "<<
endl;>> pMas [i]. pol;<< endl;
// функцию добавления сотрудника;FIRM:: ADD_FIRM
()
{<< "Добавление сотрудника: "
<< endl;<< "-----------------------" << endl;c
(*this);(pMas)[] pMas;= n + 1;= new COLLABORATE [n];(int i = 0; i < n-1;
i++)[i] = c. pMas [i];<< "Фамилия: ";>> pMas [n-1].
fio;<< "Год рождения: ";>> pMas [n-1]. dat;<<
"Пол сотрудника: ";>> pMas [n-1]. pol;*this;
// Функцию удаления сотрудника;FIRM:: DEL_FIRM ()
{i,p = - 1;kon [10];<< "Удаление
сотрудника" << endl;>> kon;(i = 0; i < n; i++)
{(strcmp (pMas [i]. fio,kon) == 0)=i;
{q (*this);(pMas)[] pMas;= n - 1;= new
COLLABORATE [n];(i = 0; i < p; i++)[i] = q. pMas [i];(i = p; i < n;
i++)[i] = q. pMas [i+1];*this;
{pol [15];<< "Vvedite pol sotrudnika:
\n";>> pol;i, k, n1=0;(i =0; i < n; i++)(strcmp (pMas [i].
pol,pol) ==0) n1++;c (n1);=0;(i =0; i < n; i++)(strcmp (pMas [i]. pol,pol)
==0). pMas [k++] =pMas [i];c;
// функцию подсчета количество женщин пенсионного
возраста (возраст ≥ 55 лет);FIRM:: Get_FIRM_W (char *pol)
{(strcmp (pMas [i]. pol,pol) ==0)(2014-pMas [i].
dat>=55)++;
// функцию подсчета количество мужчин пенсионного
возраста (возраст ≥ 60 лет);FIRM:: Get_FIRM_M (char *pol)
{(strcmp (pMas [i]. pol,pol) ==0)(2014-pMas [i].
dat>=60)++;
#include "COLLABORATE. h"main ()
{(LC_ALL,"RUS");a (5);. Set_FIRM ();. Get_FIRM ();. ADD_FIRM ();.
Get_FIRM ();. DEL_FIRM ();. Get_FIRM ();b = a. Get_FIRM_POL ();. Get_FIRM ();.
Get_FIRM ();<<"Колличество женщин пенсионного возраста:
"<Похожие работы на - Разработка приложения на языке программирования C++ Курсовая работа (т). Информационное обеспечение, программирование.
Курсовая работа: Валютное регулирование
Сочинение По Комедии Недоросль Образ Стародума
Реферат: Stephen Hawking Essay Research Paper Stephen Hawking
Дипломная работа по теме Воспитание нравственных ценностей детей младшего школьного возраста
Эссе Личностью Становятся
Контрольная работа по теме Понятие и роль дизайна. Дизайн как искусство
Курсовая работа по теме Новые технологии воспитательного процесса
Реферат: Увольнение ст. 31
Дипломная Работа Расчеты
Реферат по теме Добрая воля, инициатива предприятий и экологическая деятельность
База Докторских Диссертаций
Реферат: Cat Scans Essay Research Paper Cat Scans
Дипломная работа по теме Разработка и экономическое обоснование изменения автобусного маршрута №32
Прядок и сроки уплаты налога.
Контрольная работа по теме Исследование дезадаптации младших школьников
Отчет Научно Исследовательская Практика Юриспруденция
Юность Сочинение Егэ
Курсовая работа: Теория и практика оценки персонала
Реферат По Теме Хоккей По Физкультуре
Правильное Оформление Курсовых Работ По Госту
Реферат: Работа на тему: Инсценировка басни «Крестьянский чай»
Доклад: Управление движением и вегетативными реакциями
Контрольная работа: Основы экономической географии