elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  duda con calculos en vb y porcentaje
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: duda con calculos en vb y porcentaje  (Leído 10,052 veces)
Tengu


Desconectado Desconectado

Mensajes: 330


2+1 = 1 , despues de todo , tdo es relativo


Ver Perfil WWW
duda con calculos en vb y porcentaje
« en: 18 Mayo 2009, 21:56 pm »

hola a todos.., tengo una duda de calculo en vb,...

resulta que estoy desarrollando una aplicacion y me faltaria la forma de sacar el porcentaje de parecido de un numero a otro. es decir:


supongamos que tengo un numero "marcador" que puede ser un numero entero desde  cero (incluido) en adelante.
el cual llamaremos "A"

Y como regla repetitiva el programa generaria numeros al azar (tambien 0 o positivos enteros) , y a este valor lo llamaremos "B"


entonces como hariamos para saber en Porcentaje del acercamiento de este numero B  a mi marcador A ????


si alguien tiene un razonamiento logico , funcional que pueda llevarse a vb, se los agradezco.. xk yo ya me enrede jaj. y a veces cuando miras tanto una cosa terminas por no ver absolutamente nada..


Gracias





En línea


Encuentros por Video y Chat !!
Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: duda con calculos en vb y porcentaje
« Respuesta #1 en: 18 Mayo 2009, 22:31 pm »

Porcentaje de acercamiento?

Que pretendes obtener teniendo solo dos números?...

Puedes saber cuantas veces A es mas grande que B o viceversa..

Pero no entiendo que es el porcentaje que quieres...

 :-\
Citar
(A/B)*100


En línea

Tengu


Desconectado Desconectado

Mensajes: 330


2+1 = 1 , despues de todo , tdo es relativo


Ver Perfil WWW
Re: duda con calculos en vb y porcentaje
« Respuesta #2 en: 18 Mayo 2009, 22:42 pm »

mira, el temas es asi.

A se genera al cargarce la aplicacion(o sea que yo no conozco el valor)

y B se genera despues aleatoriamente

Suponiendo que A= 18

entonces... lo que quisiera saber es si B fuera (19) como podria yo saber si estoy cerca y como podria adaptarlos datos para mostrarlos a modo de porcentaje. por ejemplo si


A=18 y b = 19 => los numeros se parecen en un %v 99.999  ya que A es casi = a B...


Seria algo como calcular la distancia entre dos puntes en la ordenada X y cada vez que B este mas cerca de A entonces estara siendo mas parecido, hasta llegar a ocupar el mismo punto cunado A = B.


Se entiende??
Es que toy complicado para explicarlo...   :P
En línea


Encuentros por Video y Chat !!
Tengu


Desconectado Desconectado

Mensajes: 330


2+1 = 1 , despues de todo , tdo es relativo


Ver Perfil WWW
Re: duda con calculos en vb y porcentaje
« Respuesta #3 en: 18 Mayo 2009, 23:02 pm »

Dim a As String
Dim b As String
Dim distanciaayb As String
Private Sub Command1_Click()
If a < b Then
distanciaayb = Val(b) - Val(a)
Else
distanciaayb = Val(a) - Val(b)
End If
MsgBox distanciaayb
End Sub


 de esta manera sale la distancia ente A y B  pero como puedo aumentar el porcentaje proporcianolmente a medida que la distancia disminuye hasta llegar a distancia CERO porcentaje CIEN ???
En línea


Encuentros por Video y Chat !!
BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: duda con calculos en vb y porcentaje
« Respuesta #4 en: 18 Mayo 2009, 23:10 pm »

NO SE SI LE ATINE O NO PERO AUN ASI TE DIGO LO QUE TE ENTIENDO

supongamos que se genero un numero en "X" y uno "Y"

rectifico cual es el mayor y con base a esto lo mando a una funcion donde el mayor el es 100% y el menor es una parte de ese porcentaje

es decir

A=19
B=50

por decir algo

Código
  1. Private Sub Form_Load()
  2. 'juega con estos valores
  3. a = 50
  4. b = 49
  5. 'Fin valores
  6. If a > b Then
  7. res = Porcentaje(a, b)
  8. ElseIf b > a Then
  9. res = Porcentaje(b, a)
  10. Else
  11. res = 100
  12. End If
  13. MsgBox res
  14. End Sub
  15. Function Porcentaje(ByVal ValMax As Integer, ByVal valMin As Integer) As Long
  16.     Porcentaje = (valMin * 100) / ValMax
  17. End Function
  18.  


Edito-------------------------


Código
  1. Option Explicit
  2. Private Sub Form_Load()
  3. Dim a As Integer
  4. Dim b As Integer
  5. Dim res As String
  6. a = 19
  7. b = 50
  8. res = IIf(a > b, Porcentaje(a, b), IIf(b > a, Porcentaje(b, a), 100))
  9. MsgBox res
  10. End Sub
  11. Function Porcentaje(ByVal ValMax As Integer, ByVal valMin As Integer) As Long
  12.     Porcentaje = (valMin * 100) / ValMax
  13. End Function
  14.  
« Última modificación: 18 Mayo 2009, 23:17 pm por ░▒▓BlackZeroҖ▓▒░ » En línea

The Dark Shadow is my passion.
Tengu


Desconectado Desconectado

Mensajes: 330


2+1 = 1 , despues de todo , tdo es relativo


Ver Perfil WWW
Re: duda con calculos en vb y porcentaje
« Respuesta #5 en: 18 Mayo 2009, 23:42 pm »

sisi, es eso lo que busco, aunk tu code tiene un pekeño fallo

ya que cuando

A= 19
B = 1

daun resultado de "5", siende que la distancia entre A y B = 18, y en iguales condiciones cuando

A=19
B = 37 .............  Distancia tambien es 18

pero arroja un resultado de 51 el cual es diferente y no confitrma la formula.

Pero igualmente me ayudo a razonar y lo solucione de una manera un pco sucia y chapucera pero solucion al fin. Dios bendiga a nuestro amado IF

Código:
Private Sub Form_Load()
a = "18"
b = "6"
End Sub


Private Sub Command1_Click()
If Not a < b Then
distanciaayb = Val(a) - Val(b)
Else
distanciaayb = Val(b) - Val(a)
End If

MsgBox distanciaayb

If distanciaayb < 100 Then

If Not distanciaayb = "0" Then
Porcentaje = Val("100") - Val(distanciaayb)
Else
Porcentaje = "0"
End If

MsgBox "porcentaje   %  " + Porcentaje
Else
MsgBox "la Distancia es muy Grande .,el resultado no es alentador"
End If
 
End Sub


aunk  se puede mejorar pero lalogica ya esta plsmada.


Muchas Gracias.!!!
En línea


Encuentros por Video y Chat !!
BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: duda con calculos en vb y porcentaje
« Respuesta #6 en: 18 Mayo 2009, 23:53 pm »

no hay fallo en el trozo que plasme en si lo que hice fue tomar en consideración de 0 a X siendo 0 = 0% y X = 100% jamas tome diferencial alguno

graficamente hablando tome como referencia el Numero mayor como 100% y el numero cero como 0% entonces


0------------------18
0------------------------------------------------------------100

= 18% casi igual y de diferencia solo se restaria ese 18% el 100% que seria 82% pero da igual no es lo que pedias...!¡


A=19
B=1

1= 5% de 19 por ende es 5% igual de 19 y 95% diferente

P.D.: creo que deberias tranajar con regla de 3 en lugar de siempre esperar un numero menor a 100,

Si el la diferencia de A y B = 100 dice que es un numero grande?...¡!

Saludos, Dulces Lunas
« Última modificación: 19 Mayo 2009, 00:00 am por ░▒▓BlackZeroҖ▓▒░ » En línea

The Dark Shadow is my passion.
Tengu


Desconectado Desconectado

Mensajes: 330


2+1 = 1 , despues de todo , tdo es relativo


Ver Perfil WWW
Re: duda con calculos en vb y porcentaje
« Respuesta #7 en: 19 Mayo 2009, 00:26 am »

exacto. es que para mi proyecto una diferencia entre punto y punto que supere los 60 es gigante y ya no sirve , y en una regla de tres


a............................100 %
b............................X %

no funcionaria pues los numeros se generan aleatoriamente y supongamos que


A = 18

si B fuera 75 , seria inaceptable para mi proyecto que fuera un % 416.66  se mejante.

xk por logica si es un % 100 significa que a = B . entonces la regla de tres simple es inaceptable

y ni hablemos Si A = 0 xk hay seria un % 75.000 ja.


Gracias por toda tu coolaboracion Saludos Buenas noches
En línea


Encuentros por Video y Chat !!
‭‭‭‭jackl007


Desconectado Desconectado

Mensajes: 1.403


[UserRPL]


Ver Perfil WWW
Re: duda con calculos en vb y porcentaje
« Respuesta #8 en: 19 Mayo 2009, 04:03 am »

El codigo seria asi:
Código
  1. Dim A, B As Integer
  2.  
  3. A = 15 'Nmero al azar
  4. B = 12 'Numero con el que se compara
  5. 'Tienes dos puntos y quieres saber que tanto se parecen los valores de los mismos: A, B; asi que comparamos A con respecto a B
  6.  
  7. MsgBox Str((A * 100) / B) & "%"
  8. 'El resultado es 125%, y tiene logica, pues el numero 15 se aleja de 12, es como aumentar o disminuir un zoom
  9. ' a un documento PDF (salvo que aqui es inverso)
  10. 'Si el numero A fuese menor que B, entonces da el porcentaja de aproximacion o acercamiento (que tanto se parece A a B)
  11.  
  12.  

Por cierto si vas a hacer esto:
Código:
If Not A < B Then
distanciaayb = Val(A) - Val(B)
Else
distanciaayb = Val(B) - Val(A)
End If

Para eso existe la funcion ABS: Valor absoluto
Código
  1. distanciaayb =  Abs(A - B)


Explica un poco más del problema, a lo mejor lo correcto es otra cosa...

« Última modificación: 19 Mayo 2009, 04:05 am por jackl007 ツ » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cálculos Java, mi primner ejemplo
Java
Meta 2 5,808 Último mensaje 9 Febrero 2011, 02:10 am
por Meta
Porcentaje de usuarios por país?
Foro Libre
Aikanáro Anário 0 1,764 Último mensaje 27 Mayo 2011, 00:18 am
por Aikanáro Anário
[BATCH] ¿Hacer calculos sexadecimales?
Scripting
Meine programmen 3 2,596 Último mensaje 3 Junio 2012, 06:14 am
por BatchianoISpyxolo
un if con cálculos múltiples[BATCH]
Scripting
trolleoatodos 4 3,335 Último mensaje 21 Agosto 2013, 14:14 pm
por trolleoatodos
Duda con el uso de porcentaje
Java
arts 2 1,864 Último mensaje 3 Enero 2014, 01:56 am
por arts
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines