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

Из секунд - часы, минуты и секунды. Из минут - часы, минуты

26.08.2017, 11:10. Показов 10992. Ответов 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
        private void button4_Click(object sender, EventArgs e)
        {
            if (textBox3.Text == "")
            {
                textBox3.Text = "0";
            }
            if (textBox4.Text == "")
            {
                textBox4.Text = "0";
            }
            if (textBox5.Text == "")
            {
                textBox5.Text = "0";
            }
 
            int consec;
            consec = Convert.ToInt32(textBox5.Text);
            consec = int.Parse(textBox5.Text);
 
            int secparce = consec;
            int hours = (secparce / 60) / 60;                   //Получаем ЧАСЫ из СЕКУНД
            textBox3.Text = Convert.ToString(hours);            //Добавляем высчитаное время в textbox ЧАСОВ.
            int sec1 = secparce - (hours * 60 * 60);            //Получаем Остаток СЕКУНД если вычесть ЧАСЫ
 
            int minuts = sec1 / 60;                             //Получаем МИНУТЫ из Оставшихся СЕКУНД
            textBox4.Text = Convert.ToString(minuts);           //Добавляем высчитаное время в textbox МИНУТ.
 
            int seconds = sec1 - (minuts * 60);                 //Получаем СЕКУНДЫ от Остатка СЕКУНД после вычета ЧАСА и МИНУТ
 
            textBox5.Text = Convert.ToString(seconds);          // Добавляем высчитаное время в textbox СЕКУНД.
 
 
            h = Convert.ToInt32(textBox3.Text);                 // Конвертируем в int для работы в таймере.
            m = Convert.ToInt32(textBox4.Text);
            s = Convert.ToInt32(textBox5.Text);
            timer1.Start();
        }
В общем все основное вот тут
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
            int consec;
            consec = Convert.ToInt32(textBox5.Text);
            consec = int.Parse(textBox5.Text);
 
            int secparce = consec;
            int hours = (secparce / 60) / 60;                   //Получаем ЧАСЫ из СЕКУНД
            textBox3.Text = Convert.ToString(hours);            //Добавляем высчитаное время в textbox ЧАСОВ.
            int sec1 = secparce - (hours * 60 * 60);            //Получаем Остаток СЕКУНД если вычесть ЧАСЫ
 
            int minuts = sec1 / 60;                             //Получаем МИНУТЫ из Оставшихся СЕКУНД
            textBox4.Text = Convert.ToString(minuts);           //Добавляем высчитаное время в textbox МИНУТ.
 
            int seconds = sec1 - (minuts * 60);                 //Получаем СЕКУНДЫ от Остатка СЕКУНД после вычета ЧАСА и МИНУТ
 
            textBox5.Text = Convert.ToString(seconds);          // Добавляем высчитаное время в textbox СЕКУНД.
В общем так этот таймер работает только от секунд которые вставлены в "textBox5.Text" Что логично.
От минут и часов - сразу все становится по 0 (если в секундах 0) - что тоже логично.
Я знаю что нужно добавить чтоб взять значения с textbox4 и textbox5. Но мой мозг категорически не хочет понимать как добавить это все сюда.

НУЖНО: Просто последовательно конвертировать секунды в минуты и вычесть конвертируемые секунды из секунд, а минуты в часы и вычесть конвертируемые минуты из минут.
ЧТОБ:
если в часах - 0, в минутах - 0, в секундах - 10000 (ТО) получилось 2 в часах, 46 в минутах, 40 в секундах (сейчас работает).
если в часах - 0, в минутах - 10000, в секундах - 0 (ТО) получилось 166 в часах, 10 в минутах, 0 в секундах.
если в часах - 10000, в минутах - 0, в секундах - 0 (ТО) получилось 10000 в часах, 0 в минутах, 0 в секундах.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.08.2017, 11:10
Ответы с готовыми решениями:

Перевод секунд в часы, минуты и секунды
Подскажите, пожалуйста, как можно перевести секунды в часы, минуты и секунды? Например, из 21 355 секунд получить 5 часов 55 минут 55...

Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) когда совпадут минуты и часы
Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) до того момента когда часовая и минутная стелка...

Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) когда совпадут минуты и часы
Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) до того момента когда часовая и минутная стелка...

6
 Аватар для diadiavova
7258 / 2605 / 744
Регистрация: 11.04.2015
Сообщений: 4,148
Записей в блоге: 43
26.08.2017, 13:06
cxs23d, используй TimeSpan
C#
1
2
            var ts = TimeSpan.FromSeconds(12345);
            Console.WriteLine($"12345 секунд равно {ts.Hours} часам, {ts.Minutes} минутам и {ts.Seconds} секундам.");
Их, кстати, складывать и вычитать можно.
1
0 / 0 / 1
Регистрация: 24.08.2017
Сообщений: 9
26.08.2017, 14:37  [ТС]
diadiavova, Я не знаком с timespan.
Но в итоге получил такое
C#
1
2
3
4
5
6
7
8
9
        private void button1_Click(object sender, EventArgs e)
        {
            var ts = TimeSpan.FromSeconds(Convert.ToDouble(textBox3.Text));
            Console.WriteLine($"12345 секунд равно {ts.Hours} часам, {ts.Minutes} минутам и {ts.Seconds} секундам.");
 
            textBox1.Text = Convert.ToString(ts.Hours);
            textBox2.Text = Convert.ToString(ts.Minutes);
            textBox3.Text = Convert.ToString(ts.Seconds);
        }
Только это для введенных данных в textbox3. - Тогда он конвертирует секунды в минуты и часы. А если введено в textbox2, а textbox3=0 ? Тут как поступить?
0
 Аватар для diadiavova
7258 / 2605 / 744
Регистрация: 11.04.2015
Сообщений: 4,148
Записей в блоге: 43
26.08.2017, 14:47
cxs23d, Ну я ведь не зря упомянул, что их можно складывать. Создай для каждого текстбокса отдельный тайспан, сложи их все и используй результат.
0
0 / 0 / 1
Регистрация: 24.08.2017
Сообщений: 9
26.08.2017, 15:13  [ТС]
diadiavova,
C#
1
2
3
4
5
6
7
           var tssec = TimeSpan.FromSeconds(Convert.ToDouble(textBox3.Text));
            var tsmin = TimeSpan.FromSeconds(Convert.ToDouble(textBox2.Text));
            var tshor = TimeSpan.FromSeconds(Convert.ToDouble(textBox1.Text));
 
            textBox1.Text = Convert.ToString(tshor.Hours + tsmin.Hours + tssec.Hours);
            textBox2.Text = Convert.ToString(tshor.Minutes + tsmin.Minutes);
            textBox3.Text = Convert.ToString(tssec.Seconds);
Я все-равно не понял(( Не получается.

Добавлено через 8 минут
diadiavova,
C#
1
2
3
4
5
6
7
8
9
            var tssec = TimeSpan.FromSeconds(Convert.ToDouble(textBox3.Text));
            var tsmin = TimeSpan.FromMinutes(Convert.ToDouble(textBox2.Text));
            var tshor = TimeSpan.FromHours(Convert.ToDouble(textBox1.Text));
 
            var tsall = tssec + tsmin + tshor;
 
            textBox1.Text = Convert.ToString(tsall.Hours);
            textBox2.Text = Convert.ToString(tsall.Minutes);
            textBox3.Text = Convert.ToString(tsall.Seconds);
А если так - то минуты не правильно пересчитывает в часы... из 10000 минут - стало 22 часа 40 минут
0
 Аватар для diadiavova
7258 / 2605 / 744
Регистрация: 11.04.2015
Сообщений: 4,148
Записей в блоге: 43
26.08.2017, 15:29
Лучший ответ Сообщение было отмечено cxs23d как решение

Решение

Цитата Сообщение от cxs23d Посмотреть сообщение
А если так - то минуты не правильно пересчитывает в часы... из 10000 минут - стало 22 часа 40 минут
Дело в том, что там еще дни есть. Их ты не учел. Просто проверяй Days, если там больше нуля, то добавляй к часам значение этого свойства, умноженное на 24

Добавлено через 3 минуты
textBox1.Text = Convert.ToString(tsall.Hours + tsall.Days*24);
1
0 / 0 / 1
Регистрация: 24.08.2017
Сообщений: 9
26.08.2017, 15:54  [ТС]
diadiavova,
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
            var tssec = TimeSpan.FromSeconds(Convert.ToDouble(textBox3.Text));
            var tsmin = TimeSpan.FromMinutes(Convert.ToDouble(textBox2.Text));
            var tshor = TimeSpan.FromHours(Convert.ToDouble(textBox1.Text));
            var tsday = TimeSpan.FromDays(0);
 
            var tsall = tssec + tsmin + tshor + tsday;
 
            textBox1.Text = Convert.ToString(tsall.Hours + tsall.Days*24);
            textBox2.Text = Convert.ToString(tsall.Minutes);
            textBox3.Text = Convert.ToString(tsall.Seconds);
            //label1.Text = Convert.ToString(tsall.Days);
            //int horadd, horadd1;
                //horadd1 = Convert.ToInt32(tsall.Days);
            //if (horadd1 > 0)
            //{
                //horadd = horadd1 * 24;
                //textBox1.Text = Convert.ToString(horadd);
            //}
Надо же было все усложнить Спасибо...

Добавлено через 2 минуты
diadiavova, Если убрать + tsall.Days*24
Убрать //label1.Text = Convert.ToString(tsall.Days);
И убрать все "//"
- то в принципе тоже работает
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.08.2017, 15:54
Помогаю со студенческими работами здесь

Написать функцию, получающую часы, минуты, секунды, и возвращающую сколько секунд прошло с полудня
Напишите функцию, которая получает время в виде трех целых аргументов (часы, минуты, секунды) и возвращает количество секунд с момента,...

Округлить время (часы, минуты, секунды) до часов, минут или до часов
Всем привет! Нужна помощь с исправлением программы на c#. По заданию нужно округлить время (часы, минуты, секунды) до часов, минут или до...

Ввод времени и разбивка на часы, минуты, секунды
Всем доброго дня суток. Задача: Описать подпрограмму IncTime (H, M, S, T), которая увеличивает на T секунд время, заданное в часах H,...

Организовать перевод величин: часы, минуты, секунды
Делаю конвертер величин. Есть два ComboBox (comboBox1 и comboBox2). У каждого есть коллекция string sColletion = { "час",...

Перевести секунды в часы, минуты, секунды
С начала суток прошло 20000 секунд (или другое количество). Сколько это часов, минут, секунд?


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru