Вниз
Скачать: CL | DM;

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

← →
bablja ©   (2006-11-27 12:36) [0]

Уважаемые , подскажите как округлить число до нужного разряда?
заранее благодарю


← →
alex810 ©   (2006-11-27 12:37) [1]

Может это поможет
function RoundStr(Zn: Real; kol_zn: Integer): Real;
var
 snl, s, s0, s1, s2: string;
 n, n1: Real;
 nn, i: Integer;
begin
 s := FloatToStr(Zn);
 if (Pos(",", s) > 0) and (Zn > 0) and
 (Length(Copy(s, Pos(",", s) + 1, length(s))) > kol_zn) then
 begin
   s0 := Copy(s, 1, Pos(",", s) + kol_zn - 1);
   s1 := Copy(s, 1, Pos(",", s) + kol_zn + 2);
   s2 := Copy(s1, Pos(",", s1) + kol_zn, Length(s1));
   n := StrToInt(s2) / 100;
   nn := Round(n);
   if nn >= 10 then
   begin
     snl := "0,";
     for i := 1 to kol_zn - 1 do
       snl := snl + "0";
     snl := snl + "1";
     n1 := StrToFloat(Copy(s, 1, Pos(",", s) + kol_zn)) + StrToFloat(snl);
     s := FloatToStr(n1);
     if Pos(",", s) > 0 then
       s1 := Copy(s, 1, Pos(",", s) + kol_zn);
   end
   else
     s1 := s0 + IntToStr(nn);
   if s1[Length(s1)] = "," then
     s1 := s1 + "0";
   Result := StrToFloat(s1);
 end
 else
   Result := Zn;
end;



или

function RoundEx(X: Double; Precision: Integer ): Double;
{
Precision :
1 - до целых
10 - до десятых
100 - до сотых
...
}
var
 ScaledFractPart, Temp: Double;
begin
 ScaledFractPart := Frac(X) * Precision;
 Temp := Frac(ScaledFractPart);
 ScaledFractPart := Int(ScaledFractPart);
 if Temp >= 0.5 then
   ScaledFractPart := ScaledFractPart + 1;
 if Temp <= -0.5 then
   ScaledFractPart := ScaledFractPart - 1;
 RoundEx := Int(X) + ScaledFractPart / Precision;
end;


← →
Sam Stone ©   (2006-11-27 12:38) [2]

RoundTo(). Лежит, кажется, в Math.


← →
Krants   (2006-11-27 15:26) [3]

r:=1000; //разряд
...
round(a*r)/r


← →
DrPass ©   (2006-11-27 15:47) [4]


> alex810 ©   (27.11.06 12:37) [1]
> Может это поможет

Вряд ли...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.033 c
2-1164786610
Creative
2006-11-29 10:50
2006.12.17
обработка VK_ARROWS


2-1164726603
PitTong
2006-11-28 18:10
2006.12.17
Текстовый редактор


15-1164285460
Vera
2006-11-23 15:37
2006.12.17
Программа


1-1161620565
*Ray*
2006-10-23 20:22
2006.12.17
Колесико мыши в DBGrid


2-1164620687
Werka
2006-11-27 12:44
2006.12.17
Как рассортировать?




   Наверх