Você está na página 1de 4

Inteligencia artificial

Edgar Quimbayo Mojica Andrés Cardozo García


Código: 201510012601 Código: 201510021601 23 de septiembre de 2018

Programación de una Red Neuronal

Código fuente red neuronal del juego piedra papel o tijera el montaje de este programa se realizó
en java netbeans.

Utilizamos la clase import java.util.Scanner que nos facilita la lectura de datos que pediremos
como entrada del proceso de nuestra neurona en este caso los registros de entrada son sencillos
ya que nuestra red neuronal va a simular el juego de piedra papel o tijera.

Definimos las variables que vamos a utilizar en este caso serán tipo String ya que son un carácter
de cadenas lo que le vamos a pedir al usuario que ingrese y se guardaran en las siguientes
variables “usuario” en esta variable se van a guardar los datos que ingrese el usuario y en
“ordenador” las respuestas aleatorias que va a generar en la capa oculta. Tenemos que crear un
objeto de la clase Scanner asociado al dispositivo de entrada. Si el dispositivo de entrada es el
teclado escribiremos: Scanner sc = new Scanner(System.in); Se ha creado el objeto sc asociado al
teclado representado por System.in Una vez hecho esto podemos leer datos por teclado.

Luego se le muestra al usuario las opciones que tiene para escoger y que digite alguna de ellas

System.out.println("\npiedra, papel o tijera..."); y le pedimos que digite una opción

Usuario = sc.next(); la maquina procede a leer el string que el usuario digito

if (!usuario.equals("piedra") && !usuario.equals("papel") && !usuario.equals("tijera")) {

System.out.println("\nopción no válida\n"); aquí le decimos a la máquina que coja y


compare los datos que el usuario va a ingresar y en caso de que sea diferente a lo que le está
pidiendo que ingrese termine el proceso y le diga que la opción no es valida

} else { de lo contrario

aleatorio = (byte)(Math.random() * 3); nuestro byte aleatorio hace un ramdon es decir en


su capa oculta el hace los procedimientos de nuestro ordenador y los definimos con un switch
case dándole los parámetros en cada caso a nuestro ordenador es decir ingresarle los parámetros
de entrada que este tiene (piedra, papel o tijera)

System.out.println("ordenador: " + ordenador); en esta línea mostramos por pantalla el dato


randóm que tomo nuestro ordenador y lo llamamos con +ordenador y lo mostramos por pantalla
Inteligencia artificial
Edgar Quimbayo Mojica Andrés Cardozo García
Código: 201510012601 Código: 201510021601 23 de septiembre de 2018

if(usuario.equals(ordenador)) { System.out.println("\nempate\n"); preguntamos si lo que digito el


usuario es igual a la respuesta que se ha elegido aleatoriamente en la capa oculta nos muestre que
hubo un empate

en caso de que no sea igual a lo que el usuario ingreso procedemos hacer unas validaciones
verídicas comparando lo que se selecciona aleatoriamente y lo que el usuario ingresa y en caso de
que sean distintas nos procede hacer unos procesos y mostrara por pantalla si el usuario gana o
pierde la partida con la maquina o ordenador .

Código fuente explicación línea por línea


package redneuronal;
import java.util.Scanner;
// Utilizamos esta clase para leer los datos que se van a ingresar en el string
public class Redneuronal { // nombre del programa
public static void main(String[] args) {
byte aleatorio; // variable aleatoria
String usuario = "", ordenador = "";
// variables que utiliozaremos en el proceso de la red neuronal
Scanner sc = new Scanner(System.in);
//Dispositivo de entrada de los datos
System.out.println("\npiedra, papel o tijera...");
// mensaje mostrandole al usuario las opciones que debe digitar para jugar
System.out.print("tu opción: ");
// usuario ingresa alguna de las opciones mostyradas anteriormente

usuario = sc.next();
//si usuario digita algo distinto a piedra, papel o tijera
if(!usuario.equals("piedra") && !usuario.equals("papel") && !usuario.equals("tijera")) {
// le mostrara que la opcion que eligio no es valida
System.out.println("\nopción no válida\n");
}
// de lo contrario
else {
// utilizamos la clase math.random y utilizamos un shitch case para guardar
// los datos aleatorios a el ordenador
aleatorio = (byte)(Math.random() * 3);
switch (aleatorio) {
case 0:
Inteligencia artificial
Edgar Quimbayo Mojica Andrés Cardozo García
Código: 201510012601 Código: 201510021601 23 de septiembre de 2018
ordenador = "piedra";
break;
case 1:
ordenador = "papel";
break;
case 2:
ordenador = "tijera";
break;
}
// si el usuario ingresa alguno de las opciones y si son iguales
// sera un empate
System.out.println("ordenador: " + ordenador);
if(usuario.equals(ordenador)) {
System.out.println("\nempate\n");
}
// de lo contrario
else {
// si el usuario escribe piedra y el ordenador aleatoriamente saca papel
// o el usuario ingresa papel y el ordenador aleatoriamente tijera
// o el usuario ingresa tijera y el ordenador aleatoriamente piedra
// le muestra al usuario que perdio
// de lo contrario le diremos a el usuario que ha ganado
if((usuario.equals("piedra") && ordenador.equals("papel"))
|| (usuario.equals("papel") && ordenador.equals("tijera"))
|| (usuario.equals("tijera") && ordenador.equals("piedra"))) {
System.out.println("\nperdiste\n");

else {

System.out.println("\nganaste\n");

}
}
Inteligencia artificial
Edgar Quimbayo Mojica Andrés Cardozo García
Código: 201510012601 Código: 201510021601 23 de septiembre de 2018

Bibliografía

http://www.solveet.com/exercises/Piedra-papel-o-tijera/347/solution-3304

http://puntocomnoesunlenguaje.blogspot.com/2012/08/java-scanner.html

Você também pode gostar