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

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

Войти
Регистрация
Восстановить пароль
 
jambas92
58 / 57 / 3
Регистрация: 18.11.2010
Сообщений: 315
#1

время (с++) - C++

22.11.2010, 17:48. Просмотров 371. Ответов 0
Метки нет (Все метки)

Здравствуйте!!! в первые работаю с классами... завершите мой код. от моей задачи требуется: ввести время, если часы меньше 0 или больше 23 или минуты меньше чем 0 или больше чем 60 (так же и секунды) нужно вывсети INVALID, а если нет, то вывести в норм формате. Простая проверка:
ввести:3
10 10 10
10 -1 0
12 00 12

вывести:10:10:10
INVALID
12:00:12
заранее благодарю!!!

Вот мой код:

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
#include <iostream>
#include <cstring>
 
using namespace std;
 
class Time{
 
    private:    
        int hours;
        int minutes;
        int seconds;
        bool isValid;
 
    public:
        Time(int,int,int);
        char print();
};
 
Time ::Time (int newhours, int newminutes, int newseconds){
    hours = ( newhours >= 0 && newhours < 24 ) ? newhours : 0; 
    minutes = ( newminutes >= 0 && newminutes < 60 ) ? newminutes : 0;   
    seconds = ( newseconds >= 0 && newseconds < 60 ) ? newseconds : 0;
}
Time ::print(){
        cout << ( ( hours == 0 || hours == 12 ) ? 12 : hours % 12 )
        << ":" << "0" << " " << minutes
        << ":" << " " << seconds 
        << ( hours < 12 ? " AM" : " PM" );
}
 
int main()
{
    return 0;
}
Добавлено через 22 минуты
скорее всего этот вариант будет лучше!!!

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
#include <iostream>
#include <cstring>
 
using namespace std;
 
class Time{
 
    private:    
        int hours;
        int minutes;
        int seconds;
        char isValid;
 
    public:
        Time(int,int,int);
        int print();
};
 
Time ::Time (int newhours, int newminutes, int newseconds){
    hours = ( newhours >= 0 && newhours < 24 ) ? newhours : 0; 
    minutes = ( newminutes >= 0 && newminutes < 60 ) ? newminutes : 0;   
    seconds = ( newseconds >= 0 && newseconds < 60 ) ? newseconds : 0;
}
Time ::print() {
    if (hours>=0 && hours<24)
    {
        return hours;
    }
    if (minutes>=0 && minutes<60)
    {
        return minutes;
    }
    if (seconds>=0 && seconds<60)
    {
        return seconds;
    }
}
int main()
{
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2010, 17:48     время (с++)
Посмотрите здесь:

Как переконвертировать время из unix epoch формата в понятную дату и время? - C Linux
Уважаемые форумчане! Не могу нигде найти адекватного решения обратной конвертации из формата unix epoch в человекочитабельную форму! Есть...

Суммарное время ожидания покупателей (общее время простоя в очереди) в магазине - GPSS
Задача: Время между последовательными прибытиями покупателей в магазин равномерно распределяется на интервале от 1 до 20 минут. Для 50%...

Таймер и БД. Получить из БД время и задержать скрипт на это время. - PHP БД
Имеется некая база данных с цифровыми значениями, которые обозначают время в секундах. Нужно чтобы по истечению таймера, выполнялось некое...

компьютер вырубается во время игр каждый раз через разное время. - Компьютерное железо
помогите пожалуйста* компьютер Acer aspire m3201. * ** ** * Тип ЦП* ** ** ** ** ** ** ** ** ** ** ** ** ** ** TripleCore AMD Phenom X3...

Во время любых игр через некоторое время отключается ноутбук от перегрева - Ноутбуки
Всем привет, acer aspire e1-571g в последнее время стал выключаться от перегрева спустя некоторое время игры в абсолютно любую игру,...

Функция, возвращающая время в часах и минутах на основе параметра - время в секундах - Pascal
Создайте функцию, которая возвращает время в часах и минутах на основе параметра - время в секундах.

Записи. Дано время t1 и время t2. Определить, сколько времени пройдет от t1 до t2 - C++
Дано время t1 и время t2. Гарантируется, что t1 и t2 -время одного дня, а также что t1&lt;t2. Определить, сколько времени пройдет от t1 до t2....

Синий экран во время игр, во время использования браузера иногда - BSOD
Вылетает синий экран во время игр Radeon hd7660g AMD a10 4600 OZU 6gb Архив BSOD автоматическая.

График количество-время, где время разбито в несколько полей - Delphi БД
Собсна, есть таблица с полями: День; Час; Минута; Количество; Все числовые. Есть DBChart. Задача заключается в том, чтобы...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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