Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - luis456

#401
Cita de: Eleкtro en 13 Enero 2014, 18:27 PM
( Siguiendo el código de arriba ) ~> Enumerable.Distinct (Método)

Código (vbnet) [Seleccionar]
Dim Result As Integer() = arr1.Concat(arr2).Concat(arr3).Distinct.ToArray

Saludos


Perfecto funciona  :)

Gracias a todos


Luis


#402
Bueno estaba haciendo esta chapuza ( Bisual +net o lo que sea jejej) pero pensaba que habria algo mas directo,la idea es que los resulatdos de result1 y result2 unirlos para eliminar repetidos

dim result3 as Integer


For Each result1 As String In result3
   
Next

For Each result2 As String In result3

Next


Luis
#403
Bueno eso mismo

tengo dos Arrays  " result1 y result2 " quiero unir estos dos array en un tercer array

"result3 " ya probé concatenando pero me pierdo jejej


Luis
#404
Gracias Elektro :)

Luis
#405
.NET (C#, VB.NET, ASP) / Combinatorias
8 Enero 2014, 17:53 PM
Alguien me podria explicar como funciona este codigo de combinatoria quiero aprender pero rompiendo yo las cosas o sea probando; bien este codigo forma combinaciones posibles y estoy tratando que me haga y muestre combinaciones de solo cuatro , no importa el largo del string

Código (vbnet) [Seleccionar]
Public Class Form1


   Dim Caracteres(1000) As String


   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       Dim i, j, k As Integer
       Dim Combinacion As String
       Dim Existe As Boolean

       For i = 0 To TextBox1.Text.Length - 1
           Caracteres(i) = TextBox1.Text.Substring(i, 1)
       Next

       For i = 0 To TextBox1.Text.Length - 1
           For j = 0 To TextBox1.Text.Length - 1

               Existe = False

               Combinacion = TextBox1.Text.Remove(i, 1)
               Combinacion = Combinacion.Insert(i, Caracteres(j))

               Combinacion = Combinacion.Remove(j, 1)
               Combinacion = Combinacion.Insert(j, Caracteres(i))

               For k = 0 To ListBox1.Items.Count - 1
                   If Combinacion = ListBox1.Items(k) Then Existe = True
               Next

               If Existe = False Then ListBox1.Items.Add(Combinacion)

           Next
       Next
   End Sub
End Class
#406
Bueno probando y probando :) consegui un codigo y se muestra el resultado pero por consola ya lo he puesto en un fom win pero no logro hacer que me lo muestre en un listbox o si hay otra forma o otra herramienta ya que solo lo que nesecito es visualizarlo

alguna idea ?


Código (vbnet) [Seleccionar]
Public Shared Sub PrintValues(ByVal myArr As Array)
       Dim myEnumerator As System.Collections.IEnumerator = _
          myArr.GetEnumerator()
       Dim i As Integer = 0
       Dim cols As Integer = myArr.GetLength((myArr.Rank - 1))
       While myEnumerator.MoveNext()
           If i < cols Then
               i += 1
           Else
               Console.WriteLine()
               i = 1
           End If
           Console.Write(ControlChars.Tab + "{0}", myEnumerator.Current)
       End While
       Console.WriteLine()
   End Sub
End Class


Luis
#407
Elektro ? estoy invalido , soy viejo , no me pagan la pensión ya la memoria me falla,tengo parkinson me tiemblan las manos ya no se me par...me ayudas :)

es broma pero  ¿ si te acuerdas de mi ?

luis
#408
" comparar si hay iguales y si hay iguales recorrer el rango y sustituir el repetido por el que no aparezca. ya elimino duplicados pero en cada array, y no se como hacerlo con el resultado final que se mostraria en e lisboxt3 "

esto es porque la solucion que amablemente me dio elektro funciona pero me llena de 99 las casillas repetidas :)


luis
#409
Disculpen por no haber puesto que ya esta solucionado :) fiestas ya ustedes saben jejej

Gracias a todos por las respuestas si me han ayudado :)

Luis
#410
Código (vbnet) [Seleccionar]
Hola a todos espero que hayan pasado buenas fiestas :)


Me he pasado el tiempo tratando de hacer esto pero no encuentro el como quiero concatenar dos array para que:
Result1.Concat(Result2)

comparar si hay iguales y si hay iguales recorrer el rango y sustituir el repetido por el que no aparezca. ya elimino duplicados pero en cada array, y no se como hacerlo con el resultado final que se mostraria en e lisboxt3

ListBox3.Items.AddRange(CombinedItems.ToArray)



[codePublic Class Form1
   Dim maximum As Short = 99
   Dim x As Integer = 0
   Dim Número As Double
   Private TextBoxes As TextBox() = {Nothing}
   Private Result1 As Int32(), Result2 As Int32()
   Private _textBox As Object
   Private Property ListBox1Count As Integer

   Private Sub FrmLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
       Me.ControlBox = False ' Elimino todos los controles del formulario
   End Sub

   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

   Public Sub solonumeros(ByRef e As System.Windows.Forms.KeyPressEventArgs)
       ' evitar letras
       If Char.IsDigit(e.KeyChar) Then
           e.Handled = False
       ElseIf Char.IsControl(e.KeyChar) Then
           e.Handled = False
       ElseIf Char.IsSeparator(e.KeyChar) Then
           e.Handled = False
       Else
           e.Handled = True
       End If

   End Sub


   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
 

   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 duplicad


       Array.Sort(Result1) : Array.Sort(Result2) ' El número no está repetido:

       Dim Results As IEnumerable(Of Integer) =
           Result1  ' El número no está repetido.Concat(Result2)  

     

       For X As Integer = 0 To Results.Count - 1
           ' Este es para unir en 3lisbos
           Dim Items1 As List(Of String) = ListBox1.Items.Cast(Of String)().ToList
           Items1.Add("  ")


           Dim Items2 As List(Of String) = ListBox2.Items.Cast(Of String)().ToList
           Items2.Add("  ")

           Dim CombinedItems As List(Of String) = Items1.Concat(Items2).ToList


           ListBox3.Items.AddRange(CombinedItems.ToArray)

           ' aqui acaba

           Select Case Results.Where(Function(n) n = Results(X)).Skip(1).Any

               Case False ' El número no está repetido en ninguna "linea"
                   ' Así que colocamos el número en el Textbox
                   Try
                       ListBox1.Items.Add(CStr(Results(X)))


                       ' TextBoxes(TextBoxCount).Text = CStr(Results(X))
                   Catch ex As Exception
                       Throw New Exception(ex.Message & ex.StackTrace)
                   End Try

                 

           End Select


       Next X
       ' -------segunda

       Dim Resultss As IEnumerable(Of Integer) =
           Result2 ' .

       

       For X As Integer = 0 To Resultss.Count - 1



           Select Case Resultss.Where(Function(n) n = Resultss(X)).Skip(1).Any

               Case False
                   Try
                       ListBox2.Items.Add(CStr(Resultss(X)))

                   Catch ex As Exception
                       Throw New Exception(ex.Message & ex.StackTrace)
                   End Try

                   
           End Select
           
       Next X
     
   End Sub
   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

   End Sub
 
End Class]





saludos
Luis