Hola amigos
Comparto aquí un sencillísimo código para hacer
La Quiniela. Se trata de un código que genera variaciones de la quiniela de
forma aleatoria. Es lo mismo que esos artilugios con daditos 1, X, 2 que venden en estancos, librerías o quioscos.
(http://cloud10.todocoleccion.online/vintage/tc/2013/04/08/36661245.jpg)
Es una versión virtual de los dados. El programita muestra una ventana como esta:
(https://s25.postimg.org/45ci07axb/miquiela_demo1.png)
Para usuarios sin conocimientos de programaciónTan sólo necesitas el
Bloc de Notas de Windows:
- Abre el Bloc de Notas (notepad.exe)- Copia y pega el siguiente código VBSCRIPT Dim var(14)
Dim Rand
Dim Partido
Dim P15(2)
Randomize
For Partido = 1 To 14
Rand = CStr(Int(Rnd * 3))
Rand = Replace(Rand, "1", "X")
Rand = Replace(Rand, "0", "1")
var(Partido) = _
"Partido " _
& Right("00" & Partido, 2) _
& ":..... " _
& Rand
Next
For Partido = 1 To 2
Rand = CStr(Int(Rnd * 4))
P15(Partido) = Replace(Rand, "3", "M")
Next
MsgBox Join(var, vbCrLf) _
& vbCrLf & vbCrLf _
& "[P15]" & vbCrLf _
& "Equipo A: " & P15(1) _
& vbCrLf _
& "Equipo B: " & P15(2), _
vbOKOnly, _
"Mi Quiniela"
- Guarda con extensión *.VBS, por ejemplo miquiniela.vbs, haces doble clic sobre el archivo y ya tienes tu apuesta columna. Si has hecho alguna vez la quiniela sabrás que una apuesta consta de dos columnas. Este programa solo genera una columna por motivos estéticos. Para generar otra vuelve a hacer doble clic sobre el archivo VBS y generará otra distinta.
Existen 4782969 columnas posibles, así que es difícil que vuelva a salir otra idéntica.
Si deseas que genere las dos columnas usa este otro código: Dim var(14)
Dim Rand1
Dim Rand2
Dim Partido
Dim P15(2)
Randomize
For Partido = 1 To 14
Rand1 = CStr(Int(Rnd * 3))
Rand1 = Replace(Rand1, "1", "X")
Rand1 = Replace(Rand1, "0", "1")
Rand2 = CStr(Int(Rnd * 3))
Rand2 = Replace(Rand2, "1", "X")
Rand2 = Replace(Rand2, "0", "1")
var(Partido) = _
"Partido " _
& Right("00" & Partido , 2) _
& ":..... " _
& Rand1 & vbTab _
& Right("00" & Partido , 2) _
& ":..... " & Rand2
Next
For Partido = 1 To 2
Rand = CStr(Int(Rnd * 4))
P15(Partido) = Replace(Rand, "3", "M")
Next
MsgBox Join(var, vbCrLf) _
& vbCrLf & vbCrLf _
& "[P15]" & vbCrLf _
& "Equipo A: " & P15(1) _
& vbCrLf _
& "Equipo B: " & P15(2), _
vbOKOnly, _
"Mi Quiniela"
Ejemplo de como se verá:
(https://s25.postimg.org/tmuwjssnj/miquiela_demo2.png)
PARA VISUAL STUDIOAquí lo dejo en otros lenguajes de programación:
VB Dim var(14) As String, P15(2) As String
Dim Rand As String
Dim Partido As Integer
Randomize
For Partido = 1 To 14
Rand = CStr(Int(Rnd * 3))
Rand = Replace(Rand, "1", "X")
Rand = Replace(Rand, "0", "1")
var(Partido) = "Partido " & Right("00" & Partido, 2) _
& ":..... " & Rand
Next
For Partido = 1 To 2
Rand = CStr(Int(Rnd * 4))
P15(Partido) = Replace(Rand, "3", "M")
Next
MsgBox Join(var, vbCrLf) & vbCrLf & vbCrLf & _
"[P15]" & vbCrLf _
& "Equipo A: " _
& P15(1) & vbCrLf _
& "Equipo B: " _
& P15(2), , vbOKOnly, "Mi Quiniela"
VB.NET (Consola)
Dim Signo() As String = {"1", "X", "2"}
Dim P15(2) As String, Var(14) As String
Dim Rand As New Random
For Partido As Integer = 1 To 14
Var(Partido) = String.Format("Partido {0:00}:..... {1}",
Partido, Signo(Rand.Next(0, 3)))
Next
For Partido As Integer = 1 To 2
P15(Partido) = (CStr(Rand.Next(0, 4)).Replace("3", "M"))
Next
Console.WriteLine(String.Format("{0}{1}{1}[P15]{1}Equipo A: {2}{1}Equipo B: {3}",
String.Join(Environment.NewLine, Var),
Environment.NewLine,
P15(1),
P15(2)))
Console.ReadLine()
NET C# (Consola) string[] Signo = { "1", "X", "2" };
string[] P15
= new string[3]; string[] Var
= new string[15]; Random Rand
= new Random
(); for (int Partido = 1; Partido <= 14; Partido++)
{
Var.SetValue(string.Format("Partido {0:00}:..... {1}", Partido, Signo[Rand.Next
(0, 3)]), Partido);
}
for (int Partido = 1; Partido <= 2; Partido++)
{
P15.SetValue(Convert.ToString(Rand.Next(0, 4)).Replace("3", "M"), Partido);
}
Console.WriteLine(string.Format("{0}{1}{1}[P15]{1}Equipo A: {2}{1}Equipo B: {3}",
string.Join(Environment.NewLine, Var),
Environment.NewLine, P15[1], P15[2]));
Console.ReadLine();
Advierto que es puramente aleatorio , este programa no hace milagros :xD. Está pensado especialmente para personas que no sepan programar y quieran hacer la quinela al azar, como con los dados, pero usando el ordenador.
Pues nada, suerte y que toque :D
Personalmente considero que las Loterías y Apuestas del Estados son invento para recaudar dinero y quitárselo a los pobres.