Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
0 / 0 / 0
Регистрация: 18.09.2013
Сообщений: 31

Создать класс типа - время

18.09.2013, 23:50. Показов 3909. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создать класс типа - время с полями: час (0-23), минуты (0-59), секунды (0-59). Класс имеет конструктор. Функции-члены установки времени,. функции-члены получения часа, минуты и секунды, а также две функции-члены печати: печать по шаблону: “16 часов 18 минут 3 секунды” и “4 p.m. 18 минут 3 секунды”. Функции-члены установки полей класса должны проверять корректность задаваемых параметров.

**************************************** **************************************** **********
Time.cpp


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#include "StdAfx.h"
#include "Time.h"
#include <iostream>
#include <locale>
using namespace std;
 
Time::Time()//к-фчк при созд объекта для иниц св-в объекта-не возвр никакое значение
{
}
 
 
Time::Time(int HOURS,int MINUTES,int SECOND)
{
     if(HOURS<24 && HOURS>=0) hours=HOURS;
      if(MINUTES<60 && MINUTES>=0) minutes=MINUTES;
      if(SECOND<60 && SECOND>=0) second=SECOND; 
}
 
 
Time::~Time()//д-фчк-без аргументов нич не возвр. автоматически при уничтожении. пров квп на 0 освоб до унич
{
    
}
 
 
int Time::GetHours(void) 
{
    return hours;
}
 
 
int Time::GetMinutes(void) 
{
    return minutes;
}
 
 
int Time::GetSecond(void) 
{
    return second;
}
 
 
void Time::SetHours(int HOURS)
{     
    if(HOURS<24 && HOURS>=0) hours = HOURS;
    else hours=-1;
}
 
 
void Time::SetMinutes(int MINUTES)
{if(MINUTES<60 && MINUTES>=0) minutes = MINUTES;
    else minutes=-1;
}
 
 
void Time::SetSecond (int SECOND)
{     
    if(SECOND<60 && SECOND>=0) second=SECOND;
    else second=-1;
}
 
 
void Time::Print1()
{
    std::cout <<Time::hours <<"часов";
    std:: cout <<Time::minutes<<"минут";
    std::cout <<Time::second<< "секунд" <<std::endl;
}
 
 
void Time::Print2()
{
    if(Time::hours>12) {int a=Time::hours; std::cout<<a-12<<"p.m";}
        else std::cout<<Time::hours<<"a.m";
            std:: cout<< Time::minutes << "минут";
            std::cout<< Time::second<< "секунд"  << std::endl;
 
 
}
 
********************************************************************************************
лаба1. cpp
 
#include "stdafx.h"
#include "Time.h"
#include <iostream>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{   setlocale(LC_CTYPE, "rus");
    cout<<"Если среди данных полей времени встречается минус 1, то время введено неправильно"<<endl;
Time a1, a2;
    a1.SetHours(22);
 
    a1.SetMinutes(59);
    a1.SetSecond(59);
    a2.SetHours(4);
    a2.SetMinutes(35);
    a2.SetSecond(12);
    a1.Print1();
    a1.Print2();
    cout<<endl;
    a2.Print1();
    a2.Print2();
    delete &a1;
 
    return 0;
}
********************************************************************************************
 
#pragma once
class Time
{
    int hours,minutes,second;
public:
    Time();                        // конструктор без параметров
    Time(int,int,int);         // конструктор с параметрами
//по умолчанию создается конструктор без параметров и конструктор копирования(если явно не описаны)
 
    ~Time();    //деструктор
 
    int GetHours(void);            //метод – получить час
    int GetMinutes(void);           //метод – получить минуты
    int GetSecond(void);      //метод – получить секунды
    void SetHours(int HOUR);
    void SetMinutes(int MINUTES);
    void SetSecond (int SECOND);
      //метод – установить время
    void Print1();          //метод - печать "00 часов 00 минут 00 секунд"
    void Print2();          //метод - печать "00 p.m. 00 минут 00 секунд"      
};

**************************************** **************************************** ************
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.09.2013, 23:50
Ответы с готовыми решениями:

Создать абстрактный базовый класс Тройка чисел с виртуальными методами увеличения на 1. Создать производный класс Время со своими функциями
Здравствуйте, пожалуйста помогите написать код к данной задаче, с таким условием: Создать абстрактный базовый класс Тройка чисел с...

Класс «Время», вычислить разницу в секундах между двумя объектами типа «Время»
Здравствуйте. Нужно написать задачку на C++ в приложении с оконным интерфейсом. Класс «Время» имеет три поля – часы, минуты, секунды....

Создать класс Mystring, предназначенный для хранения строки из символов типа char. Класс имеет метод для определения дли
Создать класс Mystring, предназначенный для хранения строки из символов типа char. Класс имеет метод для определения длины строки. Не...

1
0 / 0 / 1
Регистрация: 17.12.2012
Сообщений: 1
21.09.2013, 22:28
Цитата Сообщение от MaX@@@@@@@ Посмотреть сообщение
Создать класс типа - время с полями: час (0-23), минуты (0-59), секунды (0-59). Класс имеет конструктор. Функции-члены установки времени,. функции-члены получения часа, минуты и секунды, а также две функции-члены печати: печать по шаблону: “16 часов 18 минут 3 секунды” и “4 p.m. 18 минут 3 секунды”. Функции-члены установки полей класса должны проверять корректность задаваемых параметров.

**************************************** **************************************** **********
Time.cpp


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#include "StdAfx.h"
#include "Time.h"
#include <iostream>
#include <locale>
using namespace std;
 
Time::Time()//к-фчк при созд объекта для иниц св-в объекта-не возвр никакое значение
{
}
 
 
Time::Time(int HOURS,int MINUTES,int SECOND)
{
     if(HOURS<24 && HOURS>=0) hours=HOURS;
      if(MINUTES<60 && MINUTES>=0) minutes=MINUTES;
      if(SECOND<60 && SECOND>=0) second=SECOND; 
}
 
 
Time::~Time()//д-фчк-без аргументов нич не возвр. автоматически при уничтожении. пров квп на 0 освоб до унич
{
    
}
 
 
int Time::GetHours(void) 
{
    return hours;
}
 
 
int Time::GetMinutes(void) 
{
    return minutes;
}
 
 
int Time::GetSecond(void) 
{
    return second;
}
 
 
void Time::SetHours(int HOURS)
{     
    if(HOURS<24 && HOURS>=0) hours = HOURS;
    else hours=-1;
}
 
 
void Time::SetMinutes(int MINUTES)
{if(MINUTES<60 && MINUTES>=0) minutes = MINUTES;
    else minutes=-1;
}
 
 
void Time::SetSecond (int SECOND)
{     
    if(SECOND<60 && SECOND>=0) second=SECOND;
    else second=-1;
}
 
 
void Time::Print1()
{
    std::cout <<Time::hours <<"часов";
    std:: cout <<Time::minutes<<"минут";
    std::cout <<Time::second<< "секунд" <<std::endl;
}
 
 
void Time::Print2()
{
    if(Time::hours>12) {int a=Time::hours; std::cout<<a-12<<"p.m";}
        else std::cout<<Time::hours<<"a.m";
            std:: cout<< Time::minutes << "минут";
            std::cout<< Time::second<< "секунд"  << std::endl;
 
 
}
 
********************************************************************************************
лаба1. cpp
 
#include "stdafx.h"
#include "Time.h"
#include <iostream>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{   setlocale(LC_CTYPE, "rus");
    cout<<"Если среди данных полей времени встречается минус 1, то время введено неправильно"<<endl;
Time a1, a2;
    a1.SetHours(22);
 
    a1.SetMinutes(59);
    a1.SetSecond(59);
    a2.SetHours(4);
    a2.SetMinutes(35);
    a2.SetSecond(12);
    a1.Print1();
    a1.Print2();
    cout<<endl;
    a2.Print1();
    a2.Print2();
    delete &a1;
 
    return 0;
}
********************************************************************************************
 
#pragma once
class Time
{
    int hours,minutes,second;
public:
    Time();                        // конструктор без параметров
    Time(int,int,int);         // конструктор с параметрами
//по умолчанию создается конструктор без параметров и конструктор копирования(если явно не описаны)
 
    ~Time();    //деструктор
 
    int GetHours(void);            //метод – получить час
    int GetMinutes(void);           //метод – получить минуты
    int GetSecond(void);      //метод – получить секунды
    void SetHours(int HOUR);
    void SetMinutes(int MINUTES);
    void SetSecond (int SECOND);
      //метод – установить время
    void Print1();          //метод - печать "00 часов 00 минут 00 секунд"
    void Print2();          //метод - печать "00 p.m. 00 минут 00 секунд"      
};

**************************************** **************************************** ************
никогда не думала, что встречу тут свой код....О_о А в чем вопрос хоть?
во-первых в мэйне "delete &a1;" не нужен--при компиляции появится ошибка памяти, тут эта строчка только потому, что на защите вопрос был "как вызывается деструктор", а он вызывается при выполнении оператора delete))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.09.2013, 22:28
Помогаю со студенческими работами здесь

Создать класс Время
Первая программа на С++,не могу сделать Cоздать классы час, который подается тремя полями типа unsigned int для часов, минут и секунд....

Создать класс типа круг
Создать класс типа круг. Поля-данные: радиус, координаты центра. Функции-члены вычисляют площадь, длину окружности, устанавливают поля и...

Создать класс типа - окружность
Создать класс типа - окружность. Поля - радиус. Функции-члены вычисляют площадь, длину окружности, устанавливает поля и возвращают...

Создать класс типа квадрат
Создать класс типа &quot;квадрат&quot;. Поля - координаты сторон квадрата. Функции члены вычисляют площадь, периметр, устанавливают поля и возвращают...

Создать класс типа Film
Создать класс Film. Переменная типа Film должна содержать следующие поля: название; год создания; режиссер; количество актеров; актеры....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru