Что нового

[Математика] Округление числа

Fever

Скриптер
Сообщения
308
Репутация
112
Вобщем вот в чем проблема, я задаю значение времени в минутах, потом мне нужно вынести ето значение в часах, и если я задам время 30 мин, то получу 0.5 часа, но если 5 мин, то получу 0.08(3) (3 в периоде) часа... как мне округлить значение в часах до сотых???
Код:
$TIME = GUICtrlRead($sTime)
$hTIME = $TIME/60
If Not StringIsDigit($TIME) Then
	$TIME = 0
	MsgBox(64, 'Alert', 'You entered incorrect time!')
ElseIf $TIME < 5 Then
	$TIME = 0
	MsgBox(64, 'Alert', 'The minimize importance of time is 5!')
Else
	GUICtrlSetData($cTime, $TIME & ' = ' & $hTIME & ' hour(s)')
EndIf
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4 020
Репутация
622
Fever
Есть два варианта
1. Реальное округление
Код:
Round($a, $n); $n - кол-во знаков после запятой, до которых нужно округлять

2. Форматирование строки до определенных знаков после запятой.
Код:
StringFormat('%.' & $n & 'f', $a); $n - Кол-во знаков после запятой
 
Автор
F

Fever

Скриптер
Сообщения
308
Репутация
112
Kaster спасибо :IL_AutoIt_1:
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Нужно учитывать некоторые особенности, например

Код:
Round(4.185, 2)


выдает 4.18!
 
Автор
F

Fever

Скриптер
Сообщения
308
Репутация
112
Yashied сказал(а):
Нужно учитывать некоторые особенности, например

Код:
Round(4.185, 2)


выдает 4.18!
Yashied
сппасибо, незнал :ok: :IL_AutoIt_1:
 
Верх