Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-03-2009
Iron Iron is offline
Miembro
 
Registrado: mar 2009
Posts: 16
Poder: 0
Iron Va por buen camino
También me vale, me interesa que me digais todas estas cosas porque así voy aprendiendo, Gracias!!!
Responder Con Cita
  #2  
Antiguo 28-03-2009
Iron Iron is offline
Miembro
 
Registrado: mar 2009
Posts: 16
Poder: 0
Iron Va por buen camino
He estado haciendo pruebas con RoundTo y hago algo mal:
El número es 123,456789
-si le pongo g:=RoundTo(f,-3):sale=123,45700073
-si le pongo -2):sale=123,45999964
-si le pongo -1):sale=123,5
-si le pongo 0):sale=123

También me pasa con una función mia:

Código Delphi [-]
procedure TInt_CC.ListBox9Click(Sender: TObject);
   var
    convertir:smallint;
   begin
    convertir:=Listbox9.ItemIndex + 1;
    Tipo_Inst_P_S:=Tipo_Inst(convertir);
end;
 
function Tipo_Inst(convertir:integer):single;
   begin
    if convertir=1 then Tipo_Inst:=1.732;
    if convertir=2 then Tipo_Inst:=2;
    if convertir=3 then Tipo_Inst:=1.732;
    if convertir=4 then Tipo_Inst:=1.732;
end;

Con esta función me devuelve 1,7319999933 en lugar de 1,732.

Gracias

Última edición por Iron fecha: 28-03-2009 a las 13:03:43. Razón: vista de código
Responder Con Cita
  #3  
Antiguo 28-03-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 20
rgstuamigo Va por buen camino
Lightbulb

Cita:
He estado haciendo pruebas con RoundTo y hago algo mal:
El número es 123,456789
-si le pongo g:=RoundTo(f,-3):sale=123,45700073
-si le pongo -2):sale=123,45999964
-si le pongo -1):sale=123,5
-si le pongo 0):sale=123
Pues yo lo he probado tambien y me sale todo bien por ejemplo:
RoundTo(123,456789,-3)=123,457 ok
RoundTo(123,456789,-2)=123,46 ok
RoundTo(123,456789,-1)=123,5 ok
RoundTo(123,456789,0)=123 ok
Probado en Delphi 7.
Me late que quisas estas haciendo algo mal.
Por que no pones tu codigo para que lo podamos ver.
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #4  
Antiguo 28-03-2009
Iron Iron is offline
Miembro
 
Registrado: mar 2009
Posts: 16
Poder: 0
Iron Va por buen camino
Mi código es este (también en Delphi 7):

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
f:single;
g:single;
begin
f:=123.456789;
g:=RoundTo(f,-2);
showmessage (floattostr(g));
end;

Estoy convencido que es fallo mio, pero no se donde.
Un saludo y gracias.
Responder Con Cita
  #5  
Antiguo 28-03-2009
jandok238 jandok238 is offline
No confirmado
 
Registrado: ago 2007
Ubicación: ¿ǝɯ dlǝɥ noʎ uɐɔ 'ʍouʞ ʇ,uop ı
Posts: 415
Poder: 0
jandok238 Va por buen camino
Cita:
Empezado por Iron Ver Mensaje
Mi código es este (también en Delphi 7)
[delphi] procedure TForm1.Button1Click(Sender: TObject);
var
f:single;
g:single;
begin
f:=123.456789;
g:=RoundTo(f,-2);
showmessage (floattostr(g));
end;


Estoy convencido que es fallo mio, pero no se donde.
Un saludo y gracias.
El detalle esta en el tipo de las variables...
declara las variables de tipo doble ...

Código Delphi [-]
  var        f,g : double;

salu2!!!!!!!
Responder Con Cita
  #6  
Antiguo 29-03-2009
Iron Iron is offline
Miembro
 
Registrado: mar 2009
Posts: 16
Poder: 0
Iron Va por buen camino
Correcto, eso era el fallo!!!, yo cuando me puse a definir las variables vi primero el rango de las mismas:
Single 1.5 x 10^-45 .. 3.4 x 10^38 7-8 4
Double 5.0 x 10^-324 .. 1.7 x 10^308 15-16 8

Pensaba que con single me valía!!!

Gracias
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Decimales eduardo360 Varios 1 19-02-2008 02:29:28
Decimales oregon Varios 1 26-10-2006 15:53:08
Decimales Luis Alberto Varios 1 19-05-2006 16:40:25
decimales jfontane Varios 2 24-06-2003 05:35:19
Decimales alexisns Conexión con bases de datos 2 22-06-2003 21:45:40


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


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