Juego del Gato/ Tres en Raya/ Tic Tac Toe en Android Studio con Lenguaje de Programación Java.

Imagen
Juego del Gato/ Tres en Raya/ Tic Tac Toe en Android Studio con Lenguaje de Programación Java. MainActivity.java package com.anzal.gato; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.view.View; public class MainActivity extends AppCompatActivity {     @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);     }     //Método para queal oprimir el botón cambie de ventana     public void Tablero(View view){         Intent WebView= new Intent(this,Tablero.class);         startActivity(WebView);     }     //Método del botón salir     public void Salir(V...

Calculadora Básica con Lenguaje de Programación Prolog en SWI-Prolog con Interface Gráfica. Operaciones suma, resta, multiplicación y división.

Calculadora Básica con Lenguaje de Programación Prolog en SWI-Prolog con Interface Gráfica. Operaciones suma, resta, multiplicación y división.


Como ya hemos visto se pueden hacer una calculadora básica en SWI-Prolog con interface gráfica y en Lenguaje de Programación Prolog, ahora en esta publicación te enseño como se hace con un botón de multiplicación y división.




Vamos a seguir editando nuestro código anterior, añadimos una claúsula multiplicación y otra división con los valores correspondientes.



Junto con ello creamos los botones y pasamos los valores necesarios.





Y por último añadimos a la ventana los objetos.





Guardamos en menú superior File, Save Buffer.





Y pot último compilamos en menú superior Compiler, Compiler Buffer.





Una vez terminado vamos a poder empezar a utilizar la calculadora básica que hemos creado.









El código del proyecto es el siguiente.

%Vamos a llamar a nuestra libreria grafica
:- use_module(library(pce)).

