![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
|
Matemáticas: Calcular porcentaje
Hola amigos. Quiero saber un número que tanto porciento de otro es (ej. 25 es el 25% de 100), hasta ahora utilizo esto:
Código:
total.value * 100/ NumEnviar.value;
__________________
:) |
|
#2
|
|||
|
|||
|
Hola DarkByte
Todo depende de qué numero cojas como referencia. Es decir, no es lo mismo el % de A sobre B que el % de B sobre A. En tu ejemplo, 25 es el 25% de 100 si el valor base es 100, pero si es al rebés, que el valor base es el 25, resulta que 100 es el 400% de 25 ![]() Respecto al error que te da, seguramente será porque estas asignando el resultado de esa operación a una varable de tipo Integer, cuando el resultado de la operaicón / es un real. Cambia la definición de la variable o el operador (a div) |
|
#3
|
||||
|
||||
|
El ejemplo que me refiero es el del 25% y no el 400 %
,el programa tiene que calcular el número de veces que se ha acertado la respuesta, adjunto algo del código:eTotal = Edit : Contiene todas las preguntas formuladas Veces1 = VrNum (Un componente que encontré que solo contiene números) = contiene las preguntas acertadas Código:
var Total : integer; Porciento : integer; begin ...... Total := strtoint(eTotal.Text); ...... Porciento := Veces1.value*100/Total; Porcentaje.Caption := inttostr (Porciento)+"%";
__________________
:) |
|
#4
|
|||
|
|||
|
Pues como veo, estás utilizando variables de tipo Integer, así que te remito a mi respuesta anterior
![]() Cita:
|
|
#5
|
||||
|
||||
|
Y cómo lo cambio a div?? me podrías arreglar el código??
__________________
:) |
|
#6
|
|||
|
|||
|
Cita:
Tan sencillo como esto: Código:
var Total : integer; Porciento : integer; begin ...... Total := strtoint(eTotal.Text); ...... Porciento := Trunc(Veces1.value) * 100 div Total; Porcentaje.Caption := inttostr (Porciento)+"%"; |
|
#7
|
||||
|
||||
Lo de div no sabía exactamente lo que era, no pensé que se sustituyese por /. ¡¡¡MUCHAS ASHIAS!!!
__________________
:) |
|
#8
|
||||
|
||||
|
Solamente aclarar que Div se utiliza para dividir enteros, no es lo mismo que / que se utiliza para enteros o reales aunque el resultado es real .
Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
|
#9
|
||||
|
||||
|
Gracias por la aclaración, hoy me acuesto sabiendo algo más
.
__________________
:) |
|
#10
|
|||
|
|||
|
hola a todos los delphiano
Segun entiendo DarkByte lo que deseas saber , si el tiene 2 valores el resultado final y el inicial cual es porcentaje.. si es asi entonces la operacion es la siguete. 80/500 = 0.16 si lo lleva a porciento entonces : 0.16 * 100 = 16 espero haber ayudado... suerte... --[Dar es mejor que recibir]-- |
![]() |
|
|
|