Ejemplo n.º 1
0
        static void palindromo()
        {
            PilaLineal pilaChar;
            bool       esPalindromo;

            String pal;
            string espacio = "";

            try
            {
                pilaChar = new PilaLineal();
                Console.WriteLine("\tTeclee una palabra para ver si es PALINDROMO ");
                pal = Console.ReadLine();
                pal.ToLower();

                int len = pal.Length;
                for (int i = 0; i <= len - 1; i++)
                {
                    if (pal[i] != ' ')
                    {
                        espacio = espacio.ToLower() + pal.ToLower()[i];
                        espacio = Regex.Replace(espacio.Normalize(NormalizationForm.FormD), @"[^a-zA-z0-9 ]+", "");
                    }
                }


                //creamos la pila con los chars
                for (int i = 0; i < espacio.Length;)
                {
                    Char c;
                    c = espacio[i++];
                    pilaChar.insertar(c);
                }
                //comprueba si es palindromo
                esPalindromo = true;
                for (int j = 0; esPalindromo && !pilaChar.pilaVacia();)
                {
                    Char c;
                    c            = (Char)pilaChar.quitarChar();
                    esPalindromo = espacio[j++] == c; //evalua si la pos es igual
                }
                pilaChar.limpiarPila();
                if (esPalindromo)
                {
                    Console.WriteLine($"La palabra {espacio} es palindromo");
                }
                else
                {
                    Console.WriteLine($"Nel, no es PALINDROMO");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"ups error {error.Message}");
            }
        }
Ejemplo n.º 2
0
        static void palindromo()
        {
            PilaLineal      pilaChar;
            bool            esPalindromo;
            String          pal;
            PilaListaSimple listaEnla = new PilaListaSimple();



            try
            {
                pilaChar = new PilaLineal();
                Console.WriteLine("Teclee una palabra para ver si es ");
                pal = Console.ReadLine();

                //creamos la pila con los chars


                string reemplazada      = System.Text.RegularExpressions.Regex.Replace(pal, @"\s", "");
                string convertida       = reemplazada.ToLower();
                Regex  reg              = new Regex("[^a-zA-Z0-9]");//método
                string textonoramlizado = convertida.Normalize(NormalizationForm.FormD);
                string textoSA          = reg.Replace(textonoramlizado, "");



                for (int i = 0; i < textoSA.Length;)
                {
                    Char c;
                    c = textoSA[i++];//textoSA variable que evaluara si es polindromo o no
                    listaEnla.insertar(c);
                    //pilaChar.IsWhiteSpace(c);
                }
                //comprueba si es palindromo
                esPalindromo = true;
                for (int j = 0; esPalindromo && !pilaChar.pilaVacia();)
                {
                    Char c;
                    c            = (Char)pilaChar.quitarChar();
                    esPalindromo = pal[j++] == c; //evalua si la pos es igual
                }
                pilaChar.limpiarPila();
                if (esPalindromo)
                {
                    Console.WriteLine($"La palabra {pal} es palindromo");
                }
                else
                {
                    Console.WriteLine($"Nel, no es ");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"ups error {error.Message}");
            }
        }
Ejemplo n.º 3
0
        static void palindrome_Queue()
        {
            PilaLineal pilaChar;
            bool       esPalindromo;
            string     pal;

            try
            {
                pilaChar = new PilaLineal();
                Console.WriteLine("Teclee una palabra para ver si es");
                pal = Console.ReadLine();


                pal = pal.ToLower().Replace(" ", String.Empty); //Elimina los espacios
                Console.WriteLine("Sin espacios: " + pal);
                //aca se eliminan las tildes
                pal = DeleteSpecialCharacters(pal);
                Console.WriteLine("Sin Tildes: " + pal);//Eliminamos Tildes



                //creamos la pila con los chars
                for (int i = 0; i < pal.Length;)
                {
                    char c;
                    c = pal[i++];
                    pilaChar.insertar(c);
                }
                //Comprueba si es palindrome
                esPalindromo = true;
                for (int j = 0; esPalindromo && !pilaChar.pilaVacia();)
                {
                    char c;
                    c            = (char)pilaChar.quitarChar();
                    esPalindromo = pal[j++] == c; //Evalua igualdad
                }

                pilaChar.limpiarPila();
                if (esPalindromo)
                {
                    Console.WriteLine("La palabra es palindromo");
                }
                else
                {
                    Console.WriteLine($"Nel, no es");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"upss error {error.Message}");
            }
        }
