С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/29: Рейтинг темы: голосов - 29, средняя оценка - 4.59
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
1

Функция, которая увеличивает на Т секунд время

13.01.2010, 20:43. Показов 5364. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Описать процедуру IncTime (H, M, S, T), которая увеличивает на Т секунд время, заданное в часах Н, минутах М и секундах S (H, M и S- входные и выходные параметры, Т- входной параметр; все параметры целые положительные). Дано время (в часах Н, минутах М, секундах S) и целое число Т. Используя процедуру IncTime, увеличить данное время на Т секунд и вывести новые значения Н, М, S.

Помогите решить, я все наработки потерял.(
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Блог
13.01.2010, 20:43
Ответы с готовыми решениями:

Описать процедуру IncTime(H, M, S, T), которая увеличивает на T секунд время, заданное в часах H, минутах M и секундах
. Описать процедуру IncTime(H, M, S, T), которая увеличивает на T се- кунд время, заданное в часах...

Функция: Написать функцию next(t, t1, d), которая присваивает параметру t1 время на d секунд больше, чем время t.
Прошу помочь. Ввести структуру time с полями часы, минуты, секунды. Составить и протестировать...

Описать процедуру, которая увеличивает на T секунд время, заданное в часах
Помогите пожалуйста решить задачу по паскаль: Описать процедуру IncTime(H, M, S, T), которая...

Описать процедуру IncTime(H,M,S,T),которая увеличивает на T секунд время, заданное в часах, минутах и секундах
Помогите написать задачу на С. Описать процедуру IncTime(H,M,S,T),которая увеличивает на T секунд...

8
Эксперт С++
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
13.01.2010, 22:16 2
И в чем трудности ?
C
1
2
3
4
5
6
7
8
9
10
t= 3600*H+60*M+S+T;
H= t/3600;
t%= 3600;
M= t/60;
S= t%60;
 
// H может получиться >= 24 часов.
// Из условия неясно что делать с этим.
// Но если нужно, то можно подравнять по дням
H%= 24;
0
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
14.01.2010, 07:18  [ТС] 3
а можно плиз весь листинг программы, мне на пятницу надо, а я совершенно не успеваю, сдавать все долги..(
0
טאַראַס
14.01.2010, 08:59
  #4

Не по теме:

Твоя тема может быть неправильно понята так: "функция, которая работает на T секунд дольше". В то же время название темы врядли можно считать плохим.

0
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
14.01.2010, 15:07  [ТС] 5
вообщето тема была переименована администрацией, она была названа как функция. помощь всё ещё требуется.
0
78 / 78 / 29
Регистрация: 01.08.2009
Сообщений: 177
14.01.2010, 15:40 6
что-то люди странные пошли.. им объясняют а они не понимают))
Вот то что написал odip только поразжеванней)):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
void IncTime(int,int,int,int);
 
int main()
{
    IncTime(15,23,45,90);
    return 0;
}
 
void IncTime(int H,int M,int S,int T){
    int tm= 3600*H+60*M+S+T;
    H = tm/3600;
    tm %= 3600;
    M = tm/60;
    S = tm%60;
    cout << H<<":"<<M<<":"<<S;
}
Добавлено через 6 минут
Если по-другому прочитать задание то получится вот такой код с ссылочками:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
void IncTime(int &,int &,int &,int);
 
int main()
{
    int minutes = 23, hours = 15, seconds = 45;
    IncTime(hours,minutes,seconds,165);
    cout << hours<<":"<<minutes<<":"<<seconds;
    return 0;
}
 
void IncTime(int &H,int &M,int &S,int T){
    int tm= 3600*H+60*M+S+T;
    H = tm/3600;
    tm %= 3600;
    M = tm/60;
    S = tm%60;
}
1
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
14.01.2010, 18:02  [ТС] 7
это всё чудно, но мне б на си надо без ++ =) и надо чтоб секунды с клавиатуры ввести можно было. Спасибо за помощь, надеюсь, что кто-то доделает, пока я займусь чертежами.
0
78 / 78 / 29
Регистрация: 01.08.2009
Сообщений: 177
14.01.2010, 18:40 8
Насчет языка надо сразу писать какой нужен.. Чтобы не парить людей попросту!
вот на с, с указателями:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
 
void IncTime(int *,int *,int *,int );
int main()
{
    int minutes, hours, seconds;
    printf("Vvedite vremya(15 43 22):");
    scanf("%u %u %u", &hours, &minutes, &seconds);
    IncTime(&hours,&minutes,&seconds,165);
    printf("%d:%d:%d",hours,minutes,seconds);
    return 0;
}
 
void IncTime(int *H,int *M,int *S,int T){
    int tm= 3600*(*H)+60*(*M)+(*S)+T;
    *H = tm/3600;
    tm %= 3600;
    *M = tm/60;
    *S = tm%60;
}
1
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
16.01.2010, 23:23  [ТС] 9
в общем прижучил я свой компилятор, теперь у меня всё работает...только что тестирую функцию- не то это. Здесь тупо выводится вводное время, а мне- нужно ввёл нужное время (часы, минуты, секунды) , а потом ещё раз ввести секунды. И потом увеличить время на эти секунды. А здесь время делает тупо +165 секунд. Плдскажите: как можно эти 165 секунд заменить на ввод секунд с клавиатуры...я вроде бы и сам так сказать представляю, но голова не варит уже, с этой подготтовкой к экзамену(

Добавлено через 12 минут
всё не надо) я написал)

вот если надо кому-нубудь будет:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
 
void IncTime(int *,int *,int *,int );
int main()
{
    int minutes, hours, seconds, T;
    printf("Please enter a time (hours: minutes: seconds):");
    scanf("%u %u %u", &hours, &minutes, &seconds);
    printf("Please enter the seconds to rise time: ");
    scanf("%d", &T);
    IncTime(&hours,&minutes,&seconds,T);
    printf("%d:%d:%d",hours,minutes,seconds);
    return 0;
}
 
void IncTime(int *H,int *M,int *S,int T){
    int tm= 3600*(*H)+60*(*M)+(*S)+T;
    *H = tm/3600;
    tm %= 3600;
    *M = tm/60;
    *S = tm%60;
}
0
16.01.2010, 23:23
cpp_developer
Эксперт
20123 / 5690 / 417
Регистрация: 09.04.2010
Сообщений: 12,546
Блог
16.01.2010, 23:23
Помогаю со студенческими работами здесь

Функция, которая увеличивает каждый элемент одномерного массива в два раза
Добрый вечер! увеличивается только первый элемент массива, помогите исправить! /*Создайте...

Функция, которая увеличивает значение переменной каждый раз, когда к ней обращаются
Мне нужно написать функцию, чтобы она увеличивала значения переменной каждый раз, когда к ней...

Написать программу, которая выводит время на экран с дискретностью в 5 секунд
помогите решить,заранее благодарю

Написать программу, которая переводит время из минут и секунд в секунды
Написать программу, которая переводит время из минут и секунд в секунды. Программа должна проверять...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru