Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.65/40: Рейтинг темы: голосов - 40, средняя оценка - 4.65
0 / 0 / 1
Регистрация: 23.03.2016
Сообщений: 40

Рассчитать время до следующего звонка

04.10.2016, 15:34. Показов 7906. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
(Даже не имею понятия,как это решать без циклов)
В некоторой школе занятия начинаются в 9:00. Продолжительность урока — 45 минут, после 1-го, 3-го, 5-го и т.д . уроков перемена длится 5 минут, а после 2-го, 4-го, 6-го и т.д . — 15 минут. Дан номер урока N. Определите, когда заканчивается указанный урок.

Требуется вывести два целых числа: время окончания урока в часах и минутах.

Важно : Обратите внимание, что при решении данной задачи нельзя пользоваться циклами.

Пример:
Ввод:

3
Вывод:
11 15
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.10.2016, 15:34
Ответы с готовыми решениями:

Определить, придёт ли ученик раньше звонка, после звонка или во время
Ребят, помогите мне разобраться написать данную программу: Расстояние от дома до школы Sкм. До начала урока осталось tминут. Ученик ...

Рассчитать стоимость звонка
17. Услуги телефонной сети оплачиваются по следующему прави¬лу: за разговоры до А минут в месяц оплачиваются В р., а раз-говоры сверх...

подключение к интернету во время звонка
как подключиться к нету во время звонка, если нет wifi. нужно для этого приложения...

4
132 / 158 / 87
Регистрация: 06.04.2016
Сообщений: 992
04.10.2016, 16:01
Лучший ответ Сообщение было отмечено DoctorKto как решение

Решение

C++Builder 6, ограничился 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
//---------------------------------------------------------------------------
#include <vcl.h>
#include <iostream.h>
#include <conio.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
int z = 0/*Uroki*/, n, t = 0;
ConversionTime(){
int ostatok, chasi;
 
//Perevodim minuti v chasi
chasi = t/60;
ostatok = t%60;
chasi += 9;
//Vivodim
cout << "Vremya okonchniya urokov:\n";
cout << chasi << ':' << ostatok;
 
getch();
return 0;
}
 
int main(int argc, char* argv[])
{
cout << "Vvedite nomer uroka(1-6): \n";
cin >> n;
 
if((n>=6)&&(n<=0)){
    cout << "Neverno vveden urok!";
    return 1;
    }
 
//1
//45
//Peremena pereshla v sleduyushii urok
t += 45;
z++;
if(z == n) ConversionTime();
 
//2
//5 + 45
t += 50;
z++;
if(z == n) ConversionTime();
 
//3
//15 + 45
t += 60;
z++;
if(z == n) ConversionTime();
 
//4
//5 + 45
t += 50;
z++;
if(z == n) ConversionTime();
 
//5
//15 + 45
t += 60;
if(z == n) ConversionTime();
 
//6
//5 + 45
t += 50;
z++;
if(z == n) ConversionTime();
 
return 0;
}
//---------------------------------------------------------------------------
0
 Аватар для regio1961
602 / 294 / 178
Регистрация: 06.06.2016
Сообщений: 552
04.10.2016, 16:53
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
 
#include <iostream>
 
 int main()
 {
    int n = 1;
    std::cout << "Enter the number of the lesson ";
    std::cin >> n;
    int time = 9*60 + 45*n + 5*(n/2) + 15*(n/2) - 15*!(n % 2);
    std::cout << "The end time of the lesson: "
                  << time / 60 << " h " <<  time % 60 << " min\n";
   return 0;
 }
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
04.10.2016, 17:31
DoctorKto, у вас пример неправильный. Вывод должен быть не 11 15, а 11 35.

Добавлено через 16 минут
C++
1
2
3
4
5
6
7
8
9
#include <ctime>
#include <iostream>
 
int main() {
    int N;
    std::cin >> N;
    int t = 540 + N * 45 + (N / 2 * 5) + ((N - 1) / 2 * 15);
    std::cout << t / 60 << ':' << t % 60 << std::endl;
}
0
Эксперт С++
 Аватар для Mr.X
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
04.10.2016, 18:44
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
97
98
99
100
101
102
103
104
105
106
107
108
//В некоторой школе занятия начинаются в 9:00. Продолжительность урока — 45 минут,
//после 1-го, 3-го, 5-го и т.д . уроков перемена длится 5 минут,
//а после 2-го, 4-го, 6-го и т.д . — 15 минут. Дан номер урока N.
//Определите, когда заканчивается указанный урок.
 
//Требуется вывести два целых числа: время окончания урока в часах и минутах.
 
//Важно : Обратите внимание, что при решении данной задачи нельзя пользоваться циклами.
///////////////////////////////////////////////////////////////////////////////
#include <iomanip>
#include <iostream>
///////////////////////////////////////////////////////////////////////////////
const   int     START_HOUR      {9};
const   int     START_MINUTE    {0};
const   int     LESSON_LEN      {45};
const   int     ODD_BREAK_LEN   {5};
const   int     EVEN_BREAK_LEN  {15};
///////////////////////////////////////////////////////////////////////////////
struct  T_time
{
    //-------------------------------------------------------------------------
    const   int     MINUTES_PER_HOUR    {60};
    //-------------------------------------------------------------------------
    int     minutes_total_;
    //-------------------------------------------------------------------------
    T_time( int     minutes_total )
        :
        minutes_total_( minutes_total )
    {}
    //-------------------------------------------------------------------------
    T_time
        (
            int     hours,
            int     minutes
        )
        :
        minutes_total_( hours * MINUTES_PER_HOUR + minutes )
    {}
    //-------------------------------------------------------------------------
    T_time  &   operator+=  ( T_time    const   &   t )
    {
        minutes_total_    +=  t.minutes_total_;
        return  *this;
    }
    //-------------------------------------------------------------------------
    int     hours()
    {
        return  minutes_total_    /   MINUTES_PER_HOUR;
    }
    //-------------------------------------------------------------------------
    int     minutes()
    {
        return  minutes_total_  %   MINUTES_PER_HOUR;
    }
    //-------------------------------------------------------------------------
    void    print_time_elem( int    time_elem )
    {
        std::cout   <<  std::setw       (2)
                    <<  std::setfill    ('0')
                    <<  time_elem;
    }
    //-------------------------------------------------------------------------
    void    print()
    {
        print_time_elem     (   hours   ()  );
        std::cout   <<  ':';
        print_time_elem     (   minutes ()  );
    }
    //-------------------------------------------------------------------------
};
///////////////////////////////////////////////////////////////////////////////
int     len_of_lessons_with_count( int  n )
{
    auto    breaks_total        =   n - 1;
    auto    even_breaks_count   =   breaks_total / 2;
    auto    odd_breaks_count    =   breaks_total - even_breaks_count;
 
    return  n
                ?       n                   *   LESSON_LEN
                    +   odd_breaks_count    *   ODD_BREAK_LEN
                    +   even_breaks_count   *   EVEN_BREAK_LEN
 
                :   0;
}
///////////////////////////////////////////////////////////////////////////////
int     main()
{
    for(;;)
    {
        int             lesson_num{};
 
        std::cout   <<  "lesson num: ";
        std::cin    >>  lesson_num;
 
        T_time  res (
                        START_HOUR,
                        START_MINUTE
                    );
 
        res     +=  len_of_lessons_with_count( lesson_num );
 
        std::cout   <<  "lesson ends at ";
        res.print();
 
        std::cout   <<  std::endl
                    <<  std::endl;
    }//for
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.10.2016, 18:44
Помогаю со студенческими работами здесь

FreePBX 14 громкость речи во время звонка
Здравствуйте,хотелось бы узнать как поднять громкость во время вызова?(Краткое описание:Имеется freepbx 14 в связке со шлюзом yeastar...

Отключить гашение экрана во время звонка
Гуру, ПОМОГИТЕ! Возможно ли это? Можно ли перехватить? Нужен ли рут для этого? Не зашито ли подобное в ядро &quot;намертво&quot;? ...

Во время совершения звонка skype закрывается
ubuntu 12.04 Доброго времени суток. Поставил недавно себе линукс, ну и соответственно скачал скайп с офф сайта и тоже поставил. Все...

Отправка mp3 в поток микрофона во время звонка
Доброго времени суток! Есть давайс на Android 4.4.2 с рут правами. Есть вопрос - возможно ли как-то отключить микрофон(да...

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


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru