Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2014, 19:06   #1
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию Перевод времени из целого числа в вещественный

Здравствуйте! Ребят, помогите разобраться с задачей, формулировка такая:

Перевести интервал, выраженный в часах в вещественном формате в часы, минуты и секунды в целом и наоборот, вводится целый интервал и перевести в вещественный (это две задачи). Вот код перевода из вещественного в целый, в чем я не прав?

Задание не понял, вот код моих стараний :D, теперь сам вопрос, мы проходили QTime, но я думаю с таким заданием его нельзя использовать, потому что QTime вроде как работает со временем, установленным в системе и через QTime можно замерить время исполнения программы

Код:
#include <QCoreApplication>
#include <stdio.h>

int main(int argc, char *argv[])
{ QCoreApplication a(argc, argv);

int min_c,sec_c,hour_c;
float hour_v,min_v,sec_v;


scanf("%f:%f:%f",&hour_v,&min_v,&sec_v);
hour_c=hour_v;
min_c=min_v;
sec_c=sec_v;
printf("%d:%d:%d",hour_c,min_c,sec_c);

    return a.exec();
}
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 01.11.2014, 19:17   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Когда я слышу фразу:
Цитата:
выраженный в часах в вещественном формате
То я понимаю ее по Делфийски. Т.е. дробная часть числа, это собственно кол-во миллисекунд (или секунд) с начала полночи. Соответственно нужно получить эту дробную в целом виде, и делить. Сначала на 60, чтоб получить часы. Потом минуты, потом секунды и т.д.
А это:
Цитата:
float hour_v,min_v,sec_v;
как-то (без обид) попахивает бессмыслицей.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.11.2014, 19:21   #3
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

То есть для того, для решения задачи: перевод из вещественного интервала в целый мне нужно ввести какое-то число от 0 до 59 (часы), потом записать его в переменную вещественного типа, передать вводимое число в переменную целого типа, потом минуты и секунды просто делить на 60...вот я и говорю, что задачу не особо понял, поэтому прошу помочь точнее разобраться :D, спасибо!
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 01.11.2014, 19:27   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
мне нужно ввести какое-то число
Тебе нужно поднять на уши препода и опоросить его чего же он имел ввиду, и что "ввидет" тебе на следующей контрольной, задав такой каверзный вопрос о формате даты-времени.
Я же сказал - я мыслю Дельфийски. А у тебя Си.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.11.2014, 21:13   #5
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Разобрался, простая программа перевода:

Задача 1: перевести часы вещественного формата, в часы, минуты, секунды целого формата:

Код:
#include <QCoreApplication>
#include <stdio.h>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    
    float chas1;
    int chas=0,min=0,sec=0;
    
    printf("VVedite chasi: ");
    scanf("%f",&chas1);
    printf("--------------\n");
    chas=int(chas1);
    min=chas*60;
    sec=min*60;
    printf("Chasi: %d \n",chas);
    printf("Minuti: %d \n",min);
    printf("Secundi: %d \n",sec);
    return a.exec();
}

Задача 2: перевести целый интервал часов, минут секунд в часы в вещественном формате:

Код:
#include <QCoreApplication>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    
    int min,sec,hour;
    
    
    printf("BBEDITE CHASI:MINUTI:SECUNDI AND PRESS ENTER...\n");
    scanf("%d:%d:%d",&hour,&min,&sec);
    printf("----------------------\n");
    float hourvesh;
    hourvesh=(sec+(min*60)+(hour*3600));
    
    printf("BCEGO CHASOV: %f",hourvesh/=3600);   
    
    return a.exec();
}
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Visual Basic: Описать функцию DigitN (K, N) целого типа, возвращающую N-ю цифру целого положительного числа К Екатерина23 Помощь студентам 1 10.12.2013 09:25
CPP, перевод целого числа в двоичное Tuff_Gnarl Помощь студентам 6 13.12.2012 16:31
Перевод целого числа из 5 в 8 систему счисления и обратно. Whitt Помощь студентам 7 08.09.2010 07:14
не работает перевод из целого числа в ASCII professor Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 07.06.2010 06:59
Суммирование и округление времени до целого Pilot Microsoft Office Excel 2 16.07.2008 15:02