Club Delphi  
    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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-04-2009
luis vazquez luis vazquez is offline
Miembro
 
Registrado: oct 2007
Posts: 53
Poder: 17
luis vazquez Va por buen camino
Unhappy Extraer Decimales De Un Numero

Buenas tengo una duda como puedo extraer los decimales de un numero, o simplemente como extraeer los dos unltimos caracteres de una string, tengo instalado delphis 6, trate con ansisrightstr pero no reconoce la funcion se que algo estoy asiendo mal pero ni idea de que es, si alquien puede iluminarme el camino se lo agradeceria, por favor con un ejemplo, gracias.

Última edición por dec fecha: 07-04-2009 a las 15:28:39.
Responder Con Cita
  #2  
Antiguo 07-04-2009
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola, para extraer los decimales de un número puedes utilizar la función Frac

Código Delphi [-]
 decimales := Frac(45.87);

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #3  
Antiguo 07-04-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola luis vazquez,
La respuesta de caro es correcta, siempre y cuando conviertas el numero string a real.

Ahora bien, si el número lo tienes en string y lo que deseas es obtener los decimales en formato string puedes hacer uso de RightStr(). Esta función devuelve pertenece a la unidad StrUtils (disponible desde D6). La otra opción es emplear Copy() para copiar los 2, 3 o la cantidad de caracteres que representan a los decimales.

Revisa la ayuda sobre el uso de RightStr().

Saludos,
PD: Mi inglés me está fallando, no se si es RigthStr() o RightStr()
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #4  
Antiguo 07-04-2009
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola, si quieres obtener los ultimos caracteres de una cadena puedes utilizar RightStr.

Código Delphi [-]
  Cad := RightStr(TuCadena, 2);

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #5  
Antiguo 07-04-2009
Cheerpipe Cheerpipe is offline
Miembro
 
Registrado: oct 2006
Posts: 46
Poder: 0
Cheerpipe Va por buen camino
y si los decimales son variables puedes usar



Código Delphi [-]
function extraerDecimalString(SeparadorDecimal: String; Texto: String): String;
var
  l: integer;
begin
  result:=RightStr(Texto,lenght(l)-pos(SeparadorDecimal,Texto));
end;
Responder Con Cita
  #6  
Antiguo 07-04-2009
luis vazquez luis vazquez is offline
Miembro
 
Registrado: oct 2007
Posts: 53
Poder: 17
luis vazquez Va por buen camino
Unhappy gracias por sus respuestas pero.....

trate de usar el rightstr pero me dice que no esta declarado y la verdad no se como declarar la funcion, trate de hacerlo antes del begin del procedure en unboton pero me da todo en blancon, no regresa nada.

procedure TForm1.Button1Click(Sender: TObject);

function RightStr(const AText: string; ACount: Integer): string;
begin
end;// si no pongo el begin y el end me genera error.

begin

label1.caption:=RightStr('Programmer', 7);

end;

la verdad ando mas enrredado que perro con 3 colas, agradeceria una respuesta, nunca he usado funciones y se que es cencillo pero no entiendo como declararlas

gracias por su prontas respuestas especialmente a caro
Responder Con Cita
  #7  
Antiguo 07-04-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola luis vazquez,
No hay declarar la función. La función ya fue declarada y pertenece a la unidad StrUtils, como lo he expresado unos post antes.

Intuyo que el error que te da se debe a que no declaraste en uses la unidad correspondiente.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #8  
Antiguo 08-04-2009
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola, el error es porque debes añadir en uses la unidad StrUtils como te ha indicado Delphius.

Código Delphi [-]
uses
  Windows, Messages, ............., Dialogs, StrUtils;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #9  
Antiguo 15-04-2009
luis vazquez luis vazquez is offline
Miembro
 
Registrado: oct 2007
Posts: 53
Poder: 17
luis vazquez Va por buen camino
Wink Gracias

Gracias Por Sus Concejos, Todo Funciono Bien Despues De Meter El Strutil En Su Lugar, Ya Termine El Programa Y Aprendi Nuevas Cosas Muchas Gracias Por Su Ayuda:d
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
Número con decimales blueicaro OOP 5 01-11-2007 11:16:40
Extraer un numero de un sttring?? danytorres Varios 2 09-08-2006 15:43:47
Numero con dos decimales zvf OOP 9 07-04-2006 20:27:06
Numero decimales en un double satabel Impresión 1 23-07-2005 18:09:23
Número de decimales en Access javiermorales Conexión con bases de datos 1 15-09-2004 21:24:39


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


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
Copyright 1996-2007 Club Delphi