Ejemplo n.º 4
0
        //PALINDROMO

        //PILA LINEAL
        // eliminamos caracteres especiales
        //pasa quitar las tildes
        static void palindromo()
        {
            PilaLineal pilaChar;
            bool       esPalindromo;
            string     pal;

            try
            {
                pilaChar = new PilaLineal();
                Console.WriteLine("Ingrese una palabra para someterla a evaluacion");
                pal = Console.ReadLine();


                pal = pal.ToLower().Replace(" ", String.Empty); //permite eliminar todos los espacios entre las palabras
                Console.WriteLine("Sin espacios: " + pal);
                //aca se eliminan las tildes
                pal = eliminarCaracteresEspeciales(pal);
                Console.WriteLine("Sin Tildes: " + pal);//muestra resuldado sin tildes


                //creamos la pila chars
                for (int i = 0; i < pal.Length;)
                {
                    char c;
                    c = pal[i++];
                    pilaChar.insertar(c);
                }
                //verifica si es palindromo o no
                esPalindromo = true;
                for (int j = 0; esPalindromo && !pilaChar.pilaVacia();)
                {
                    char c;
                    c            = (char)pilaChar.quitarChar();
                    esPalindromo = pal[j++] == c; //Evalua igualdad
                }

                pilaChar.limpiarPila();
                if (esPalindromo)
                {
                    Console.WriteLine("La palabra es palindromo");
                }
                else
                {
                    Console.WriteLine("La palabra no es palindromo");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"tenemos error {error.Message}");
            }
        }//1
Ejemplo n.º 5
0
        public void palindromo()
        {
            PilaLineal pilaChar;
            bool       esPalindromo;

            try
            {
                pilaChar = new PilaLineal();
                Console.WriteLine("Teclee una palabra: ");
                String pal = "";
                //Quito los espacios y las letras con tilde
                pal = Regex.Replace(Console.ReadLine().Normalize(NormalizationForm.FormD), @"[^a-zA-z0-9]+", "")
                      + Regex.Replace(pal, @"\s", "").ToLower();

                for (int i = 0; i < pal.Length;)
                {
                    Char c;
                    c = pal[i++];
                    if (c != ' ')
                    {
                        pilaChar.insertar(c);
                    }
                }
                esPalindromo = true;
                for (int j = pal.Length - 1; esPalindromo && !pilaChar.pilaVacia();)
                {
                    char c;
                    c            = (char)pilaChar.quitarChar();
                    esPalindromo = pal[j--] == c;
                }
                pilaChar.limpiarPila();
                if (esPalindromo)
                {
                    Console.WriteLine($"la palabra {pal} es palindromo");
                }
                else
                {
                    Console.WriteLine("Nel no es");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"Upss error {error.Message}");
            }
        }
Ejemplo n.º 6
0
        static void pilindromo()
        {
            PilaLineal pilaChar;
            bool       esPalindromo;
            String     pal;

            try
            {
                pilaChar = new PilaLineal();
                Console.WriteLine("Teclee una palabra para ver si es ");
                pal = Console.ReadLine();

                //creamos la pila con los chars
                for (int i = 0; i < pal.Length;)
                {
                    Char c;
                    c = pal[i++];
                    pilaChar.insertar(c);
                }
                //comprueba si es palindromo
                esPalindromo = true;
                for (int j = 0; esPalindromo && !pilaChar.pilaVacia();)
                {
                    Char c;
                    c            = (Char)pilaChar.quitarChar();
                    esPalindromo = pal[j++] == c; //evalua si la pos es igual
                }
                pilaChar.limpiarPila();
                if (esPalindromo)
                {
                    Console.WriteLine($"La palabra {pal} es palindromo");
                }
                else
                {
                    Console.WriteLine($"Nel, no es ");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"ups error {error.Message}");
            }
        }
Ejemplo n.º 7
0
        //TAREA De EXPRESIONES
        public static void ejercicioExpresiones()
        {
            PilaLineal pilaExp;
            String     cadena;
            Boolean    eval;

            try
            {
                pilaExp = new PilaLineal();
                Console.WriteLine("Ingresa su expresion");
                cadena = Console.ReadLine();

                for (int i = 0; i < cadena.Length;)
                {
                    Char c;
                    c    = cadena[i];
                    eval = true;

                    if (cadena[i] == '(' || cadena[i] == '[' || cadena[i] == '{')
                    {
                        pilaExp.insertar(cadena[i]);
                    }
                    else
                    {
                        if (cadena[i] == ')')
                        {
                            c = (Char)pilaExp.quitarChar();

                            if (c != '(')
                            {
                                eval = false;
                            }
                        }
                        else
                        {
                            if (cadena[i] == ']')
                            {
                                c = (Char)pilaExp.quitarChar();
                                if (c != '[')
                                {
                                    eval = false;
                                }
                            }
                            else
                            {
                                if (cadena[i] == '}')
                                {
                                    c = (Char)pilaExp.quitarChar();
                                    if (c != '{')
                                    {
                                        eval = false;
                                    }
                                }
                            }
                        }
                    }
                }
                eval = true;
                for (int j = 0; eval && !pilaExp.pilaVacia();)
                {
                    Char c;
                    c    = (Char)pilaExp.quitarChar();;
                    eval = cadena[j++] == c;
                }
                pilaExp.limpiarPila();
                if (eval)
                {
                    Console.WriteLine("Espresion correcta :)" + cadena);
                }
                else
                {
                    Console.WriteLine("Expresion Incorrecta :(");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine("Error = " + error);
            }
        }