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

Вывод количества минут в часах и минутах

05.09.2015, 13:30. Показов 2844. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
должно вывести 150 минут = 2 часа 30 минут. вместо этого выводится 2 часа 29 минут. что делаю не так ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.09.2015, 13:30
Ответы с готовыми решениями:

Написать программу пересчета временного интервала, заданного в минутах, в величину, заданную в часах и минутах
Написать программу пересчета временного интервала, заданного в минутах, в величину, заданную в часах и минутах (например, 154 минуты, это 2...

Описать секунды в часах, минутах и остаток в секундах
Пожалуйста проверьте код,я все правильно записал?и предлагайте свои варианты господа.Пример задачи: С начала суток прошло N секунд (N —...

Определить в часах, минутах, секундах длину интервала времени, заданного отметками в часах, минутах и секундах
Друзья, добрый день. Нужно составить программу: С клавиатуры вводится время начала эксперимента в часах, минутах и секундах, затем...

6
 Аватар для Detect
123 / 123 / 72
Регистрация: 11.05.2014
Сообщений: 331
05.09.2015, 13:55
C#
1
2
        TimeSpan ts = new TimeSpan(0, 150, 0);
        Console.WriteLine(ts.Hours + ":" + ts.Minutes);
0
0 / 0 / 1
Регистрация: 05.09.2015
Сообщений: 212
05.09.2015, 14:36  [ТС]
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
 
            double c = 2.30;
 
            int m = 150;
 
            double vremja = (int)c;   // 2 chasa
 
            int s = (int) ((c - vremja) * 100);
 
            Console.WriteLine("\n\t {0} minut = {1} chasa {2} minut", m, vremja, s);
            Console.ReadKey();
 
        }
    }
}
0
127 / 121 / 68
Регистрация: 27.08.2015
Сообщений: 232
05.09.2015, 15:30
Числа в машинном представлении содержатся в двоичном формате и double c = 2.30, которое записываете вы, это не обязательно точно 2.30 с точки зрения математики. У double примерно 15-16 значащих цифр. Выведем их:
C#
1
2
            double d = 2.30;
            Console.WriteLine(d.ToString("E16"));
В результате на экран выведется "2,2999999999999998E+000", не 2.30!
Именно поэтому у вас и получается 29. Правильнее сделать так, как вам подсказали выше.

Добавлено через 7 минут
На худой конец используйте Math.Round
C#
1
int s = (int)Math.Round((c - vremja) * 100);
0
0 / 0 / 1
Регистрация: 05.09.2015
Сообщений: 212
05.09.2015, 17:20  [ТС]
большое спасибо за ответ !
0
TheGreatCornholio
 Аватар для Woldemar89
1255 / 733 / 285
Регистрация: 30.07.2015
Сообщений: 2,408
06.09.2015, 13:47
Цитата Сообщение от eluzor Посмотреть сообщение
вместо этого выводится 2 часа 29 минут. что делаю не так ?
На будущее - нужно показывать в коде\проекте, как ты делаешь.
Тогда, как минимум быстрее, подскажут что не так.

У меня этот код выдает 2ч. 30м.
C#
1
2
3
4
5
6
7
            int allminutes = 150;
            int hours = allminutes / 60;
            int minutes = allminutes % 60;
 
            Console.WriteLine("{0}ч. {1}м.",hours,minutes);
 
            Console.ReadKey();
Добавлено через 18 минут
Цитата Сообщение от eluzor Посмотреть сообщение
double c = 2.30;
Это полный бред, если 30 - количество минут.
Тогда 2 десятичных разряда должны быть максимум .59.
Тип double явно не применим к задаче.

В крайнем случае применим, если 2.5 - это 2ч 30м -
то есть если в double хранится целая и дробная часть часа.

Тогда решение может выглядеть так. 2ч. 54м.

C#
1
2
3
4
5
6
7
            double time = 2.9;
            int hours = (int)time;
            double minutes = time % hours * 60.0;
 
            Console.WriteLine("{0}ч. {1}м.", hours, minutes);
 
            Console.ReadKey();
0
 Аватар для ViterAlex
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
06.09.2015, 16:07
C#
1
2
TimeSpan time = TimeSpan.FromMinutes(150);
Console.WriteLine("{0}ч. {1}м.",time.Hours,time.Minutes);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.09.2015, 16:07
Помогаю со студенческими работами здесь

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

Написать программу пересчета величины временного интервала, заданного в минутах, в величину, выраженную в часах и минутах
15. Написать программу пересчета величины временного интервала, заданного в минутах, в величину, выраженную в часах и минутах пожалуста...

Написать программу, которая преобразует введен в минутах интервал времени в интервал в часах и минутах
3. Написать программу, которая преобразует введен в минутах интервал времени в интервал в часах и минутах.

Преобразовать введенный в минутах интервал времени в интервал в часах и минутах
Помогите пожалуйста ребят) ЗАДАНИЕ: Написать программу, которая преобразует введенный в минутах интервал времени в интервал в часах и...

Отображение в часах и минутах
Всем привет! У меня вопрос такой вот, имеется числовое поле, в менм содержится например 1,5 часа, а как сделать, чтобы эти 1,5 часа...


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

Или воспользуйтесь поиском по форуму:
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