1. Лучший говнокод

    В номинации:
    За время:
  2. PHP / Говнокод #16434

    +155

    1. 1
    2. 2
    3. 3
    <?  if($sess_gr==1||$sess_gr==7||$sess_gr==11||$sess_gr==2||$sess_gr==3){?>
    <?      if($sess_gr==1||$sess_gr==7||$sess_gr==11||$sess_gr==2||$sess_gr==3){?><td rowspan="2"></td><?}?><td rowspan="2"></td>
    <?  }?>

    Контрольный IF, на случай, если PHP с первого раза не понял

    Khvorostin, 28 Июля 2014

    Комментарии (57)
  3. C# / Говнокод #13903

    +138

    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
    if ("A" == Key.ToUpper().Substring(startIndex, 1))
            num = 11L;
          else if ("B" == Key.ToUpper().Substring(startIndex, 1))
            num = 12L;
          else if ("C" == Key.ToUpper().Substring(startIndex, 1))
            num = 13L;
          else if ("D" == Key.ToUpper().Substring(startIndex, 1))
            num = 14L;
          else if ("E" == Key.ToUpper().Substring(startIndex, 1))
            num = 15L;
          else if ("F" == Key.ToUpper().Substring(startIndex, 1))
            num = 16L;
          else if ("0" == Key.ToUpper().Substring(startIndex, 1))
            num = 0L;
          else if ("1" == Key.ToUpper().Substring(startIndex, 1))
            num = 1L;
          else if ("2" == Key.ToUpper().Substring(startIndex, 1))
            num = 2L;
          else if ("3" == Key.ToUpper().Substring(startIndex, 1))
            num = 3L;
          else if ("4" == Key.ToUpper().Substring(startIndex, 1))
            num = 4L;
          else if ("5" == Key.ToUpper().Substring(startIndex, 1))
            num = 5L;
          else if ("6" == Key.ToUpper().Substring(startIndex, 1))
            num = 6L;
          else if ("7" == Key.ToUpper().Substring(startIndex, 1))
            num = 7L;
          else if ("8" == Key.ToUpper().Substring(startIndex, 1))
            num = 8L;
          else if ("9" == Key.ToUpper().Substring(startIndex, 1))
          {
            num = 9L;
          }

    Программист, писавший ЭТО считал себя очень большим талантом и был даже тех.диром, пока не уволили....))

    CraxyFright, 07 Октября 2013

    Комментарии (57)
  4. Куча / Говнокод #13663

    +116

    1. 1
    string pattern = @"\d\d?\d?\.\d\d?\d?\.\d\d?\d?\.\d\d?\d?";

    Регулярка для IP //_*)

    kegdan, 25 Августа 2013

    Комментарии (57)
  5. C++ / Говнокод #13410

    +6

    1. 1
    2. 2
    3. 3
    4. 4
    list* down_if_valid_me(void)
    {
    	return this ? this->down() : NULL;
    }

    LispGovno, 12 Июля 2013

    Комментарии (57)
  6. C++ / Говнокод #13022

    +31

    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
    for (int i = 1; i++; i <= 20) {
        if (ExecSQL(...) >= 0) {
            Ok_rekord=true;
            break;
        }
        if (i == 20) {
            if (ExecSQL(...) < 0) {
                // показываем сообщение об ошибке
            } else {
                Ok_rekord=true;
            }
        }
    }

    Вот такой вот цикл для повтора при дедлоке...

    bormand, 20 Мая 2013

    Комментарии (57)
  7. Perl / Говнокод #12011

    −148

    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
    #!/usr/bin/perl
    
    use strict;
    use warnings;
    use Data::Dumper;
    
    sub get0 { print("get0\n"); return 0; }
    sub get2 { print("get2\n"); return 2; }
    
    my ($a, $b) = (1, 1);
    $a ? $b = get0() : $b = get2();
    
    print Dumper({
        'a' => $a,
        'b' => $b,
    });

    Результат несколько обескураживает :)
    http://ideone.com/V60Y1L

    Elvenfighter, 27 Октября 2012

    Комментарии (57)
  8. C# / Говнокод #11013

    +156

    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
    private static BigInteger result = 0;
            static BigInteger F1 = 1;
            static BigInteger F2 = 1;
            static BigInteger provv;
            static BigInteger provv2;
    
            static void Main(string[] args)
            {
                for (BigInteger number = 3; result == 0; number++)
                {
                    provv2 = F2;
                    F2 = F2 + F1;
                    F1 = provv2; ;
                    if (HasProperty(F2.ToString()))
                        result = number;
                }
            }
    
            private static bool HasProperty(string number)
            {
                if (number.Length < 9)
                    return false;
                if (IsPandigital(number.Substring(0, 9)))
                    if (IsPandigital(number.Substring(number.Length - 9, 9)))
                        return true;
                return false;
            }
    
            private static bool IsPandigital(string result)
            {
                int repetitions;
                for (int count = 0; count < 9; count++)
                {
                    repetitions = 0;
                    for (int count2 = 0; count2 < 9; count2++)
                    {
                        if (result.ElementAt(count).ToString() == "0")
                            return false;
                        if (result.ElementAt(count).ToString() == result.ElementAt(count2).ToString())
                        {
                            repetitions++;
                            if (repetitions == 2)
                                return false;
                        }
                    }
                }
                return true;
            }

    http://projecteuler.net/problem=104
    http://projecteuler.net/thread=104;page=6



    >brute force approach,solved aproximately in 24 hours
    >solved aproximately in 24 hours
    >24 hours
    >24
    >hours


    Терпеливый, сука!

    TheHamstertamer, 17 Июня 2012

    Комментарии (57)
  9. C++ / Говнокод #8758

    +1001

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    bool f = true;
      short c0 = a0, c1 = a1, c2 = a2, c3 = a3;
      if (a0 < c1) { f = false; a0 = c1; a1 = c0 - c1; a2 = c1 - c2; a3 = c1 - c3; }
      if (a0 < c2) { f = false; a0 = c2; a1 = c2 - c1; a2 = c0 - c2; a3 = c2 - c3; }
      if (a0 < c3) { f = false; a0 = c3; a1 = c3 - c1; a2 = c3 - c2; a3 = c0 - c3; }
      if (f)                  { a0 = c0; a1 = c0 - c1; a2 = c0 - c2; a3 = c0 - c3; }

    Чувак не знает про else / else if. :(

    pewpew, 07 Декабря 2011

    Комментарии (57)
  10. Pascal / Говнокод #7896

    +112

    1. 1
    ТАЩИТЕ ЛЕСТНИЦУ!

    alexoy, 19 Сентября 2011

    Комментарии (57)
  11. Pascal / Говнокод #7345

    +155

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    procedure TForm1.Image1Click(Sender: TObject);
    begin
     sPictureName := Label2.Caption;
     Form2.Show;
    end;
    
    procedure TForm1.Image2Click(Sender: TObject);
    begin
     sPictureName := Label3.Caption;
     Form2.Show;
    end;

    Знаю конечно что уныло, но по моему делать одну процедуру из-за этого слишком геморройно. С тем же массивом из 2-х элементов хотя бы. Говно ли?

    Govnocoder#0xFF, 26 Июля 2011

    Комментарии (57)