Skip to content

Commit 067b1c2

Browse files
committed
code splitted into separate files
1 parent edccd9b commit 067b1c2

File tree

3 files changed

+87
-60
lines changed

3 files changed

+87
-60
lines changed

Variants/Lab_12/var_11/main.cpp

Lines changed: 11 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -2,78 +2,29 @@
22
// Time(), Time(int hour), Time(int hour, int min),
33
// Time(int h, int m, int s) и Time(char *time)
44

5+
// TODO:
56
//! Спросить у Линского, нужно ли перегружать операторы?
7+
// добавить проверку на корректность данных
68

7-
// Используйте приватные поля для данных
8-
// Реализуйте конструктор, который должен устанавливать значения по умолчанию
9-
// Реализуйте методы для чтения и записи значений полей (set, get)
9+
//* Используйте приватные поля для данных
10+
//* Реализуйте конструктор, который должен устанавливать значения по умолчанию
11+
//* Реализуйте методы для чтения и записи значений полей (set, get)
1012
// Реализуйте операторы ввода и вывода (перегрузка operator<< и operator>> не требуется)
1113
// Если требуется, напишите конструктор копий, оператор присваивания и деструктор
1214
// Напишите программу для тестирования вашего класса
1315

14-
// TODO:
15-
// добавить проверку на корректность данных
1616

17-
#include <stdio.h>
18-
#include <stdlib.h>
17+
#include "time.h"
1918

2019
using namespace std;
2120

22-
class Time {
23-
private:
24-
int _hour, _minute, _second;
25-
26-
public:
27-
// конструкторы
28-
29-
Time(int hour = 0, int minute = 0, int second = 0):
30-
_hour(hour), _minute(minute), _second(second) {
31-
printf("%d : %d : %d\n", _hour, _minute, _second); //? test
32-
}
33-
34-
Time(const char *time):
35-
_hour(0), _minute(0), _second(0) {
36-
sscanf(time, "%d:%d:%d", &_hour, &_minute, &_second);
37-
printf("%02d:%02d:%02d\n", _hour, _minute, _second); //? test
38-
}
39-
40-
// сеттеры
41-
42-
void set_hour(int h) {
43-
_hour = h % 24;
44-
}
45-
46-
void set_minute(int m) {
47-
_minute = m % 60;
48-
}
49-
50-
void set_second(int s) {
51-
_second = s % 60;
52-
}
53-
54-
// геттеры
55-
56-
int get_hour() {
57-
return _hour;
58-
}
59-
60-
int get_minute() {
61-
return _minute;
62-
}
63-
64-
int get_second() {
65-
return _second;
66-
}
67-
68-
// вывод на экран
69-
70-
void print() {
71-
printf("%02d:%02d:%02d", _hour, _minute, _second);
72-
}
73-
};
74-
7521
int main() {
7622
Time test0(6, 18);
23+
test0.print();
24+
7725
Time test1("6:18:01");
26+
test1.print();
27+
7828
Time test2("16:18");
29+
test2.print();
7930
}

Variants/Lab_12/var_11/time.cpp

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
#include "time.h"
2+
3+
Time::Time(int hour, int minute, int second):
4+
_hour(hour), _minute(minute), _second(second) {
5+
}
6+
7+
Time::Time(const char *time):
8+
_hour(0), _minute(0), _second(0) {
9+
sscanf(time, "%d:%d:%d", &_hour, &_minute, &_second);
10+
}
11+
12+
// сеттеры
13+
14+
void Time::set_hour(int h) {
15+
_hour = h % 24;
16+
}
17+
18+
void Time::set_minute(int m) {
19+
_minute = m % 60;
20+
}
21+
22+
void Time::set_second(int s) {
23+
_second = s % 60;
24+
}
25+
26+
// геттеры
27+
28+
int Time::get_hour() {
29+
return _hour;
30+
}
31+
32+
int Time::get_minute() {
33+
return _minute;
34+
}
35+
36+
int Time::get_second() {
37+
return _second;
38+
}
39+
40+
// вывод на экран
41+
42+
void Time::print() {
43+
printf("%02d:%02d:%02d\n", _hour, _minute, _second);
44+
}

Variants/Lab_12/var_11/time.h

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
#pragma once
2+
3+
#include <stdio.h>
4+
5+
using namespace std;
6+
7+
class Time {
8+
private:
9+
int _hour, _minute, _second;
10+
11+
public:
12+
// конструкторы
13+
14+
Time(int hour = 0, int minute = 0, int second = 0);
15+
Time(const char *time);
16+
17+
// сеттеры
18+
19+
void set_hour(int h);
20+
void set_minute(int m);
21+
void set_second(int s);
22+
23+
// геттеры
24+
25+
int get_hour();
26+
int get_minute();
27+
int get_second();
28+
29+
// вывод на экран
30+
31+
void print();
32+
};

0 commit comments

Comments
 (0)