Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Классы
До сих пор главными инструментами при решении задач у нас были функции. Программирование с использованием функций называется процедурным. В процедурном программировании основное внимание уделяется способам обработки данных, а сами данные находятся немного в стороне.
Классы являются инструментом объектно-ориентированного программирование, в котором во главе угла стоят данные.
Класс - это определяемый пользователем тип. Тип является конкретным представлением некоторой концепции. Например, встроенный тип Яоа1: вместе с операциями +, -, *, / представляет конкретное воплощение математической концепции вещественного числа. Новые типы создаются для определения концепции, не выражаемой непосредственно встроенными типами.
Структуры в С++. Инкапсуляция
В языке С++ в состав структур могут входить не только данные, как это имеет место в языке С, но и функции. Объединение в структуре и данных и функций для их обработки называется инкапсуляцией. Достоинством инкапсуляции является полное описание модели в одном месте, что упрощает работу с моделью. Функции, входящие в структуру, имеют непосредственный свободный доступ к данным, хранящимся в структуре.
Функции, объявленные внутри структуры, называются функциями членами или методами. Данные, хранящиеся в структур называют свойствами.
При определении функции члена следует указывать имя структуры, разделяя имя структуры и имя функции оператором области видимости ::.
#include<iostream.h>
struct Time{
unsigned int h,m;
void Set(int hh,int mm)
{
h=hh; m=mm;
}
void AddHour(int n);
void AddMin(int n);
void Print();
};
void Time::AddHour(int n)
{
h=(h+n)%24;
}
void Time::AddMin(int n)
{
h=(h+(m+n)/60)%24;
m=(m+n)%60;
}
void Time::Print()
{
if(h<10)cout<<'0'<<h<<'.';
else cout<<h<<':';
if(m<10) cout<<'0'<<m<<" ";
else cout<<m<<" ";
}
#include<conio.h>
void main()
{
Time Pair;
int Phour; //длительность пары в часах
int Pmin; //длительность пары в мин
int interval;
int hh,mm;
int n; //кол-во пар
cout<<"Вв время начала 1-ой пары: ";
cin>>hh>>mm;
Pair.Set(hh,mm);
cout<<"Вв длительность пары в часах и минутах: ";
cin>>Phour>>Pmin;
cout<<"Вв длительность перерыва: ";
cin>>interval;
cout<<"Вв кол-во пар: ";
cin>>n;
cout<<"Начало Конец"<<endl;
for(int i=0;i<n;i++){
Pair.Print();
Pair.AddHour(Phour); Pair.AddMin(Pmin);
Pair.Print(); cout<<endl;
Pair.AddMin(interval);
}
getch();
}