Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Alguna funcion para redondear?? (https://www.clubdelphi.com/foros/showthread.php?t=45370)

atapia 30-06-2007 08:15:44

Alguna funcion para redondear??
 
Disculpen,alguien sabe de alguna funcion q redonde una variable de tipo flotante a una cantidad de decimales deseada y cual es su formato???espero alguien sepa,me ahorraria una larga validacion.

Gregory Mazon 30-06-2007 08:37:04

Intenta con la fusion RoundTo, debes de incluir la unidad Math

Spynosa 30-06-2007 14:34:08

Código Delphi [-]
function Redondear(Numero:real; Decimales:integer):real;
var signo : integer;
begin
  if Numero>=0 then
    signo:= 1
  else
    signo:= -1;
  if Decimales <>0 then
    Result:= signo * Trunc((Abs(Numero)*Power(10,Decimales)) + 0.5) / Power(10,Decimales)
  else
    Result:= signo * Trunc((Abs(Numero)+ 0.5));
end;
Igualmente tienes que usar la unit Math

gabrielkc 30-06-2007 18:58:58

Saludos
 
si es para mostrarla puedes usar:

Format('%f',[variable_float]);////2 decimales por default

Format('%.nf',[variable_float]);////n decimales


Solo asegurate que si es un valor con punto flotante, si tienes un entero te marca error, por seguridad yo siempre multiplico por 1.0:

Format('%f',[variable_float*1.0]);

PD:

dicha funcion te devuelve un string.

Perdon, no leí bien tu pregunta, luego de que la analice caí en cuenta de lo que querias.
Igual dejo la respuesta por si a alguien le sirve


La franja horaria es GMT +2. Ahora son las 05:32:05.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi