Форум программистов, компьютерный форум CyberForum.ru

Немножко улучшил программу,исправьте ошибки и переделайте по лучше - C++

Восстановить пароль Регистрация
 
Tiami
Яростный кот
 Аватар для Tiami
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
14.02.2010, 12:59     Немножко улучшил программу,исправьте ошибки и переделайте по лучше #1
Создайте класс с именем time, содержащий три поля типа int, предназна-
ченные для хранения часов, минут и секунд. Один из конструкторов клас-
са должен инициализировать поля нулевыми значениями, а другой конст-
руктор — заданным набором значений. Создайте метод класса, который
будет выводить значения полей на экран в формате 11:59:59, и метод,
складывающий значения двух объектов типа time, передаваемых в качест-
ве аргументов.
В функции main() следует создать два инициализированных объекта (по-
думайте, должны ли они быть константными) и один неинициализиро-
ванный объект. Затем сложите два инициализированных значения, а ре-
зультат присвойте третьему объекту и выведите его значение на экран.
Где возможно, сделайте методы константными.


Я чуть переделал по своему как мне удобнее,пишет ошибки,дополните и исправьте,пожалуйста:

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
#include <iostream>
using namespace std;
class TIME
{
      private:
      int h;
      int m;
      int s;
      public:
             TIME():h(0),m(0),s(0){}
             TIME(int her,int min,int sec):h(her),m(min),s(sec){}
             void datainput()
             {
                  cout<<"Enter please your data in hours: minutes: seconds\n";
                  cout<<"Enter quantity of hours=";
                  cin>>h;
             }
             void datainput2()
             {
                  cout<<"Enter quantity of minutes=";
                  cin>>m;
             }
             void datainput3()
             {
                  cout<<"Enter quantity of seconds=";
                  cin>>s;
             }
             void times{}
             {
                  cout<<h<<":"<<m<<":"<<s;
             }
             double addition(TIME,TIME,TIME)
             {
                    char r;
                    cin>>r;
                    cout<<"Choose 3 variants:\n";
                    cout<<"1.To combine second with hours sec+h; Press key Y\n";
                    cout<<"2.To combine second with minutes sec+min;:: Press key N\n";
                    cout<<"3.To combine minutes with hours min+h; Press key Е\n";
                    switch(r)
                    {
                             case 'y' : d.s+z.c;break;
                             case 'n' : d.s+z.m;break;
                             case 'e' : d.m+d.h;break;
                             default  : cout<<"Incorrectly";
                    }
}:
      int main()
{
                    TIME d,z,c,sum,q;
                    d.datainput();
                    z.datainput2();
                    s.datainput3();
                    q.times();
                    sum=addition(d,z,s);
                    cout<<"The sum chosen by you is equal ="<<sum;
                    getchar();
}
Добавлено через 11 минут
C++
1
s.datainput3();
исправил на:
C++
1
с.datainput3();
Вот другие пока не знаю как исправить и как улучшить программу
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2010, 12:59     Немножко улучшил программу,исправьте ошибки и переделайте по лучше
Посмотрите здесь:

Исправьте пожалуйста ошибки C++
Массивы(исправьте ошибки) C++
Улучшите программу и исправьте ошибки C++
C++ Исправьте ошибки в коде
C++ Исправьте мне ошибки!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
14.02.2010, 13:23     Немножко улучшил программу,исправьте ошибки и переделайте по лучше #2
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
#include <iostream.h>
class TIME {
private:
int h;
int m;
int s;
public:
 TIME():h(0),m(0),s(0){}
 TIME(int her,int min,int sec):h(her),m(min),s(sec){}
             void datainput()
             {
                  cout<<"Enter please your data in hours: minutes: seconds\n";
                  cout<<"Enter quantity of hours=";
                  cin>>h;
             }
             void datainput2()
             {
                  cout<<"Enter quantity of minutes=";
                  cin>>m;
             }
             void datainput3()
             {
                  cout<<"Enter quantity of seconds=";
                  cin>>s;
             }
 
void times() const
             {
                  cout<<h<<":"<<m<<":"<<s<<'\n';
             }
 
 
//Сложение без учёта limitov: минут часов и секунд.
TIME operator + (const TIME& obj){
TIME SUM = *this;
SUM.h+=obj.h;
SUM.m+=obj.m;
SUM.s+=obj.s;
return SUM;
}
 
};
 
 
 
 
 
 
 
 
void main(){
TIME obj1(22,10,5);
obj1.times();
 
TIME obj2(22,10,5);
obj2.times();
 
TIME obj3;
obj3=obj1+obj2;
obj3.times();
 
}
Tiami
Яростный кот
 Аватар для Tiami
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
14.02.2010, 13:26  [ТС]     Немножко улучшил программу,исправьте ошибки и переделайте по лучше #3
О ну а что нибудь попрощея пока до такого не дошелновичок я
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
14.02.2010, 13:35     Немножко улучшил программу,исправьте ошибки и переделайте по лучше #4
Будет и по проще:

Добавлено через 6 минут
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
#include <iostream.h>
class TIME {
private:
int h;
int m;
int s;
public:
 TIME():h(0),m(0),s(0){}
 TIME(int her,int min,int sec):h(her),m(min),s(sec){}
             void datainput()
             {
                  cout<<"Enter please your data in hours: minutes: seconds\n";
                  cout<<"Enter quantity of hours=";
                  cin>>h;
             }
             void datainput2()
             {
                  cout<<"Enter quantity of minutes=";
                  cin>>m;
             }
             void datainput3()
             {
                  cout<<"Enter quantity of seconds=";
                  cin>>s;
             }
 
void times() const
             {
                  cout<<h<<":"<<m<<":"<<s<<'\n';
             }
 
 
//Сложение без учёта limitov: минут часов и секунд.
//Оператор сложения.
TIME operator + (const TIME& obj){
TIME SUM = *this;
SUM.h+=obj.h;
SUM.m+=obj.m;
SUM.s+=obj.s;
return SUM;
}
 
//Функция сложения:
TIME Add(const TIME& obj){
TIME SUM = *this; //присваиваем значения объекта который вызвал метод~функцию.
 
//Работаем с созданным и переданным объектом, слаживаем значения полей
SUM.h+=obj.h;
SUM.m+=obj.m;
SUM.s+=obj.s;
return SUM;     //возвращаем созданный объект в котором содержится сумма полей.
}
 
 
 
 
};
 
 
 
 
 
 
 
 
void main(){
TIME obj1(22,10,5);
obj1.times();
 
TIME obj2(22,10,5);
obj2.times();
 
TIME obj3;
obj3=obj1.Add(obj2);/*obj1 слаживается с obj2 и возращается объект в который записан результат сложения. */
obj3.times();
 
}
cybervlad
1 / 1 / 0
Регистрация: 24.02.2010
Сообщений: 4
26.02.2010, 02:51     Немножко улучшил программу,исправьте ошибки и переделайте по лучше #5
Создать класс время с полями: час(0-23), минута (0-59), секунда (0-59). В классе описать конструктор, а также функции-члены установки времени, получения часа, минуты и секунды, а также две функции вывода на экран: вывода по шаблону "16 часов 18 минут 3 секунды" и "4 p.m 18 минут 3 секунды". Функции-члены установки полей класса должны провериять корректность задаваемых параметров.
Yandex
Объявления
26.02.2010, 02:51     Немножко улучшил программу,исправьте ошибки и переделайте по лучше
Ответ Создать тему
Опции темы

Текущее время: 08:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru