Кресты / Говнокод #3325 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
bool S()
    {
        if(VD){std::cout<<"S";}
        bool b;
        if(D()==true) {b= true;}
        else {b=false;};
        return b;
    }

        bool D()
    {
        if(VD){std::cout<<" => D";}
        bool b=true;
        bool b1=DC();
        bool b2=DV();
        bool b3=DP();
        b=b1&b2&b3;
        return b;
    }
        bool DC()
    {
        if(VD){std::cout<<" => DC";}
        bool b=(M[i] == "CONST");
        i++;
        if (b && (COK()) && (M[i] == ";")) {b=true;}
        else {b=false;
        };
        i++;
        return b;
    }

Код из лабораторной работы студента 3-го курса Севастопольского национального технического университета, факультет Автоматики и вычислительной техники. Данный код является фрагментом синтаксического анализатора (методом рекурсивного спуска).

Запостил: Serega_M31 Serega_M31, (Updated )

Комментарии (9) RSS

  • Да, #*^@#$^#$, название функции о многом говорит))
    Ответить
  • Глупые и непонятные имена функций и переменных - это обычное явление.
    Лично меня убила логика:

    bool b;
    if(D()==true) {b= true;}
    else {b=false;};
    return b;


    Это гениально.
    Ответить
    • это как пох, тут этого говна тонны
      а вот это пздц M[i] == "CONST"
      я так понимаю M - это массив токенов?
      значит тут токенайзер отрабатывает до разбора.. гении проектирования, мля
      Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8