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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Пульман
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 40
#1

Исправьте ошибку, чтобы программа работала корректно - C++

24.03.2014, 09:08. Просмотров 276. Ответов 2
Метки нет (Все метки)

Задание:
Описать структуру «время» (часы, минуты, секунды). Определить функцию «следующая минута» увеличивающую передаваемое в нее время на 1 секунду (учесть, что в сутках 24 часа).

Вроде и легкое задание на понимание, но что-то я накосячил, запутался и уже ничего не понимаю, помогите!)

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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
 
using namespace std;
 
struct Time
{
    int hour;
    int minute;
    int second;
    cin >> "Введите часы">> hour >>endl;
    cin >> "Введите минуты">> minute>>endl;
    cin >> "Введите секунды">> second>>endl;
};
 
void Init(int hours,int minutes,int secondes, Time &t)
{    
    if(hours >= 24)
    {
    t.hour      = 0;
    t.minute    = 0;
    t.second = 0;
    return;
    }
 
    t.hour   = hours;
    t.minute = minutes;
    t.second = secondes;
 
}
 
Time Add(const Time &t1)
{
    Time result;
    if(t1.minute>= 60)
    {
        result.hour = t1.hour + 1;
        result.minute = (t1.minute);
        result.second = (t1.second+1);
        return result;
    }
 
        result.hour = t1.hour;
        result.minute = t1.minute;
        result.second = (t1.second+1);
        return result;
 
}
 
Time Add(const Time &t1)
{
    Time result;
    if(t1.second>= 60)
    {
        result.minute = t1.minute + 1;
        result.hour = t1.hour;
        result.second = (t1.second+1);
        return result;
    }
 
        result.minute = t1.minute;
        result.hour = t1.hour;
        result.second = (t1.second+1);
        return result;
        {
 
        
        }
 
 
}void Show(const Time &t1)
{
cout << t1.hour << " : " << t1.minute << " : " << t1.second << endl;
}
 
 
int main()
{
    setlocale(LC_ALL , "Russian");
 
    cout << "***Время***\n\n";
    Time t1,t2;
    Show(t2);
    _getch();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2014, 09:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Исправьте ошибку, чтобы программа работала корректно (C++):

Как сделать, чтобы программа быстрее работала? - C++
Задача такая Первая строка содержит количество банкнот N (1 ≤ N ≤ 500 000). В следующих N строках даны достоинства K этих банкнот (0 ≤ K...

Код чтобы программа работала на Windows и Mac OS - C++
Я пишу программы под Windows,но у моего друга Mac OS.Нужен код,чтобы программа работала и у друга)

Сделать, чтобы программа работала определенное количество времени - C++
Прошу помощи. Искал в инете способы решения, но к сожалению не нашел. Цель: Сделать, чтобы программа работала определенное количество...

Дана формула. необходимо чтобы программа работала и выводила значение - C++
Извинение за картинку, но мне кажется сложновато будет это напечатать

Готовая программа, нужно переделать ее чтобы она работала с УКАЗАТЕЛЯМИ - C++
Вычислить значение выражения тут Вычислить значение выражения (3a+4)/(a-в квадрате-5a-9) для а= 1,2,…100. Результат выполнения занести в...

Что сделать, чтобы при записи в пример букв, вместо цифр, программа не работала - C++
Как и где нужно прописать, чтобы при записи числа и буквы, программа не работала? х-у=... 7-6= все работает, так и нужно 7-а=...

2
dimcoder
Полярный
466 / 439 / 68
Регистрация: 11.09.2011
Сообщений: 1,137
24.03.2014, 09:49 #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
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
#include <iostream>
#include <conio.h>
 
using namespace std;
 
struct Time
{
    int hour;
    int minute;
    int second;
    
    void setHour(int h)
    {
        if(h >= 24 || h < 0)
        {
            cout << "hour is wrong. set to 0" << endl;
            hour = 0;
        }
        else
            hour = h;
    }
    
    void setMinute(int m)
    {
        if(m < 0 || m >= 60)
        {
            cout << "minute is wrong. set to 0" << endl;
            m = 0;
        }
            else minute = m;
    }
    
    void setSecond(int s)
    {
        if(s < 0 || s >= 60)
        {
            cout << "second var is wrong. set to 0" << endl;
            s = 0;
        }
        else
            second = s;
    }
    
    void askTime()
    {
        int buf;
        cout << "vvedite chas ";
        cin >> buf;
        setHour(buf);
        
        cout << "minutu ";
        cin >> buf;
        setMinute(buf);
        
        cout << "i sekundu ";
        cin >> buf;
        setSecond(buf);
    }
    
    void print()
    {
        cout << hour << ":" << minute << ":" << second << endl;
    }
};
 
void addSecond(Time &time)
{
    if (time.second + 1 < 60)
        time.setSecond(time.second+1);
    else
    {
        time.setSecond(0);
        if (time.minute + 1 < 60)
            time.setMinute( time.minute + 1 );
        else
        {
            time.setMinute(0);
            if (time.hour + 1 < 24)
                time.setHour(time.hour + 1);
            else
                time.setHour(0);
        }
    }
}
 
int main()
{
    Time t;
    t.askTime();
    t.print();
    addSecond(t);
    cout << "addSecond(t)" << endl;
    t.print();
    _getch();
    return 0;
}
Отмечу, что в addSecond можно и без set функций обойтись, но так лучше.
1
Пульман
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 40
24.03.2014, 15:18  [ТС] #3
Спасибо разобрался!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.03.2014, 15:18
Привет! Вот еще темы с ответами:

Чтобы программа работала через КЛАСС. Дата некоторого дня характеризуется натуральными числами: m(порядковый номер месяца) и n(число) - C++
Дата некоторого дня характеризуется натуральными числами: m(порядковый номер месяца) и n(число). По заданным m и n. Определить: Дату...

подскажите как сделать чтобы программа работала и выводила информацию о рейсах которыми можно воспользоваться для прибытия в пункт назначения раньше з - C++
в справочной автовокзала хранится расписание движения автобусов. Для каждого рейса указаны его номер, тип автобуса, пункт назначения, время...

Ребят Незнаю что делать при запуске на компилирование выдает ошибку.Кто понимает что не так скажите а если не затруднит исправьте ошибку - C++
Разговаривал с двумя преподами говорят что проект не правильно создавал,хотя все правильно из группы спрашивал у парней говорят что не...

Исправьте ошибку - C++
2. Задан двумерный массив N x N. Разрешается произвольно переставлять элементы внутри любого столбца. Проверить можно ли выполнив конечное...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru