|
Página 1 de 1
|
A Partir De Números Escritos En Una Textarea, Imponer Valores
Autor |
Mensaje |
Oleguer
Usuario
Registrado: Diciembre 2011
Mensajes: 35
Edad: 31
|
A Partir De Números Escritos En Una Textarea, Imponer Valores
En una textarea tengo un seguido de numeros, uno encima del otro y quiero que sean variables para poder operar con estos valores.
Estoy haciendo un programa para resolver polinomios de hasta 7 grado, para ello, tengo que descomponer el ultimo término, normalmente el independiente, y hacer ruffini para probar si los valores divisibles del último término son o no x de posibles respuestas.
Jguardon ya me respondió como hacer los divisibles de el último numero para que quedaran escritos en una textarea así:
(en el caso del 9):
1
3
9
Ahora quiero que cada uno sea una variable: d1, d2, d3... (divisor1, divisor2,...)
Para eso creo que se tendria que hacer algo así:
DIM contingut AS String
DIM informacio_array AS string[]
contingut = TextArea1.Text
informacio_array = Split(contingut, "") 'no sé como especificar que cada valor esta escrito debajo del otro.
d1 = informacio_array[0]
d2 = informacio_array[1]
d3 = informacio_array[2]
d4 = informacio_array[3]
d5 = informacio_array[4]
d6 = informacio_array[5]
d7 = informacio_array[6]
d8 = informacio_array[7]
Otro error que me da es que si no existe un array[4], como por ejemplo en el caso del 9, se cuelga, como podria hacer que si no hay ningún array[] mas no haga nada?
Muchas gracias y perdonen otra vez mi ignorancia.
|
#1 Domingo, 04 Diciembre 2011, 13:45 |
|
|
codificador
Analista Programador
Registrado: Junio 2010
Mensajes: 420
Edad: 114 Ubicación:
|
Re: A Partir De Números Escritos En Una Textarea, Imponer Valores
la cantidad de elementos del array con ubound
sabiendo eso buscas la manera
de no usar elementos del array que no existen
tambien puede usar una variable como indice del array y un bucle para recorrer el array valor por valor
|
#2 Domingo, 04 Diciembre 2011, 17:14 |
|
|
Oleguer
Usuario
Registrado: Diciembre 2011
Mensajes: 35
Edad: 31
|
Re: A Partir De Números Escritos En Una Textarea, Imponer Valores
Muchas gracias, he encontrado la forma de dar su valor a cada numero, escribo el código por si hay alguien interesado:
Sigo teniendo el problema de que si no hay suficientes divisores para todas las variables, me da error.
Hay alguien que sepa como hacer para que si no hay numero no dé el error "Out of bounds"?
No entiendo mucho la función del ubound, gambas2 me dice que no lo identifica, esta función, daría el numero de array que hay?
Creo que lo suyo seria ver el numero de array que hay, y en función de eso le dices al programa que variables tienen un numero y cuales no se tienen que usar.
PUBLIC SUB Button1_Click()
TextArea1.Clear
trobadivisors(CInt(ValueBox8.Value))
END
PRIVATE FUNCTION trobadivisors(num AS Integer) AS Integer
DIM i AS Integer
DIM contingut AS String
DIM informacio_array AS string[]
FOR i = 1 TO num
IF num MOD i = 0 THEN
TextArea1.Text &= i & ",\n" 'tengo los divisores escritos en la textarea separados por una coma
ENDIF
NEXT
contingut = TextArea1.Text
informacio_array = Split(contingut, ",") 'separo el contenido dando un valor a cada variable (definidas antes como PRIVATE d1 AS String)
'aqui tendia que haber una especie de contador de array:
'numerodedivisores = "numero de"(Array[])
'y aqui pones IF numerodedivisores = 2 THEN
'd1 = informacio_array[0]
'd2 = informacio_array[1]
'endif
d1 = informacio_array[0]
d2 = informacio_array[1]
d3 = informacio_array[2]
d4 = informacio_array[3]
d5 = informacio_array[4]
d6 = informacio_array[5]
d7 = informacio_array[6]
d8 = informacio_array[7]
'IF ValueBox9.Value = ValueBox8.Value + (((((((ValueBox1.Value) * d1 + (ValueBox2.Value)) * d1 + (ValueBox3.Value)) * d1 + (ValueBox4.Value)) * d1 + (ValueBox5.Value)) * d1 + (ValueBox6.Value)) * d1 + (ValueBox7.Value)) * d1 THEN
'TextLabel4.Text = d1
'ENDIF
END
|
#3 Domingo, 04 Diciembre 2011, 19:19 |
|
|
codificador
Analista Programador
Registrado: Junio 2010
Mensajes: 420
Edad: 114 Ubicación:
|
Re: A Partir De Números Escritos En Una Textarea, Imponer Valores
No entiendo mucho la función del ubound, gambas2 me dice que no lo identifica, esta función, daría el numero de array que hay?
Creo que lo suyo seria ver el numero de array que hay, y en función de eso le dices al programa que variables tienen un numero y cuales no se tienen que usar.
[/code]
ups ubounds es de otro lenguaje
este código funciona
|
#4 Domingo, 04 Diciembre 2011, 20:06 |
|
|
Oleguer
Usuario
Registrado: Diciembre 2011
Mensajes: 35
Edad: 31
|
Re: A Partir De Números Escritos En Una Textarea, Imponer Valores
Muchas gracias por la aportación, problema resuelto.
|
#5 Domingo, 04 Diciembre 2011, 20:09 |
|
|
jguardon
Administrador
Registrado: Septiembre 2009
Mensajes: 2708
Edad: 57 Ubicación: Granada
|
Re: A Partir De Números Escritos En Una Textarea, Imponer Valores
Lo que no tiene mucho sentido es usar el TextArea como si fuera una variable. En el ejemplo inicial ( del otro hilo ) lo puse solo como control para mostrar los datos, que para eso es.
Dentro del bucle donde se calculan los divisores podemos ir añadiendo los valores a un array de Integers y luego operar con ese array. Te lo pongo para que quede más claro lo que quiero decir:
Ahora desde otro método o función ya puedes consultar el número de elementos en el array y actuar en consecuencia.
Básicamente es esto, pero depende de lo que realmente necesites hacer con los valores de los divisores.
Un consejo importante: No se usan los controles gráficos para guardar u operar con lo que muestran como si de una variable se tratase. Los controles son únicamente para la representación de datos y/o interacción con el usuario; para todo lo demás están las variables y sus tipos.
Saludos
=================== Jesús Guardón
Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".
"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
|
#6 Domingo, 04 Diciembre 2011, 21:49 |
|
|
Oleguer
Usuario
Registrado: Diciembre 2011
Mensajes: 35
Edad: 31
|
Re: A Partir De Números Escritos En Una Textarea, Imponer Valores
Muchas gracias por la aclaración, ahora lo veo mucho mas claro, también gracias por el consejo, es que hace poco que programo y aún no domino mucho, como habrás notado.
Saludos
|
#7 Domingo, 04 Diciembre 2011, 21:54 |
|
|
jguardon
Administrador
Registrado: Septiembre 2009
Mensajes: 2708
Edad: 57 Ubicación: Granada
|
Re: A Partir De Números Escritos En Una Textarea, Imponer Valores
No te preocupes. El que tiene ganas de aprender siempre será bienvenido. Veo que al menos intentas hacer las cosas por ti mismo y eso es importante. Es cuestión de tiempo que llegues a ser un buen programador si perseveras, así que pregunta cuando tengas dudas, estamos aquí para ayudarnos mutuamente.
Saludos
=================== Jesús Guardón
Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".
"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
|
#8 Domingo, 04 Diciembre 2011, 21:59 |
|
|
Oleguer
Usuario
Registrado: Diciembre 2011
Mensajes: 35
Edad: 31
|
Re: A Partir De Números Escritos En Una Textarea, Imponer Valores
Gracias por el apoyo
|
#9 Domingo, 04 Diciembre 2011, 22:01 |
|
|
|
Temas parecidos
Temas parecidos
|
Página 1 de 1
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
|
No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas No puede adjuntar archivos Puede descargar archivos No puede publicar eventos en el calendario
|
|
|
|
|