Hi Taringa!
Hacen varios meses que no hacia un post tutorial, debido a asuntos personales, pero aquí esta el Tutorial.
Y en esta ocasión en este tutotial aremos un programa usando Random, que puede ser útil para muchos programas.
Aremos un Juego Matemático, que tendrá como operaciones matemáticas, Suma, Resta, Multiplicación y División, el usuario presionara un botón, saldrá una ecuación aleatoria y el usuario tendrá que contestarlo en un textbox. Les dare una base con este programa y pueden seguir jugando con ella, algo sencillo y le añaden y le quitan cosas.
Bueno, ya que eh dado la explicación... Comencemos!!
Necesitaran:
1) TextBox (3)
2) Botón (2)
3) RadioButton (4)
4) Labels (9)
Ya teniendo esos Items, vamos a alinearlos como querramos. Aqui les muestro como yo
lo organize.
Luego vamos a cambiar los nombres y editar un poco para que se tenga un poco de mas estética.
Ahora si, comenzaremos con la Programación.
Primer Botón
Presionaremos el Botón que le puse "Nuevo Numero" o simplemente vamos a la pantalla de Codificación.
Ahora declararemos 3 variables (Integer).
Yo les llamare:
1) Num1
2) Num2
Una de ellas sera Global. Significa: (Variable Global: Es una variable que se declara en la parte superior del programa, su funcion es que se puede utilizar en varios módulos (Subs) sin tener que nombrarla varias veces.)
1) TotalUser
Luego vamos a colocar una funcion, llamada Randomize() que permite que se puedan utilizar numeros Random o Aleatorios sin que se repita la misma secuencia.
Veamos en la Foto
Ya que tenemos las variables y Randomize() prosigamos
Escribiremos Textbox3.clear() para limpiar el textbox cada vez que se precione el boton. El Textbox 3 en mi caso es que tengo sobre el boton "Resultado". En ese Textbox el usuario escibira la respuesta.
Luego ledaremos el valor la variable
Num1 = ( Str ( Int ( Rnd ( )* 10 +1 ) ) )
Num2 = ( Str ( Int ( Rnd ( )* 10 +1 ) ) )
Significa:
( Str ( Int ( Rnd ( ) * 10 +1 ) ) ) (Rnd es lo que hace que salga un valor aleatorio, le ponemos parentesis por que es una funcion, el " * 10" significa que ese sera el rango mayor del numero aleatorio, el " + 1 " significa que no incluirá 0, solo desde el 1 al numero asignado. Int() significa que el valor que esta dentro del paréntesis sera Integer y Str() significa que el valor que estará siendo convertido en String para que en mi caso pueda ser impreso.)
Luego de hacer los valores Random vamos a hacer un IF
En mi caso el RadioButton1 es el que voy a usar para suma asi que
If RadioButton1.Checked Then
Ahora le daremos el valor de Num1 y Num2 a los Textbox que es donde saldran los numeros que el usuario tendra que analizar para contestar.
TextBox1.Text = num1
TextBox2.Text = num2
Hacemos la Suma
TotalUser = Num1 + Num2
Y escribiremos
label9.Text = "+" para que el usuario sepa que esta sumando
Ahora veremos la foto
Y ahora escribiremos
Buscaremos el nombre del Label que esta al lado derecho de el Label que se llama "Juego", en mi caso el Label2.
Lo que aremos es incrementar los juegos que se han jugado.
Label2.Text = Label2.Text + 1
Ya que terminamos con el 1er IF, seguimos con los IF que faltan que exactamente lo mismo, solo les deben cambiar las Operaciones Matemáticas de donde estaba " + " a " - " a " * " y así sucesivamente. Excepto el contador del Label2, que no se tocara mas.
Aquí les muestro la foto
Ya culminamos con el Boton "Nuevo Numero" ahora buscaremos el Boton de "Resultado"
Segundo Botón
Declararemos una variable Double:
1) Resultado
Teniendo esta variable ahora en este caso usaremos "Try"
Ahora aremos una decicion logica usando IF
If Textbox3.Text = TotalUser Then (Que es el Textbox donde se pondra el resultado, que estará bien)
Para que el usuario sepa que saco esa respuesta buena pondremos un MessageBox
Msgbox("Bien!!" , Title:="Correcto" )
Significa: Title:= " " significa el titulo que se le dara Arriba en el MsgBox.
Bajo eso pondremos
Label4.Text = Label4.Text + 1 (Esta aumentando el numero de buenas que ha sacado el Ususario)
Despues Aremos un Elseif
Elseif IsNumeric(Textbox3.Text <> TotalUser) then (Aqui preguntara si el resultado esta mal)
Significa: IsNumeric() En este caso estamos preguntado que si el valor que tiene Textbox4 y TotalUser es numerico. Tambien IsNumeric() se puede utilizar como Booleana o Boolean utilizando True o False.
Ahora escribiremos un MessageBox que diga que el resultado estuvo mal y mostrara el resultado correcto.
MsgBox("Mal!! El resultado es " & TotalUser, Title:="Incorrecto" )
Y para culminar con el IF
Label6.Text = Label6.Text + 1 (Que esta aumentando las malas)
Despues escribiremos un mensaje de Error por si ocurriera alguno.
Catch ex As Exception
MsgBox("Solo puede poner Numeros en el resultado, ha perdido la oportunidad de contestar este problema matematico. Precione Nuevo Numero.", MsgBoxStyle.Critical, Title:="Error" )
End Try
Y para Terminar con el Botón Numero 2
Escribimos esta ecuación que el resultado sera el porciento del usuario de acuerdo las buenas y los juegos jugados y usaremos el Label7 para que se muestre el resultado.
Resultado = (Label4.Text / Label2.Text)
Label7.Text = Math.round(Resultado * 100)
Ahora veremos la foto del Boton Numero 2
Y listo, Ya pueden Usar su juego con números aleatorios.
Este programa fue echo por mi para que las personas (incluyéndome) practiquen las matemáticas.
A petición de uno de los visitantes, subi esta foto, para que vean como queda.
Gracias por la sugerencia Josetu2 y gracias a MrsTroll por lo del codigo, lo estare usando en los proximos post.
Si hubiese algún Error, díganme y les contestare.
Y aqui les dejo algunos de mis pequeños programas que eh subido a Taringa. Y tengo Este mismo pero con varias cosas adicionales. Disfrútenlos y Éxito.
___________________________________________________________________________________
Tutoriales:
1) Tutorial 1 >>
2) Tutotial 2 >>
3) Tutorial 3 >>
4) Tutorial 4 >>
5) Tutorial 5 >>
Hacen varios meses que no hacia un post tutorial, debido a asuntos personales, pero aquí esta el Tutorial.
Y en esta ocasión en este tutotial aremos un programa usando Random, que puede ser útil para muchos programas.
Aremos un Juego Matemático, que tendrá como operaciones matemáticas, Suma, Resta, Multiplicación y División, el usuario presionara un botón, saldrá una ecuación aleatoria y el usuario tendrá que contestarlo en un textbox. Les dare una base con este programa y pueden seguir jugando con ella, algo sencillo y le añaden y le quitan cosas.
Bueno, ya que eh dado la explicación... Comencemos!!
Necesitaran:
1) TextBox (3)
2) Botón (2)
3) RadioButton (4)
4) Labels (9)
Ya teniendo esos Items, vamos a alinearlos como querramos. Aqui les muestro como yo
lo organize.
Luego vamos a cambiar los nombres y editar un poco para que se tenga un poco de mas estética.
Ahora si, comenzaremos con la Programación.
Primer Botón
Presionaremos el Botón que le puse "Nuevo Numero" o simplemente vamos a la pantalla de Codificación.
Ahora declararemos 3 variables (Integer).
Yo les llamare:
1) Num1
2) Num2
Una de ellas sera Global. Significa: (Variable Global: Es una variable que se declara en la parte superior del programa, su funcion es que se puede utilizar en varios módulos (Subs) sin tener que nombrarla varias veces.)
1) TotalUser
Luego vamos a colocar una funcion, llamada Randomize() que permite que se puedan utilizar numeros Random o Aleatorios sin que se repita la misma secuencia.
Veamos en la Foto
Ya que tenemos las variables y Randomize() prosigamos
Escribiremos Textbox3.clear() para limpiar el textbox cada vez que se precione el boton. El Textbox 3 en mi caso es que tengo sobre el boton "Resultado". En ese Textbox el usuario escibira la respuesta.
Luego ledaremos el valor la variable
Num1 = ( Str ( Int ( Rnd ( )* 10 +1 ) ) )
Num2 = ( Str ( Int ( Rnd ( )* 10 +1 ) ) )
Significa:
( Str ( Int ( Rnd ( ) * 10 +1 ) ) ) (Rnd es lo que hace que salga un valor aleatorio, le ponemos parentesis por que es una funcion, el " * 10" significa que ese sera el rango mayor del numero aleatorio, el " + 1 " significa que no incluirá 0, solo desde el 1 al numero asignado. Int() significa que el valor que esta dentro del paréntesis sera Integer y Str() significa que el valor que estará siendo convertido en String para que en mi caso pueda ser impreso.)
Luego de hacer los valores Random vamos a hacer un IF
En mi caso el RadioButton1 es el que voy a usar para suma asi que
If RadioButton1.Checked Then
Ahora le daremos el valor de Num1 y Num2 a los Textbox que es donde saldran los numeros que el usuario tendra que analizar para contestar.
TextBox1.Text = num1
TextBox2.Text = num2
Hacemos la Suma
TotalUser = Num1 + Num2
Y escribiremos
label9.Text = "+" para que el usuario sepa que esta sumando
Ahora veremos la foto
Y ahora escribiremos
Buscaremos el nombre del Label que esta al lado derecho de el Label que se llama "Juego", en mi caso el Label2.
Lo que aremos es incrementar los juegos que se han jugado.
Label2.Text = Label2.Text + 1
Ya que terminamos con el 1er IF, seguimos con los IF que faltan que exactamente lo mismo, solo les deben cambiar las Operaciones Matemáticas de donde estaba " + " a " - " a " * " y así sucesivamente. Excepto el contador del Label2, que no se tocara mas.
Aquí les muestro la foto
Ya culminamos con el Boton "Nuevo Numero" ahora buscaremos el Boton de "Resultado"
Segundo Botón
Declararemos una variable Double:
1) Resultado
Teniendo esta variable ahora en este caso usaremos "Try"
Ahora aremos una decicion logica usando IF
If Textbox3.Text = TotalUser Then (Que es el Textbox donde se pondra el resultado, que estará bien)
Para que el usuario sepa que saco esa respuesta buena pondremos un MessageBox
Msgbox("Bien!!" , Title:="Correcto" )
Significa: Title:= " " significa el titulo que se le dara Arriba en el MsgBox.
Bajo eso pondremos
Label4.Text = Label4.Text + 1 (Esta aumentando el numero de buenas que ha sacado el Ususario)
Despues Aremos un Elseif
Elseif IsNumeric(Textbox3.Text <> TotalUser) then (Aqui preguntara si el resultado esta mal)
Significa: IsNumeric() En este caso estamos preguntado que si el valor que tiene Textbox4 y TotalUser es numerico. Tambien IsNumeric() se puede utilizar como Booleana o Boolean utilizando True o False.
Ahora escribiremos un MessageBox que diga que el resultado estuvo mal y mostrara el resultado correcto.
MsgBox("Mal!! El resultado es " & TotalUser, Title:="Incorrecto" )
Y para culminar con el IF
Label6.Text = Label6.Text + 1 (Que esta aumentando las malas)
Despues escribiremos un mensaje de Error por si ocurriera alguno.
Catch ex As Exception
MsgBox("Solo puede poner Numeros en el resultado, ha perdido la oportunidad de contestar este problema matematico. Precione Nuevo Numero.", MsgBoxStyle.Critical, Title:="Error" )
End Try
Y para Terminar con el Botón Numero 2
Escribimos esta ecuación que el resultado sera el porciento del usuario de acuerdo las buenas y los juegos jugados y usaremos el Label7 para que se muestre el resultado.
Resultado = (Label4.Text / Label2.Text)
Label7.Text = Math.round(Resultado * 100)
Ahora veremos la foto del Boton Numero 2
Y listo, Ya pueden Usar su juego con números aleatorios.
Este programa fue echo por mi para que las personas (incluyéndome) practiquen las matemáticas.
A petición de uno de los visitantes, subi esta foto, para que vean como queda.
Gracias por la sugerencia Josetu2 y gracias a MrsTroll por lo del codigo, lo estare usando en los proximos post.
Si hubiese algún Error, díganme y les contestare.
Y aqui les dejo algunos de mis pequeños programas que eh subido a Taringa. Y tengo Este mismo pero con varias cosas adicionales. Disfrútenlos y Éxito.
___________________________________________________________________________________
Tutoriales:
1) Tutorial 1 >>
2) Tutotial 2 >>
3) Tutorial 3 >>
4) Tutorial 4 >>
5) Tutorial 5 >>
