Título: como tomar la parte de un numero de dos digitos Publicado por: luis456 en 10 Febrero 2020, 18:35 pm Hola a Todos
Despues de algun tiempo he vuelto a este vicio de programar jeje pero ando muy quemado ;( lo que quiero hacer es que a un número de dos dígitos tomar solo uno de ellos : explico tengo unos texbox donde introdusco estos numeros: Código
se supone que de ahi va para la función que paso por estos números etc etc .lo que quiero es modificar que si pongo por ejemplo el numero 20 pueda solo tomar el de la derecha o sea el 0 o viceversa ,esto lo envio a una variable l: Código
He probado en propiedades del texbox pero no es lo que quiero ,quiero es fracionar el numero sea al derecho o la isquierda saludos Luis Título: Re: como tomar la parte de un numero de dos digitos Publicado por: EdePC en 11 Febrero 2020, 00:30 am Saludos,
- Jeje acabo de descargarme el Visual Basic Express 2005 para hacer la prueba XD: http://go.microsoft.com/fwlink/?linkid=57033 - Lo cierto es que lo más habitual es ver que usan aritmética sencilla para obtener rangos numéricos si se están trabajando números, por ejemplo si tengo el número 32 y quiero el 2, pues le saco el módulo (resto) de 10: 2 = 32 % 10 - Si quiero el 3, divido el 32 entre 10 y le substraigo el módulo 3 = 32 / 10 - ( ( 32 % 10 ) / 10 ) -- Puedes ahorrarte la resta y simplemente dividir si conviertes el resultado a Entero Código
- Otra opción es usar las funciones predefinidas para tratar texto, en este caso Substring: Código
Título: Re: como tomar la parte de un numero de dos digitos Publicado por: **Aincrad** en 11 Febrero 2020, 21:48 pm Facilmente Conviertes el texto del Textbox a un Char Array y lo recorres con un For .
1) El textbox solo tendrá números de 2 dígitos? , si contiene mas de 2 dijitos entoces le metes un IF comprobando el ARRAY.COUNT. te pongo un Ejemplo : Código
Bueno esto seria un solución rapida, como especificaste Te separa los dos números . Ej : Con el numero 32 te deja ; Código: NumerodeIzquierda = 3 Recuerda que esto es en caso de que el numero sea solo de 2 dígitos, bueno aunque si modificas un toke lo ajustas a tus necesidades. Mi Forma de Hacer Fácilmente lo que pides seria esta: Código
en este caso es casi lo mismo que te puso el Compañero @EdePC . la diferencia es que ahi el esta tomando el numero en modo de rango (yo lo usaria para una gran cantidad de digitos ) : Código: txtDer.Text = txtNum.Text.Substring(1, 1) Para aplicarlo a tan solo 2 dígitos solo tomo el numero por posición como te mostré anteriormente. No mames @EdePC , Ahora le entras a vb.net . (https://i.ibb.co/D5bW1zv/descarga-4.jpg) Título: Re: como tomar la parte de un numero de dos digitos Publicado por: luis456 en 12 Febrero 2020, 13:32 pm Gracias a los dos por sus aporte ,probare los metodos,pero claro programo por ahora lo fines de semana,ya que trabajo fuera de casa toda la semana y este portatil no tira bien jeje y para programar no vale
Ya os contare como fue cuando llegue a casa Saludos Luis Título: Re: como tomar la parte de un numero de dos digitos Publicado por: EdePC en 12 Febrero 2020, 16:19 pm ... y este portatil no tira bien jeje ... - Por eso me descargué la versión 2005 XD. Al cabo es para hacer cositas sencillitas. Título: Re: como tomar la parte de un numero de dos digitos Publicado por: Serapis en 12 Febrero 2020, 17:36 pm Veamos de entrada si tienes una cifra de 0 a 99, es decir de dos cifras, basta con usar un tipo de datos byte.
Segundo, obtener cualquier dígito de un número es algo trivial, ya son matemáticas de niños de 10 años. La función módulo (resto de una división) en un valor decimal pué sse queda con la última cifra dle valor: 123 modulo 10 = 3 para quedarse con la cifra del medio. Primero hay que saber si queremos acceder a ella solo tras haber tomado el las unidades o directamente. - Si ya hemos tomado las unidades, para tomar las decenas, recurridmoa las matemáticas, haciendo una división que se quede solo con la parte entera: 123 / 10 = 12'3 la parte entera en 12, que en programación (VB) puede hacerse con 123 \ 10 = 12 ahora como el 2 son las unidades, procedes igual que antes... etc, etc... sea cual sea el número. Las divisiones y módulos son operaciones muy rápidas, así que no convierta a string un número salvo que luego tengas hacer otras cosas de tipo string con ello... Si directamente el dato es un string (caso del vaslor procedente de un control de texto, por ejemplo), puedes acceder direcamente al carácter en una posición dada, mediante alguno de los métodos que provee la clase string, o los métodos heredados de antiguas versiones de Basic, como son Left, Mid y Right, que admeás te permiten tomar más de un carácter a la vez. Sé eficiente, pensando en si toda la operación es de cadenas o de números. No alternes alegremente entre uno y otro caso contínuamente a la hora de resolver problemas, acaba en ineficiencia... Título: Re: como tomar la parte de un numero de dos digitos Publicado por: luis456 en 13 Febrero 2020, 13:23 pm Bueno mientras espero el fin de semana a llegar a casa y pensando en esto ::)
se me ocurre que ya que tengo lo del los tex echo ,es trabajar en la variable : explico Código
Num1 es la variable que trae los numeros ,mi idea es antes de pasarlo por esta funcion que venga ya con el numero unico ,me imagino que lo podria hacer con la funcion de estraer ?? Substring(1, 1) por ejemplo saludos Luis Título: Re: como tomar la parte de un numero de dos digitos Publicado por: luis456 en 15 Febrero 2020, 16:55 pm Bueno chicos he resuelto mi problema de la forma mas fácil :
Código
Gracias a todos por vuestro aporte :) hasta la siguiente ves Luis |