Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2019.03.31;
Скачать: CL | DM;

Вниз

Округление чисел   Найти похожие ветки 

 
Михалыч   (2016-11-01 12:24) [0]

Здравствуйте мастера! Нужно округлить число до 0 или 5, например
16 до 15, 18 до 20, как-то так.. )) Cтандартный Round округляет просто до целых, а как привести число к 0 и 5 незнаю.. ((


 
stas ©   (2016-11-01 12:36) [1]

Round((16+5)/10)-5


 
stas ©   (2016-11-01 12:37) [2]

stas ©   (01.11.16 12:36) [1]
(Round((16+5)/10)*10)-5


 
stas ©   (2016-11-01 12:40) [3]

не, так только до 15 округлит все )


 
Михалыч   (2016-11-01 12:44) [4]

пробовал RoundTo и SimpleRoundTo, так они все к 0 сводят.. ((


 
stas ©   (2016-11-01 12:45) [5]

Тогда так:
1. получить остаток от деления на 5 (value)
2. и если остаток меньше чем 5/2, то вычесть его,
3. если больше то прибавить (5-value)


 
Михалыч   (2016-11-01 12:57) [6]

Спасибо, попробую...


 
stas ©   (2016-11-01 13:09) [7]

или еще проще Round(value/5) * 5


 
Д7   (2016-11-16 18:00) [8]

Что такое "округлить до 0" ??
Примеры входящих и выходящих данных давайте. И каких они типов должны быть.


 
Rouse_ ©   (2016-11-16 18:50) [9]


> Д7   (16.11.16 18:00) [8]
> Что такое "округлить до 0" ??
> Примеры входящих и выходящих данных давайте. И каких они
> типов должны быть.

Первый пост совсем не читаем?


 
kilkennycat ©   (2016-11-16 23:02) [10]

Удалено модератором


 
Округляем как просят   (2016-11-17 08:58) [11]

function TForm1.R5_0(V: integer): integer;
begin
if (V MOD 5) > 2 then
 Result:= V + (5 - (V MOD 5))
                 else
 Result:= V - (V MOD 5);
end;


 
Д7   (2016-11-17 12:17) [12]

Читаем. И не понимаем.
Что есьм "привести число к 0 и 5" - типа к диапазону вещественных от нуля до пяти? А какой диапазон у входящих данных?


 
Д7   (2016-11-17 12:33) [13]

А ещё я уточняю у него типы данных, ибо учитывая "Cтандартный Round округляет просто до целых" он `округляет` явно не Integer.
Может надо Double -> Double.


 
Округляем как просят   (2016-11-17 12:38) [14]

> Д7   (17.11.16 12:17) [12]


Русским языком написано из:
6 получить   5
9 получить 10
18 получить 20
17 получить 15
36 - 35
49 - 40 и т.д.


 
Д7   (2016-11-17 13:02) [15]

В первом посте были примеры тока про 16 и 18. Остальное вы протелепатировали? =)
Допустим, возможно. Я уже было решил что понял задачу, но по какому принципу из 49 вышло 40?
И что должно выйти из 7.5 или 12.5 ?


 
Округляем как просят   (2016-11-17 13:15) [16]

> Д7   (17.11.16 13:02) [15]

описка:)
49 - 50 :)


 
Д7   (2016-11-17 13:22) [17]

а... Тогда ясно. Бывает. :3
Предлагаю подождать ответов от ТС:
- какого типа данных входящее
- какого типа данных результат
- что должно выйти из 7.5 или 12.5



Страницы: 1 вся ветка

Текущий архив: 2019.03.31;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.003 c
2-1477992273
Михалыч
2016-11-01 12:24
2019.03.31
Округление чисел


15-1477910892
K-1000
2016-10-31 13:48
2019.03.31
Конструкторы в record


2-1478697385
валя
2016-11-09 16:16
2019.03.31
Проблема с TImage