| 
	
		|  Autor | Tema: Como puedo saber los números que faltan dentro del rango ?   (Leído 16,032 veces) |  
	| 
			| 
					
						| Legnak 
								
								 Desconectado 
								Mensajes: 61
								
								 
								("Programador");
								
								
								
								
								
								   | 
 
como aun no estoy muy familiarizado con tu sintaxis lo hare a mi manera (espero se entienda xD)     Dim arregloSumas() As Integer = {10, 15, 20, 25, 30}    Dim numerosFaltantesdelRango() As Integer = {}    Dim rango_min As Integer = 0, rango_max As Integer = 99    Dim tamanio As Integer    Dim val As Integer 	For i = rango_min To rango_max        val = i        If Array.Exists(arregloSumas, Function(value As Integer) value = val) = False Then 'Compruebo si el valor de i no aparece en el arreglo de las sumas            tamanio = numerosFaltantesdelRango.Length + 1            ReDim numerosFaltantesdelRango(tamanio)             numerosFaltantesdelRango(tamanio) = val 'Agrego el valor al arreglo        End If    Next    ListBox1.Items.AddRange(numerosFaltantesdelRango.Cast(Of Object).ToArray)
 
 |  
						| 
								|  |  
								| « Última modificación: 21 Enero 2014, 22:28 pm por Eleкtro » |  En línea | 
 
 |  |  |  | 
			| 
					
						| Eleкtro 
								Ex-Staff    Desconectado 
								Mensajes: 9.964
								
								   | 
 
Nada dos dias y nada no logro hacerlo funcionar   Porfavor, detalles!. 1. Que significa "no funciona", ¿te salta alguna excepción?. 2. Número de linea exacta en el que te salta la excepción junto al mensaje de error y el stacktrace. saludos! 
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| luis456 
								 
								
								 Desconectado 
								Mensajes: 551
								
								   | 
 
Porfavor, detalles!.
 1. Que significa "no funciona", ¿te salta alguna excepción?.
 
 2. Número de linea exacta en el que te salta la excepción junto al mensaje de error y el stacktrace.
 
 saludos!
 
 Me salta esto " error de sobrecarga porque ninguna seleccion selet se puede llamar a las que se tiene acceso se puede llamar con estos argumentos "  ' primero concatenas y eliminas duplicados en el primer array:Dim Result11 As IEnumerable(Of Integer) =
 (Result1.Concat(Result3).Concat(Result3).
 Distinct).ToArray
 
 ' luego instancias un segundo array que obtiene los números que no están dentro del rango 'Xmin'-'Xmax' del primer array:
 Dim NumbersNotInRange As Integer() =
 GetNumbersNotInRange(Result11, Xmin, XMax).ToArray
 
 ' Y por último reemplazas los números que no están en el rango, en el primer array:
 Result11 =Result11.Select(Function(Value As Integer)
 ReadOnly If(Value < MAX, Value, Rand.Next(0, MAX))  <-----error de sobrecarga porque ninguna seleccion selet se puede llamar a las que se tiene acceso se puede llamar
 con estos argumentos
 End Function))
 
 
 ' y los añades a los listbox:
 ListBox1.Items.AddRange(Result11.Cast(Of Object).ToArray)
 ListBox2.Items.AddRange(NumbersNotInRange.Cast(Of Object).ToArray)
 
 
Luis |  
						| 
								|  |  
								|  |  En línea | 
 
 Que tu sabiduria no sea motivo de Humillacion para los demas |  |  |  | 
			| 
					
						| Eleкtro 
								Ex-Staff    Desconectado 
								Mensajes: 9.964
								
								   | 
 
El código de arriba lo escribí al vuelo, no me di cuenta de un fallo muy grande, en lugar de un Return le puse ReadOnly xD, déjalo asi: Result11 = Result11.Select(Function(Value As Integer) If(Value < MAX, Value, Rand.Next(0, MAX)))
 Y por cierto, esto tal vez quieras revisarlo...: (Result1.Concat(Result3).Concat(Result3)
(concatenas dos veces Result3). Saludos |  
						| 
								|  |  
								| « Última modificación: 22 Enero 2014, 14:24 pm por Eleкtro » |  En línea | 
 
 |  |  |  | 
			| 
					
						| luis456 
								 
								
								 Desconectado 
								Mensajes: 551
								
								   | 
 
El código de arriba lo escribí al vuelo, no me di cuenta de un fallo muy grande, en lugar de un Return le puse ReadOnly xD, déjalo asi: Result11 = Result11.Select(Function(Value As Integer) If(Value < MAX, Value, Rand.Next(0, MAX)))
 Y por cierto, esto tal vez quieras revisarlo...: (concatenas dos veces Result3). SaludosSi elektro lo pille tarde cuando puse el post    las putas prisas y la presbicia de mis ojos me juegan malas pasadas jejej.ahora pruebo de nuevo a ver Gracias Luis |  
						| 
								|  |  
								|  |  En línea | 
 
 Que tu sabiduria no sea motivo de Humillacion para los demas |  |  |  | 
			| 
					
						| luis456 
								 
								
								 Desconectado 
								Mensajes: 551
								
								   | 
 
seguimos   error de resolucion de sobre carga pongo codigo entero   Public Class Form1
 Dim XMax As Short = 99
 Dim Xmin As Short = 0
 Dim x As Integer = 0
 Dim Número As Double
 Private TextBoxes As TextBox() = {Nothing}
 Private Result1 As Int32(), Result2 As Int32(), Result3 As Int32()
 Private _textBox As Object
 Private _getNumbersNotInRange As Object
 
 Private Property ListBox1Count As Integer
 ReadOnly MAX As Integer = 99
 Private Property Calcular As Object
 
 Private Property TextBox(ByVal TextBoxCount As Short) As Object
 Get
 Return _textBox
 End Get
 Set(ByVal value As Object)
 _textBox = value
 End Set
 End Property
 
 
 ReadOnly Property Num1 As Int32
 Get
 Return CInt(TextBox1.Text)
 End Get
 End Property
 
 ReadOnly Property Num2 As Int32
 Get
 Return CInt(TextBox2.Text)
 End Get
 End Property
 ReadOnly Property Num3 As Int32
 Get
 Return CInt(TextBox3.Text)
 End Get
 End Property
 
 Private Property GetNumbersNotInRange(ByVal Result11 As IEnumerable(Of Integer), ByVal Xmin As Integer, ByVal XMax As Integer) As Object
 Get
 Return _getNumbersNotInRange
 End Get
 Set(ByVal value As Object)
 _getNumbersNotInRange = value
 End Set
 End Property
 
 
 Private Sub Sumar(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
 
 
 
 Result1 = {Num1 + 10, Num1 + 20, Num1 + 30} _
 .Distinct().ToArray ' Elimino duplicados
 
 Result2 = {Num2 + 10, Num2 + 20, Num2 + 30} _
 .Distinct().ToArray ' Elimino duplicados
 
 Result3 = {Num3 + 10, Num3 + 20, Num3 + 30} _
 .Distinct().ToArray ' Elimino duplicados
 
 
 
 ' primero concatenas y eliminas duplicados en el primer array:
 Dim Result11 As IEnumerable(Of Integer) =
 (Result1.Concat(Result2).Concat(Result3).
 Distinct)
 
 ' luego instancias un segundo array que obtiene los números que no están dentro del rango 'Xmin'-'Xmax' del primer array:
 Dim NumbersNotInRange As Integer() =
 GetNumbersNotInRange(Result11, Xmin, XMax).ToArray
 
 ' Y por último reemplazas los números que no están en el rango, en el primer array:
 Result11 = Result11.Select(Function(Value As Integer) If(Value < MAX, Value, Rand.Next(0, MAX))) <----------------------aca
 
 
 ' y los añades a los listbox:
 ListBox1.Items.AddRange(Result11.Cast(Of Object).ToArray)
 ListBox2.Items.AddRange(NumbersNotInRange.Cast(Of Object).ToArray)
 
 
 
 End Sub
 End Class
Luis |  
						| 
								|  |  
								| « Última modificación: 22 Enero 2014, 16:18 pm por luis456 » |  En línea | 
 
 Que tu sabiduria no sea motivo de Humillacion para los demas |  |  |  | 
			| 
					
						| Eleкtro 
								Ex-Staff    Desconectado 
								Mensajes: 9.964
								
								   | 
 
seguimos   error de resolucion de sobre carga pongo codigo entero Result11 = Result11.Select(Function(Value As Integer) If(Value < MAX, Value, Rand.Next(0, MAX))) <----------------------aca Veo que has marcado el error en la misma linea ...pero con la modificación que te puse arriba debería funcionar corréctamente. Esto que dijiste la verdad es que no me sirve de nada: error de resolucion de sobre carga Si puedes modifica el lenguaje de la IDE para mostrar el mensaje de error en Inglés, pero muestra el mensaje completo no como has hecho las dos veces anteriores xD, debes mostrar el tipo de excepción además de los detalles del error  y el número de linea donde te salta la excepción. saludos |  
						| 
								|  |  
								| « Última modificación: 22 Enero 2014, 16:42 pm por Eleкtro » |  En línea | 
 
 |  |  |  | 
			| 
					
						| luis456 
								 
								
								 Desconectado 
								Mensajes: 551
								
								   | 
 
Hola esto es lo que puedo copiar,me remarca todo el codigo que me diste   Result11 = Result11.Select(Function(Value As Integer) If(Value < MAX, Value, Rand.Next(0, MAX)))Error   2   Error de resolución de sobrecarga porque ninguna de las funciones 'Select' a las que se tiene acceso se puede llamar con estos argumentos:Método de extensión 'Public Function Select(Of TResult)(selector As System.Func(Of Integer, Integer, TResult)) As System.Collections.Generic.IEnumerable(Of TResult)' definido en 'System.Linq.Enumerable': La función anidada no tiene una firma compatible con el delegado 'System.Func(Of Integer, Integer, TResult)'.
 Método de extensión 'Public Function Select(Of TResult)(selector As System.Func(Of Integer, Integer, TResult)) As System.Collections.Generic.IEnumerable(Of TResult)' definido en 'System.Linq.Enumerable': Los tipos de datos de los parámetros de tipo no se pueden inferir de estos argumentos. Este error se puede resolver especificando los tipos de datos explícitamente.
 Método de extensión 'Public Function Select(Of TResult)(selector As System.Func(Of Integer, TResult)) As System.Collections.Generic.IEnumerable(Of TResult)' definido en 'System.Linq.Enumerable': 'Rand' no está declarado. Puede que esté inaccesible debido a su nivel de protección.
 Método de extensión 'Public Function Select(Of TResult)(selector As System.Func(Of Integer, TResult)) As System.Collections.Generic.IEnumerable(Of TResult)' definido en 'System.Linq.Enumerable': Los tipos de datos de los parámetros de tipo no se pueden inferir de estos argumentos. Este error se puede resolver especificando los tipos de datos explícitamente.   C:\Users\Acuario\documents\visual studio 2010\Projects\Preueba\Preueba\Form1.vb   78   20   Preueba
 
 Luis |  
						| 
								|  |  
								|  |  En línea | 
 
 Que tu sabiduria no sea motivo de Humillacion para los demas |  |  |  | 
			| 
					
						| Eleкtro 
								Ex-Staff    Desconectado 
								Mensajes: 9.964
								
								   | 
 
A simple vista, no hay nada erroneo en la instrucción. comprueba si la linea que me has mostrado es la misma que hace referencia a esta: Comprueba que todos los valores que usas en el método de LINQ seán Integers, no longs no shorts no otra cosa, y prueba así, sin especificar el datatype de retorno:  Result11 = Result11.Select(Function(Value) If(Value < MAX, Value, Rand.Next(0, MAX)))
 De todas formas aún sigo esperando a que des un  maldito detalle sobre el tipo de excepción de la que se trata, si en tiempo de ejecución o un error de compilación, aunque está claro que es de compilación pero bueno... para la próxima vez. PD: Siempre puedes ponerle un par de breakpoints para inspeccionar más detalládamente los sucesos si se trata de una excepción en tiempo de ejecución. saludos |  
						| 
								|  |  
								| « Última modificación: 22 Enero 2014, 17:36 pm por Eleкtro » |  En línea | 
 
 |  |  |  | 
			| 
					
						| luis456 
								 
								
								 Desconectado 
								Mensajes: 551
								
								   | 
 
A simple vista, no hay nada erroneo en la instrucción. comprueba si la linea que me has mostrado es la misma que hace referencia a esta: Comprueba que todos los valores que usas en el método de LINQ seán Integers, no longs no shorts no otra cosa, y prueba así, sin especificar el datatype de retorno:  Result11 = Result11.Select(Function(Value) If(Value < MAX, Value, Rand.Next(0, MAX)))
 De todas formas aún sigo esperando a que des un  maldito detalle sobre el tipo de excepción de la que se trata, si en tiempo de ejecución o un error de compilación, aunque está claro que es de compilación pero bueno... para la próxima vez. PD: Siempre puedes ponerle un par de breakpoints para inspeccionar más detalládamente los sucesos si se trata de una excepción en tiempo de ejecución. saludossi elektro hace referencia a Form1.vb   78  Y el error es en tiempo de compilación  Luis |  
						| 
								|  |  
								|  |  En línea | 
 
 Que tu sabiduria no sea motivo de Humillacion para los demas |  |  |  |  |  
 
	
 
 
				
					
						| Mensajes similares |  
						|  | Asunto | Iniciado por | Respuestas | Vistas | Último mensaje |  
						|   |   | como hacer un programa que imprima los numeros que no estan dentro de una rango Programación C/C++
 | pefo | 6 | 6,200 |  21 Noviembre 2012, 20:49 pm por rir3760
 |  
						|   |   | Como limitar rango de numeros en un texbox
							« 1 2 » Programación Visual Basic
 | luis456 | 14 | 7,977 |  23 Septiembre 2013, 16:01 pm por luis456
 |  
						|   |   | ¿Cómo puedo saber si alguién me espían dentro de mi red wifi? Seguridad
 | zythun | 1 | 6,675 |  1 Junio 2016, 04:41 am por engel lex
 |  
						|   |   | [PYTHON]¿Cómo guardar datos de un rango de números que genero con un While? Python
 | 4T1L4 | 2 | 4,096 |  24 Octubre 2016, 15:23 pm por 4T1L4
 |  
						|   |   | [BATCH][Aporte] Range.bat (generador de numeros aleatorio dentro de un rango) Scripting
 | CodeRed | 1 | 4,688 |  23 Mayo 2020, 20:44 pm por .:Xx4NG3LxX:.
 |    |