Beispiel #1
0
        public static int kontrol(string str, Stack yeni)
        {
            int i = 0;
            while (true)
            {
                if (str[i] == '<' && str[i + 1] != '/')
                {
                    if (str[i + 2] != '>')
                        return 0;
                    else
                        yeni.push(char.ToString(str[i+1]));
                    i = i + 3;
                }
                else if (str[i] == '<' && str[i + 1] == '/')
                {
                    if (str[i + 3] != '>')
                        return 0;
                    else
                    {
                        if (yeni.peek() != char.ToString(str[i + 2]))
                            return 0;
                        else
                            yeni.pop();
                    }
                    i = i + 4;
                }
                else
                    i++;
                if (i == (str.Length))
                {
                    if (yeni.isempty())
                        return 1;
                    else
                        return 0;

                }
            }
        }
Beispiel #2
0
 static void Main()
 {
     string str = "";
     int k;
     Stack stk = new Stack(100);
     str = Okuma.oku("C:/kaynak.txt");
     k = kontrol(str, stk);
     if (k == 0)
     {
         Console.WriteLine("Kaynak dosyanin bicimleme etiketleri hatalidir, kontrol ediniz.");
     }
     else
         yazdir(str);
     Console.ReadLine();
 }