1. C++ / Говнокод #16465

    +51

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    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
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    void __fastcall TForm3::Button1Click(TObject *Sender)
    {
    AnsiString a1,b1,c1,d1,a2,b2,c2,d2,a3,b3,c3,d3,a4,b4,c4,d4,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10;
    a1=Edit1->Text;
    b1=Edit5->Text;
    if (a1==b1) a1>>r1;
    else "n">>r1;
    a2=Edit2->Text;
    b2=Edit6->Text;
    if (a2==b2) a2>>r2;
    else "n">>r2;
    a3=Edit3->Text;
    b3=Edit7->Text;
    if (a3==b3) a3>>r3;
    else "n">>r3;
    a4=Edit4->Text;
    b4=Edit8->Text;
    if (a4==b4) a4>>r4;
    else "n">>r4;
    c1=Edit9->Text;
    d1=Edit13->Text;
    if (c1==d1) c1>>r5;
    else "n">>r5;
    c2=Edit10->Text;
    d2=Edit14->Text;
    if (c2==d2) c2>>r6;
    else "n">>r6;
    c3=Edit11->Text;
    d3=Edit15->Text;
    if (c3==d3) c3>>r7;
    else "n">>r7;
    c4=Edit12->Text;
    d4=Edit15->Text;
    if (c4==d4) c4>>r8;
    else "n">>r8;
     }
    //---------------------------------------------------------------------------
     
    void __fastcall TForm3::Label6Click(TObject *Sender)
    {
    int r1,r2,r3,r4,r5,r6,r7,r8;
    Label6->Caption=r1;
    Label7->Caption=r2;
    Label8->Caption=r3;
    Label9->Caption=r4;
    Label10->Caption=r5;
    Label11->Caption=r6;
    Label12->Caption=r7;
    Label13->Caption=r8;
     }

    По словам "очевидца", код сравнивает посимвольно две строки и пропускает не совпавшие символы

    Запостил: aNNiMON, 03 Августа 2014

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

    • > void __fastcall TForm3::Button1Click
      Уже смешно.
      Ответить
    • >>"очевидца"

      Свидетели Иеговы крестов?
      Ответить
    • Судя по описание это должно было работать так

      https://ideone.com/Gnvp4u
      Ответить
      • Чёрт, я добавил всего одно "ко" и всё сломал.
        https://ideone.com/kiQdsw
        Ответить
        • Первое слово должно быть короче Мне лень было писать защиту от тебя-дурака
          Ответить
          • А, значит я не на то нарвался. Я хотел по-другому сделать: https://ideone.com/HFFdwv
            Правда, формулировка "очевидца" слишком размыта, а код лень читать, чтобы понять, как должно быть.
            Ответить
            • судя по тому, что там 15 эдитов - читать не стоит. Уверен, делает его код совсем другое, я тупо сделал то, о чем говорилось в комменте как это понял я)
              Ответить
              • Тут с симметрией проблема. Скажем, было "кобра" и "кобра", стало "кобра".
                Потом к одной кобре добавили "ко". Что делать алгоритму?
                "ко|бра", "ко|кобра"
                Встретить и удалить "бра" из первой строки, не найти соответствий и вернуть "ко", или стереть "ко" из второй строки и вернуть "кобра"?
                А ещё можно придумать пример "ВасяПетя", "ПетяВася", который должен вернуть либо "Петя", либо "Вася". Это печалит меня.
                Ответить
                • Тз нихуя не понятно. Мой алгоритм тупо отбрасывает все несовпадающие. Потому метод и называется StupidStringOperation)
                  Ответить
                  • Хм, действительно, он на Васях-Петях только два "я" оставляет. Сколько же способов истолковать то описание существует...
                    Ответить
                    • Был бы автор - он бы пояснил.

                      http://www.youtube.com/watch?v=XoEx-Skki0I
                      Ответить
                • Кококобра, все скорее в раздел по C++.
                  Ответить
    • Пересылаем быстро аргумент регистром и не используем его - этот девелопер гений оптимизации.
      Ответить
      • Уж первую то строчку билдер сгенерил, девелопер тут не при чем.
        Ответить

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