Пример #1
0
        public void fileMaquinaTuring(string lugar)
        {
            abrirArquivo  abrir   = new abrirArquivo();
            List <String> arquivo = abrir.abrir(lugar);

            inicial.estado = arquivo[0];
            string[] words = arquivo[1].Split(',');
            for (int i = 0; i < words.Length; i++)
            {
                Estados aux = new Estados();
                aux.estado = words[i];
                finais.Add(aux);
            }
            branco = arquivo[2];
            inicio = arquivo[3];
            for (int i = 4; i < arquivo.Count; i++)
            {
                string[]   trans = arquivo[i].Split(',');
                Transicoes aux   = new Transicoes();
                aux.From        = trans[0];
                aux.To          = trans[4];
                aux.readSymbol  = trans[1];
                aux.writeSymbol = trans[2];
                aux.direction   = trans[3];
                transicoes.Add(aux);
            }
        }
Пример #2
0
        public void fileMaquinaTuring()
        {
            abrirArquivo  abrir   = new abrirArquivo();
            List <String> arquivo = abrir.abrir("C:\\Users\\Matheus Bento\\Desktop\\Turing Machine\\Turing Machine\\Turing\\TuringMachine\\obj\\Release\\entrada\\duplobal.mt");

            Console.Write("INICIAL -> ");
            inicial.estado = arquivo[0];
            Console.Write(inicial.estado);
            string[] words = arquivo[1].Split(',');
            Console.Write("\nESTADOS FINAIS -> \n");
            for (int i = 0; i < words.Length; i++)
            {
                Estados aux = new Estados();
                aux.estado = words[i];
                Console.Write(aux.estado + " | ");
                finais.Add(aux);
            }
            branco = arquivo[2];
            Console.Write("\n" + "SIMBOLO BRANCO -> " + branco + "\n");
            inicio = arquivo[3];
            Console.Write("\n" + "SIMBOLO DE INICIO DE FITA -> " + inicio + "\n");
            Console.Write("\nTRANSICOES -> \n");
            for (int i = 4; i < arquivo.Count; i++)
            {
                Console.Write(arquivo[i] + "\n");
                string[]   trans = arquivo[i].Split(',');
                Transicoes aux   = new Transicoes();
                aux.From        = trans[0];
                aux.To          = trans[4];
                aux.readSymbol  = trans[1];
                aux.writeSymbol = trans[2];
                aux.direction   = trans[3];
                transicoes.Add(aux);
            }
        }
Пример #3
0
        public void fileEntrada()
        {
            abrirArquivo  abrir   = new abrirArquivo();
            List <String> arquivo = abrir.abrir("C:\\Users\\Matheus Bento\\Desktop\\Turing Machine\\Turing Machine\\Turing\\TuringMachine\\obj\\Release\\entrada\\duplobal.in");

            fita.Add(inicio);
            for (int i = 0; i < arquivo[0].Length; i++)
            {
                fita.Add(arquivo[0][i] + "");
            }
            fita.Add(branco);
            foreach (var a in fita)
            {
                Console.Write(a + "\n");
            }
        }
Пример #4
0
        public void fileEntrada(string lugar)
        {
            abrirArquivo  abrir   = new abrirArquivo();
            List <String> saida   = new List <String>();
            List <String> fita    = new List <String>();
            List <String> arquivo = abrir.abrir(lugar);

            for (int y = 0; y < arquivo.Count; y++)
            {
                fita.Clear();
                fita.Add(inicio);
                for (int i = 0; i < arquivo[y].Length; i++)
                {
                    fita.Add(arquivo[y][i] + "");
                }
                //Console.WriteLine("FITA POS " + y + " : " + arquivo[y]);
                fita.Add(branco);
                string aux = inicioMaquina(fita);
                saida.Add(aux);
            }
            fileSaida(saida);
        }