Автор работы: Пользователь скрыл имя, 07 Декабря 2013 в 20:28, лабораторная работа
Целью работы является создание приложения на основе принципов объектно-ориентированного программирования в среде Microsoft Developer Studio (Visual C++).
Важнейшие концепции объектно-ориентированного программирования отражены в новом типе данных класс (class), разработанном в языке С++. Классы служат для того, чтобы переменные (свойства класса) и функции для обработки этих переменных (методы класса) объединить в один тип данных. Классы могут предоставить различные права доступа к своим свойствам и методам.
а) количество работников с зарплатой z1;
б) количество работников с зарплатой z2;
в) количество работников с зарплатой z3;
г) величина зарплаты z1;
д) величина зарплаты z2;
е) величина зарплаты z3;
ж) общая зарплата отдела z.
Методы класса:
а) конструктор: присвоение нулевых значений переменным;
б) ввод пользователем значений z1, z2, z3;
в) ввод пользователем количества работников с разными зарплатами;
г) вывод пользователем значений z1, z2, z3;
д) определение и вывод на экран общей зарплаты отдела.
7 Пример решения типового задания в Microsoft Developer Studio
7.1 Задание
Разработать класс CRectangle, который содержит свойства:
и методы:
Создать файл с основной функцией программы main(), инициализировать объект разработанного класса CRectangle, вызвать все методы, которые существуют в этом классе.
// Файл “rectan.h”
class CRectangle
{ //свойства класса –используется атрибут private,
//следовательно, их пользователь не сможет напрямую использовать
// (вывести на печать, присвоить им какие-либо значения …), а только с // использованием методов этого класса, которые должны быть
// описаны как public для прямого доступа к ним
private:
int Left; // левая граница по оси Х
int Right; // правая граница по оси Х
int Top; // верхняя граница по оси Y
int Bottom; // нижняя граница по оси Y
public: //чтобы пользователь имел доступ к этим методам класса
CRectangle() //конструктор
{int _i;
Left = rand(); //присвоение свойствам случайных значений
Right = rand();
if (Left > Right) // проверка корректности данных
{_i = Right;
Right = Left;
Left = _i;
}
Top = rand();
Bottom = rand();
if (Bottom > Top)
{_i = Bottom;
Bottom = Top;
Top = _i;
}
}
void Init() // метод запроса у пользователя значений свойств прямоугольника
{
cout<<”Enter Left value of rectangle (integer) ”;
cin>>Left;
cout<<”Enter Right value of rectangle (integer) ”;
cin>> Right;
cout<<”Enter Bottom value of rectangle (integer) ”;
cin>> Bottom;
cout<<”Enter Top value of rectangle (integer) ”;
cin>> Top;
if (Bottom > Top) // проверка корректности данных
{_i = Bottom;
Bottom = Top;
Top = _i;
}
if (Left > Right) // проверка корректности данных
{_i = Right;
Right = Left;
Left = _i;
}
}
void Square() // метод определения площади фигуры
{int _S;
_S = (Right - Left) * (Top - Bottom);
cout<<”Rectangle square is ”<<_S<<endl;
}
void PrintSv() // вывод на экран значений свойств
{cout<<” Left = “<<Left<<endl;
cout<<”Right = “<<Right<<endl;
cout<<”Top = “<<Top<<endl;
cout<<”Bottom = “<<Bottom<<endl;
}
// компилятор будет генерировать и вызывать деструктор по умолчанию
}; //описание класса всегда заканчивается знаком «;»
// СОЗДАЕМ НОВЫЙ ТЕКСОВЫЙ ФАЙЛ, например rectan.cpp
#include <iostream.h>
#include <stdlib.h> // для получения набора псевдослучайных чисел
#include <time.h> //для работы с функцией time(), возвращающей значение
// времени в момент ее вызова, она необходима для
// получения разных псевдослучайных
// чисел при каждом запуске программы
#include “rectan.h” //присоединяем описание разработанного класса
void main() //основная функция - тело программы
{ srand((unsigned)time( NULL )); // инициализируем псевдослучайную базу
CRectangle my_rect; // объявляем объект созданного класса, при этом
//запускается
созданный конструктор
// описанный в классе, он присваивает случайные
// значения всем свойствам объекта my_rect
my_rect.PrintSv(); // вывод значений свойств определенного с помощью
// констуктора прямоугольника
my_rect.Square(); // вывод значения площади определенного с помощью
// констуктора прямоугольника
cout<<endl<<endl<<endl; //Отступ
my_rect.Init(); //вызываем функцию для запроса значений свойств у
// пользователя
my_rect.PrintSv(); // печать свойств прямоугольника, введенных
// пользователем
my_rect.Square(); // вычисление и вывод на экран площади
// прямоугольника,
свойства которого были
// пользователем
}
7.3 Результаты работы программы
На рисунке 2.1 приведен результат работы программы.
Рисунок 2.1 – Результат работы программы
8 Контрольные вопросы
Список литературы