1. Pascal / Говнокод #9812

    +94

    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
    var
       one, two, free, four:string;
    begin
       one:=sLabel14.Caption+slabel14.caption;
       two:=sLabel1.Caption+slabel15.caption;
       free:=sLabel10.Caption+slabel16.caption;
       four:=sLabel7.Caption+slabel17.caption;
    
       if ((one = two) or (one = free) or (one = four)
       or (two = one) or (two = free) or (two = four)
       or (free = one) or (free = two) or (free = four)
       or (four = one) or (four = two) or (four = free))
       then begin
           showmessage('Значения должны быть различными');
       end
       else begin
           showmessage('Успешно сохранено');
       end;

    Ну не лол?

    Запостил: penkovsky1, 29 Марта 2012

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

    • > (four = free)
      Бесплатное четыре!
      > (one = four)
      > (four = one)
      Недостаточно трудолюбивый копипастер. Достаточно трудолюбивый сделал бы все 16 условий.
      Ответить
    • [offpost]google выпустил первый релиз своего Go. Первое впечатление - это серобурмалиновая диффузия...[/offpost]
      Ответить
      • Не нужен, хотя бы потому что дополнительный крючок гугла. Другая поделка (недоось) Пайка интереснее.
        Ответить
    • транзитивность? не не слышал
      Ответить
    • ...а вот я не понял.
      вот такая конструкция IF - отрабатывает В РАЗЫ быстрее цикла проверки.
      ...Или никто не пытался оптимизировать код по скорости исполнения???
      Ответить
      • Такой if работает где-то в два раза дольше цикла проверки.
        Ответить
        • с целочисленными сравнениями, такое было бы раза в 4 быстрее цикла.
          со строковыми - навскидку процентов на 20-50.
          хотя, учитывая showmessage... дурацкая затея, конечно.
          Ответить
          • Разворачивать циклы должен компилятор, а не программист.
            Ответить
          • Тут сравнений в два раза больше, чем должно быть. А операции по сдвигу счётчика цикла - это мелочи по сравнению со сравнениями.
            Ответить
            • да это-то понятно.
              сомневаюсь, что автор цикл написал бы без лишних сравнений.
              Ответить
              • А какой цикл в данном случае вообще можно было применить?
                Ведь сравнивать необходимо не элементы массива, а отдельные переменные.
                Ответить
                • До ты же ламер ны те умееш нопремую оброщатся к памети

                  if PString(PChar(@one) + i * sizeof(String))^ = PString(PChar(@one) + j * sizeof(String))^
                  Ответить
                  • Нет, это не есть хороший стиль программирования, а всего лишь другой говнокод.
                    Так что в данном случае, при условии, что добавлять новые переменные не потребуется, незачёт кодер получает только за банальное непонимание/незнание коммутативности.
                    Ответить
    • показать все, что скрытоvanished
      Ответить

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