Simulador de Máquinas de Turing
Este proyecto es una aplicación web que simula el comportamiento de dos tipos de Máquinas de Turing: una Máquina de Turing Universal y una Máquina de Turing No Determinista. La aplicación está desarrollada con Angular v18.2.0 y utiliza Angular Material v18.2.1para el diseño y los estilos.
Características
- Simulación de Máquina de Turing Universal: Permite emular cualquier otra máquina de Turing mediante una descripción de su tabla de transición.
- Simulación de Máquina de Turing No Determinista: Ejecuta máquinas de Turing que pueden tomar múltiples caminos de ejecución.
- Interfaz intuitiva: Diseñada con Angular Material para una experiencia de usuario limpia y moderna.
- Selección de máquinas: El usuario puede seleccionar la máquina que desea simular y configurar las entradas y estados iniciales.
Tecnologías utilizadas
- Angular v18.2.0: Framework para la construcción de la aplicación.
- Angular Materia v18.2.1: Librería de componentes de UI basada en Material Design.
- TypeScript: Lenguaje de programación utilizado en Angular.
- HTML/CSS: Para la estructura y el estilo básico de la aplicación.
Requisitos previos
Antes de ejecutar el proyecto, asegúrate de tener instalado lo siguiente:
- Node.js v16 o superior
- Angular CLI v18
- npm o yarn para la gestión de dependencias
Instalación
Sigue estos pasos para instalar y ejecutar el proyecto localmente:
-
Clona el repositorio:
bash
git clone https://github.com/DRMiguel25/Proyecto-Maquinas-de-Turing.git
-
Navega al directorio del proyecto:
bash
cd proyectoMaquinaTuring
-
Instala las dependencias:
bash
npm install
-
Inicia la aplicación:
bash
ng serve
-
Abre tu navegador en http://localhost:4200/ para ver la aplicación en acción.
Acceder a través de Netlify
Abre tu navegador y accede a https://maquinasdeturing.netlify.app/
Uso
- Selecciona el tipo de Máquina de Turing que deseas simular (Universal o No Determinista).
- Introduce la configuración inicial, como la cinta, el estado inicial y la tabla de transición.
- Ejecuta la simulación para ver cómo la máquina procesa la entrada.
Licencia
Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.