% Vamos a crear nuestra clausula Suma que va a recibir dos parametros,
% lo que son número1, número2 y el resultado por último que es otro
% parametro que maneja
% Además de recibir los parametros utilizamos atom_number para convertir
% la cadena que hemos leído a número, después realizamos la suma
% Resultado es la suma de los número que hemos convertidos. Y por último
% enviamos el resultado.
suma(N1,N2,R):- atom_number(N1,N1n), atom_number(N2,N2n), Resultado is N1n + N2n, send(R,selection,Resultado).
%Lo mismo podemos hacer con la resta
resta(N1,N2,R):- atom_number(N1,N1n), atom_number(N2,N2n), Resultado is N1n - N2n, send(R,selection,Resultado).
% En el caso de la resta pasa lo mismo pero con haciendo la respectiva
%Creamos la claúsula multiplicación
multiplicacion(N1,N2,R):- atom_number(N1,N1n), atom_number(N2,N2n), Resultado is N1n * N2n, send(R, selection, Resultado).
%Creamos la claúsula división
division(N1, N2, R):- atom_number(N1, N1n), atom_number(N2, N2n), Resultado is N1n / N2n, send(R, selection, Resultado).
% operación
%Ahora vamos a crear nuestra interface gráfica
%
%new = nuevo objeto
%Ventana = Nombre de nuestro objeto
%dialog = tipo de objeto
%Calculadora = titulo que llevara nuestra ventana
:-new(Ventana, dialog('Calculadora')),
    %Todo lo que nuestra ventana llevará dentro

    %new = Nuevo objeto
    %Txt_titulo = Nombre de nuestro objeto
    %label = tipo de objeto
    %nombre = variable donde se guardará el string
    %Calculadora Básica = string del objeto
    new(Txt_titulo, label(nombre,'Calculadora Básica')),


    %new = Nuevo objeto
    %Btn_salir = nombre de nuestro objeto
    %button = tipo de objeto boton
    %message = se comunica con sistema
    %Ventana = objeto que va a manipular
    %destroy = instruccion que se dará al sistema
    new(Btn_salir, button('Salir', message(Ventana,destroy))),

    %new = Nuevo objeto
    %Item_num1 = Nombre de nuestro objeto
    %text_item = Tipo de objeto
    %Primer número =  texto que llevará dentro nuestro objeto
    new(Item_num1, text_item('Primer Número')),

    %new = Nuevo objeto
    %Item_num2 = Nombre de nuestro objeto
    %text_item = Tipo de objeto
    %Primer número =  texto que llevará dentro nuestro objeto
    new(Item_num2, text_item('Segundo Número')),


    %new = Nuevo objeto
    %Item_num1 = Nombre de nuestro objeto
    %text_item = Tipo de objeto
    %Primer número =  texto que llevará dentro nuestro objeto
    new(Item_resl, text_item('Resultado')),

    %new = Nuevo objeto
    %Btn_sumar = nombre de nuestro objeto
    %button = tipo de objeto boton
    %message = se comunica con sistema
    %@prolog = se va a comunicar con el sistema de prolog
    %suma = hace referencia a la claúsula suma
    %Item_num1?selection = hace referencia a pasar el valor dentro del text_item a la claúsula suma como en una función
    %Item_num2?selection = pasa el valor a la clapusula suma
    %Item_resl = pasa el valor que se recupera despues de ejecutar suma
    new(Btn_suma, button('Suma', message(@prolog, suma, Item_num1?selection, Item_num2?selection, Item_resl))),

    %new = Nuevo objeto
    %Btn_sumar = nombre de nuestro objeto
    %button = tipo de objeto boton
    %message = se comunica con sistema
    %@prolog = se va a comunicar con el sistema de prolog
    %suma = hace referencia a la claúsula suma
    %Item_num1?selection = hace referencia a pasar el valor dentro del text_item a la claúsula resta como en una función
    %Item_num2?selection = pasa el valor a la clapusula suma
    %Item_resl = pasa el valor que se recupera despues de ejecutar resta
    new(Btn_resta, button('Resta', message(@prolog, resta, Item_num1?selection, Item_num2?selection, Item_resl))),

    %Vamos a crear un boton para la multiplicación siguiendo el código anterior
    new(Btn_multiplicacion, button('Multiplicar', message(@prolog, multiplicacion, Item_num1?selection, Item_num2?selection, Item_resl))),


    %Ahora vamos  a crear el boton de división
    new(Btn_division, button('Dividir', message(@prolog, division, Item_num1?selection, Item_num2?selection, Item_resl))),

    %send = manipular de objeto
    %Ventana =  objeto donde se va a manipular
    %append = intrucción para añadir
    %Txt_titulo = objeto que se manipula
    send(Ventana, append, Txt_titulo),


    %send = manipular de objeto
    %Ventana =  objeto donde se va a manipular
    %append = intrucción para añadir
    %Item_num1 = objeto que se manipula
    send(Ventana, append, Item_num1),


    %send = manipular de objeto
    %Ventana =  objeto donde se va a manipular
    %append = intrucción para añadir
    %Item_num2 = objeto que se manipula
    send(Ventana, append, Item_num2),


    %send = manipular de objeto
    %Ventana =  objeto donde se va a manipular
    %append = intrucción para añadir
    %Item_resl = objeto que se manipula
    send(Ventana, append, Item_resl),


    %send = manipular de objeto
    %Ventana =  objeto donde se va a manipular
    %append = intrucción para añadir
    %Btn_suma = objeto que se manipula
    send(Ventana, append, Btn_suma),


    %send = manipular de objeto
    %Ventana =  objeto donde se va a manipular
    %append = intrucción para añadir
    %Btn_resta = objeto que se manipula
    send(Ventana, append, Btn_resta),

    %Vamos a añadir el boton multiplicar
    send(Ventana, append, Btn_multiplicacion),

    %vamos a añadir el boton  dividir
    send(Ventana, append, Btn_division),


    %send = manipular de objeto
    %Ventana =  objeto donde se va a manipular
    %append = intrucción para añadir
    %Btn_salir = objeto que se manipula
    send(Ventana, append, Btn_salir),


    %send = manipular de objeto
    %Ventana =  objeto donde se va a manipular
    %open = intrucción para abrir ventana
    send(Ventana,open).






Descarga los archivos del proyecto en el siguiente: 

Enlace

Comentarios

Entradas populares de este blog

Juego del Gato/ Tres en Raya/ Tic Tac Toe en Android Studio con Lenguaje de Programación Java.

Calculadora Básica en SWI-Prolog 8.4.2 con Prolog.