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

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


  Mostrar Mensajes
Páginas: 1 [2] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ... 55
11  Programación / .NET (C#, VB.NET, ASP) / Re: Ejercicio básico de combinaciones en: 5 Mayo 2021, 06:46 am
Bien la primera parte esta bien, a si mismo es pero en la parte que me comentas que debe aparecer dos veces el mismo digito no podrá ser ya que son números que no se repiten  y además se prestaría a confusión ,si no se puede hacer vamos a dejarlo por ahora (después miramos a hacerlo sin tener que meter dos veces el mismo digito ,por lo demás esta bien a si es como debe funcionar,

Saludos y gracias
Luis



12  Programación / .NET (C#, VB.NET, ASP) / Re: Ejercicio básico de combinaciones en: 4 Mayo 2021, 21:24 pm
ien Serapis tratare de explicarlo al pelo ya que tienes razon,esta desde el princio mal planteado ,
 
bueno la idea es poder combinar 6 digitos iniciales que van desde el 0 hasta el 9 (0,1,2,3,4,5,6,7,8,9 ), bien de estos numeros
que yo escojo segun una ecuacion matematica (mia) 6 digitos los cuales yo combino segun la tematica de apuesta
de la primitiva que ya sabemos es hasta el 49, con estos 6 digitos se deben formar los numeros (decenas) que componen el sorteo

ejemplo : introducimos  ( 1, 2, 3, 4, 5, 6 ) con estos numeros se formarian los siguientes numeros:
12 13 14 15 16
21 23 24 25 26
31 32 34 35 36
41 42 43 45 46 <----tomariamos hasta aca los numeros para combinarlos entre si formando grupos de 6
51 52 53 54 56 <----ya estos no se toman en cuenta ( se eliminan del calculo)
61 62 63 64 65 <----ya estos no se toman en cuenta ya que se salen del rango max (49)

Seguimos: del grupo de arriba tomariamos los numeros desde el 12 hasta el 46, ya que como sabemos las loteria llegan hasta el 49 y
habiendo excluido el 51 hasta el 65 nos quedarian desde el 12 hasta el 46 y esos son los numeros que vamos a combinar

vamos a calcular otro ejemplo ( 1,3,4,5,7,9 ) se deben de formar los siguientes numeros

13,14,15,17,19
31,34,35,37,39
41,43,45,47,49
y con estos numeros formar las combinaciones posibles de 6

Muy importante es lo siguiente debe tomar en cuenta cuando se introducen los 6 digitos que los digitos( 0 1 2 3 y 4 ) forman las decenas
y que se deben combinar con el resto de los digitos y entre si para formar lo que ya sabemos es la forma de juego de la loteria
primitiva y bonoloto.

gracias de antemano por tu enorme paciencia :)

Luis
13  Programación / .NET (C#, VB.NET, ASP) / Re: Ejercicio básico de combinaciones en: 3 Mayo 2021, 13:16 pm
UFFFF JAJJAJA

Bueno tendré que imprimir esto y llevármelo al trabajo a ver si asimilo todo y muchas gracias por tu paciencia ,pero te explico estoy haciendo pruebas con varios ejemplos y en una de ellas pongo 2 3 4 6 7 8 y no me salen combinaciones con el cuatro si de terminal estilo 24 34 pero no me salen con el cuatro 42 43 etc etc . y lo de las 210 combinaciones no es limitante se supone que con otro digito saldrán mas combinaciones ,no te preocupes por lo demás que aunque no sea experto ,se como hacer que guarde, imprima libere las variables etc ,

esto lo puse d prisa y corriendo tengo muchos modelos a usar pero me vale para ir viendo como funciona el codigo
Código
  1. ' FUNCION LIMPIAR LISTBOSX...
  2.    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
  3.        For Each obj As Control In Me.Controls
  4.            If (TypeOf obj Is TextBox) Then
  5.                obj.Text = ""
  6.            End If
  7.            If (TypeOf obj Is GroupBox) Then
  8.                For Each caja As Control In obj.Controls
  9.                    If (TypeOf caja Is TextBox) Then
  10.                        caja.Text = ""
  11.                    End If
  12.                Next
  13.            End If
  14.            ListBox1.Items.Clear()


Y claro que tomare en cuenta tus métodos pero ya tenia mas de dos años sin programar y lo mío es autodidacta aunque no se crea jejje (eso que estudie Cobol y Pascal ) cuando los Dinosaurios no tenían ni disco duro 😲

es que no se como pasar una toma de pantalla para que veas que es lo que hago,  porque no entiendo si pongo 1 3 4, 6 7 8 no me salen combinaciones con el cuatro adelante ???

13
14
31
34
41
43


Saludos
Luis





















14  Programación / .NET (C#, VB.NET, ASP) / Re: Ejercicio básico de combinaciones en: 3 Mayo 2021, 08:31 am
Gracias Serapis por tu ayuda he estado probando el código y bien vamos Bien jejje pero (siempre hay un pero ) no quiero que me hagas todo el trabajo ,solo explícame como funcionan algunas cosas para yo modificarlo , en el ejemplo anterior usas los números que pongo de ejemplo  " 2, 3, 5,6,8, 9 " pero estos números cambian después de cada sorteo (después os explicare como los saco) según voy entiendo el código este toma solo los dos primeros y los combina con el resto ,bien el tema es que como sabemos las decenas son hasta el cuatro y a veces tendría que introducir ejemplo ( 1 , 2 ,4 - 5,7,8 ) y ahora el programa para las combinaciones no toma el cuatro solo el 1 y 2 , he puesto un botón para limpiar y poder hacer pruebas y el código va de maravilla ,pongo el código y algunas observaciones  a ver que te parece ?

Código
  1. Imports System.Text
  2.  
  3.  
  4.  
  5. Public Class Form1
  6.    Private Permuta As New Permutaciones
  7.    Private Decenas(2) As Byte, Unidades(4) As Byte
  8.  
  9.  
  10.    ' El botón de la interfaz...
  11.    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  12.        Dim Nums() As String, txt As String
  13.        Dim k As UInt16
  14.  
  15.        txt = TextBox1.Text.Replace(" ", "") ' <<<<<<<<<<<<<<   ACA CAMBIAN LOS NUMEROS NUNCA SON LOS MISMOS ...Y DEBE TOMAR HASTA EL DIGITO 4  SABEMOS QUE LAS DECENAS SON 0 1 2 3 Y 4
  16.        Nums = txt.Split(",")
  17.        If (Nums.Length = 6) Then
  18.            ' crear los parámetros para la funcion de Transformacion:
  19.            Decenas(0) = System.Byte.Parse(Nums(0))
  20.            Decenas(1) = System.Byte.Parse(Nums(1))
  21.            For k = 2 To 5
  22.                Unidades(k - 2) = System.Byte.Parse(Nums(k))
  23.            Next
  24.  
  25.            ListBox1.Items.Clear()
  26.            For j = 0 To Permuta.Cantidad - 1
  27.                ListBox1.Items.Add(Permuta.Transforma(j, Decenas, Unidades))
  28.            Next
  29.            Label1.Text = "Cantidad en lista: " & ListBox1.Items.Count.ToString
  30.        Else
  31.            MessageBox.Show("No, no no... Debe haber 6 y solo 6 numeros, separados por 1 coma...")
  32.        End If
  33.    End Sub
  34.  
  35.    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  36.  
  37.    End Sub
  38.  
  39.    ' FUNCION LIMPIAR LISTBOSX...
  40.    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
  41.        For Each obj As Control In Me.Controls
  42.            If (TypeOf obj Is TextBox) Then
  43.                obj.Text = ""
  44.            End If
  45.            If (TypeOf obj Is GroupBox) Then
  46.                For Each caja As Control In obj.Controls
  47.                    If (TypeOf caja Is TextBox) Then
  48.                        caja.Text = ""
  49.                    End If
  50.                Next
  51.            End If
  52.            ListBox1.Items.Clear()
  53.  
  54.  
  55.        Next
  56.    End Sub
  57.  
  58.    Private Class Permutaciones
  59.        Const MAX_COMBINAS As UInt16 = 210
  60.        Private s_Combinas(MAX_COMBINAS) As UInt32
  61.  
  62.        Public ReadOnly Property Cantidad As UInt16
  63.            Get
  64.                Return MAX_COMBINAS
  65.            End Get
  66.        End Property
  67.  
  68.        Public Function Transforma(ByVal Indice As UInt16, ByVal Dec() As Byte, ByVal Uni() As Byte) As String
  69.            Dim permuta As UInt32 = s_Combinas(Indice)
  70.            Dim s As String = "", valor As String = ""
  71.            Dim x As Byte = 0, k As Byte
  72.  
  73.            For k = 0 To 5
  74.                x = (permuta Mod 10)
  75.                permuta \= 10
  76.  
  77.                Select Case x
  78.                    ' forma C en que quedan ordenados más aproximado al ejemplo de muestra...
  79.                    Case 0 : x = ((Dec(0) * 10) + Dec(1))
  80.                    Case 1 To 4 : x = ((Dec(0) * 10) + Uni(x - 1))
  81.                    Case 5 To 8 : x = ((Dec(1) * 10) + Uni(x - 5))
  82.                    Case 9 : x = ((Dec(1) * 10) + Dec(0))
  83.  
  84.                        ' Otra forma B en que quedan ordenados...
  85.                        'Case 0 : x = ((Dec(0) * 10) + Dec(1))
  86.                        'Case 1 : x = ((Dec(1) * 10) + Dec(0))
  87.                        'Case 2 To 5 : x = ((Dec(0) * 10) + Uni(x - 2))
  88.                        'Case 6 To 9 : x = ((Dec(1) * 10) + Uni(x - 6))
  89.  
  90.                        ' Otra forma A en que quedan ordenados...
  91.                        'Case 0 To 3 : x = ((Dec(0) * 10) + Uni(x))
  92.                        'Case 4 To 7 : x = ((Dec(1) * 10) + Uni(x - 4))
  93.                        'Case 8 : x = ((Dec(0) * 10) + Dec(1))
  94.                        'Case 9 : x = ((Dec(1) * 10) + Dec(0))
  95.                End Select
  96.  
  97.                If (x < 10) Then s = "0" & x.ToString Else s = x.ToString
  98.                valor = (s & ", ") & valor
  99.            Next
  100.  
  101.            Return valor
  102.        End Function
  103.  
  104.  
  105.        ' Genera todas las permutaciones posibles (210) en formato numerico.
  106.        ' Alfabeto = X,Y,   R,S,T,U
  107.        ' solo hay 8 pares de combinaciones: Resultado de combinar cada uno del GrupoDec con cada uno del GrupoUni
  108.        '   XR, XS, XT, XU  (0,1,2,3)
  109.        '   YR, YS, YT, YU  (4,5,6,7)
  110.        '  Más las 2 combinaciones de intercambiar de posicion los valores del 'grupoDec'
  111.        '   XY, YX          (8,9)  
  112.        ' Cada par de esos 10 se enumeran ahora como 0-9 (usando una solo caracter)
  113.        ' Ahora el numero de combinaciones con esos 10 pares tomados de 6 en 6 son: 210
  114.        Public Sub New()
  115.            Dim combina As UInteger = 12345       ' combinacion inicial -----------NO ENTIENDO ESTO YA QUE LOS NUMEROS DE LAS DECENAS NO PUEDEN PASAR DEL 4
  116.            Dim final As UInteger = 456789           '  combinación final --------------???????????????
  117.            Dim k As UInt16
  118.            Dim digitos(0 To 5) As Byte, n As Byte  ' control de límite de cada dígito.
  119.  
  120.            For k = 0 To 5
  121.                digitos(k) = k
  122.            Next
  123.  
  124.            k = 0
  125.            Do
  126.                s_Combinas(k) = combina
  127.                If (digitos(5) = 9) Then
  128.                    n = 4
  129.                    Do While digitos(n) = digitos(n + 1) - 1
  130.                        n -= 1
  131.                    Loop
  132.                    digitos(n) += 1
  133.                    For n = n + 1 To 5
  134.                        digitos(n) = digitos(n - 1) + 1
  135.                    Next
  136.                    combina = 0
  137.                    For n = 0 To 5
  138.                        combina += digitos(n) * (10 ^ (5 - n))
  139.                    Next
  140.                Else
  141.                    combina += 1 : digitos(5) += 1
  142.                End If
  143.                k += 1
  144.            Loop While (combina < final)
  145.            s_Combinas(k) = combina
  146.        End Sub
  147.  
  148.        'Public ReadOnly Property Permuta(ByVal X As UInt16)
  149.        '    Get
  150.        '        Return s_Combinas(X)
  151.        '    End Get
  152.        'End Property
  153.    End Class
  154.  
  155.    ' Mostras la lista de permutaciones en el listbox.... va en conjunto con la propiedad 'Permuta' de la clase permutaciones.
  156.    'Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
  157.    '    Dim k As UInt16, j As UInt32, s As String = ""
  158.  
  159.    '    ListBox1.Items.Clear()
  160.    '    For k = 0 To Permuta.Cantidad - 1
  161.    '        j = (Permuta.Permuta(k))
  162.    '        If (j < 123456) Then s = "0" & j.ToString Else s = j.ToString
  163.    '        ListBox1.Items.Add(s)
  164.    '    Next
  165.    'End Sub
  166. End Class
  167.  


Despues los adornos se los pongo jejeje

saludos
Luis



15  Programación / .NET (C#, VB.NET, ASP) / Re: Ejercicio básico de combinaciones en: 1 Mayo 2021, 22:28 pm
Voy a tratar de explicarlo (siempre me pasa lo mismo yo se lo que quiero pero no se explicarlo)

yo tengo  6 dígitos  ejemplo  2 3 5 6 8 9 <--- esos números deberán de formar parejas de esta forma :

de este grupo se toma el 2 y 3 solamente y se combinan con el resto :  5 6 8 9  formando pares de dígitos :

estos son los números resultantes

23  25  26 28 29
32  35  36 38 39

Resultado de esa combinación es esta (no las pongo todas son bastantes )

23,25,26,28,29,32
23,25,26,28,29,35
23,25,26,28,29,36
23,25,26,28,29,38
23,25,26,28,29,39
23,25,26,28,32,35
23,25,26,28,32,36
23,25,26,28,32,38
23,25,26,28,32,39
23,25,26,28,35,36
23,25,26,28,35,38

Como ven solo no salen combinaciones con el cuatro ni el uno ni cero ya que no salen en los números para combinar ( 2 3 5 6 8 9 )

saludos
Luis
16  Programación / .NET (C#, VB.NET, ASP) / Re: Ejercicio básico de combinaciones en: 1 Mayo 2021, 11:27 am
Hola a todos de nuevo al ataque jjejej

Por fin instale de nuevo el Visual y he podido probar el código de Serapis

Codigo

Código
  1. Imports System.Text
  2.  
  3. Public Class Form1
  4.  
  5.    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  6.        Dim Nums() As String, txt As String
  7.        Dim Valores() As Byte, k As UInt16
  8.  
  9.        txt = TextBox1.Text.Replace(" ", "")
  10.        Nums = txt.Split(",")
  11.        If (Nums.Length = 6) Then
  12.            ReDim Valores(0 To 5)
  13.            For k = 0 To 5
  14.                Valores(k) = System.Byte.Parse(Nums(k))
  15.            Next
  16.            Call Combinaciones(Valores)
  17.        Else
  18.            MessageBox.Show("No, no no... Debe haber 6 y solo 6 numeros, separados por 1 coma...")
  19.        End If
  20.    End Sub
  21.  
  22.    Private Sub Combinaciones(ByVal Valores As Byte())
  23.        Dim j, k, max As Byte
  24.        Dim combinacion As String = ""
  25.  
  26.        ListBox1.Items.Clear()
  27.        max = (49 - Valores.Max)
  28.        For j = 0 To max
  29.            For k = 0 To 5
  30.                combinacion &= ((Valores(k) + j).ToString) & ", "
  31.            Next
  32.  
  33.            ListBox1.Items.Add(combinacion)
  34.            combinacion = ""
  35.        Next
  36.    End Sub
  37. End Class

Bueno funciona bien dentro lo que cabe pero no hace lo que que quiero al 100 % ya que me hace combinaciones con números que no están dentro de los que introduzco:

Ejemplo

si introduzco  2 , 3 , 5 , 7 , 8 , 9

primero los números que se deben formar son  23 25 27 28 29 después 32 35  37 38 39  y con estos números hacer las combinaciones ya que como vemos no hay  0, 4, 1  en este caso serian 12 números a combinar formando combinaciones de 6 que cumplan la condición mirar (bonoloto primitiva) Si nos hacemos ricos lo haremos entre todos jejejje


NOTA (no se como ostias subir una captura de pantalla )


Saludos  todos
Luis






 

17  Programación / .NET (C#, VB.NET, ASP) / Re: Nesecito el Visual Studio Express 2010 en: 28 Abril 2021, 20:21 pm
Pues si, una vez andaba en busca de versiones ligeras de Visual Studio y no hallé un enlace directo oficial del Visual Studio 2010 Express en ISO.

La única manera de obtenerlo original es ir a https://my.visualstudio.com/downloads crear una cuenta o iniciar sesión, luego buscar "Visual Studio 2010 Express", elegir el idioma y darle al botón Download:



---
Es raro porque aún se ofrecen las versiones 2008 y 2005 como enlaces directos:

Microsoft Visual Studio 2008 Express con SP1 en español
-------------------------------------------------------
http://download.microsoft.com/download/9/6/3/9632B28F-8B0B-40E5-98AB-7102BA848165/VS2008ExpressWithSP1ESNx1504732.iso

MSDN Library para Visual Studio 2008 con Service Pack 1
-------------------------------------------------------
http://download.microsoft.com/download/6/E/D/6ED0177E-4B4D-4BC1-B875-4F6BC6A61927/ESNMSDNX1530340.ISO

Microsoft Visual Studio 2008 Profesional en Español
---------------------------------------------------
http://download.microsoft.com/download/0/4/3/0434418f-7f3d-4dd6-9846-13f75353ff80/VS2008ProEdition90DayTrialESNX1435990.iso

Microsoft Visual Studio 2005 Profesional en Español
---------------------------------------------------
http://download.microsoft.com/download/3/0/8/308c4508-30c4-4387-9440-ebe2e63d6693/es_vs_2005_pro_trial.iso


Visual Web Developer 2005 Express Edition (449,848 KB)
http://go.microsoft.com/fwlink/?linkid=57037

Visual Basic 2005 Express Edition (445,282 KB)
http://go.microsoft.com/fwlink/?linkid=57033

Visual C# 2005 Express Edition (445,282 KB)
http://go.microsoft.com/fwlink/?linkid=57035

Visual C++ 2005 Express Edition (474,686 KB)
http://go.microsoft.com/fwlink/?linkid=57034


MUCHASSSSS GRACIAS jejje debo ya con 60 años perdiendo facultades ni me acordaba que tenia cuenta jejejje

gracias gracias
luis




18  Programación / .NET (C#, VB.NET, ASP) / Nesecito el Visual Studio Express 2010 en: 28 Abril 2021, 13:42 pm
 Por motivos de perdida de pc . necesito si alguien tiene esta versión y me la pueda  ceder ya no encuentro la descarga por ningún lado :(

de antemano muchas gracias
Luis
19  Programación / .NET (C#, VB.NET, ASP) / Re: Ejercicio básico de combinaciones en: 26 Abril 2021, 16:59 pm
 ;-) ;-) ;-) ;-) ;-)
Gracias de verdad gracias a todos aunque todavía no he probado ninguno de vuestros códigos (no he podido ya que estoy en otro PC ) y no tengo instalado el Visual Net y por ser esclavo (digo que tengo que trabajar ;( ) no he tenido tiempo de probar pero ya lo hare y de verdad que estoy super agradecido con todos

saludos
Luis
20  Programación / .NET (C#, VB.NET, ASP) / Ejercicio básico de combinaciones en: 25 Abril 2021, 11:21 am
Hola a Todos
Tengo algún tiempo sin programar y se me ha olvidado algunas cosas ya muchos me conocéis, como siempre he trabajado sobre la base de dos dígitos, ahora se me ocurre hacerlo con 6 0 8 números y que me haga las combinaciones del 01 al 49 y si claro es para loterías jejej .bien mi idea es la siguiente :

introduzco seis números  ejemplo  1, 4, 5, 7, 8, 9  y que con estos números se me formen resultados de 6 números :

14 15 17 18 19
41 45 47 48 49

como vemos la condición es que no se formen números mayores a 49

Encontre este codigo dentro de mis archivos pero creo es de excel y quiero convertirlo a Net

Código
  1. Sub Combinacion()
  2. i = 1
  3. For b1 = 1 To 61
  4.    For b2 = b1 + 1 To 62
  5.        For b3 = b2 + 1 To 63
  6.            For b4 = b3 + 1 To 64
  7.            Cells(i, 1) = b1
  8.            Cells(i, 2) = b2
  9.            Cells(i, 3) = b3
  10.            Cells(i, 4) = b4
  11.            Range("E1") = i
  12.            i = i + 1
  13.            Next
  14.        Next
  15.    Next
  16. Next
  17. End Sub


A ver quien le echa una mano a este VIEJO jejej y espero para este septiembre 14 me feliciten por mis 61 años 😨

Luis







Páginas: 1 [2] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ... 55
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines