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

    +113

    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
    function FUNC(XD: TXMLDocument; L: ShortString): IXMLNode;
    var
      c: integer;
      ln: IXMLNode;
      s: ShortString;
    begin
      c:=0;
      while c <> XD.DocumentElement.ChildNodes.Count-1 do
      begin
        if VarToStr(XD.DocumentElement.ChildNodes[c].Attributes['id']) = L then
        begin
          ln:=XD.DocumentElement.ChildNodes[c];
          c:=XD.DocumentElement.ChildNodes.Count-1
        end else
        begin
          c:=c+1; {DEBUG(VarToStr(XD.DocumentElement.ChildNodes[c].Attributes['id'],L) } 
        end
      end;
      result:=ln
    end;

    К слову о невнимательности и "непримеченных слонах". Итак задачка: перебором найти в наборе данных нужную строку и вернуть в итоговый результате элемент набора данных. Используем код (выше). По невнимательности своей я допустил в алгоритме ошибку и функция работала несколько некорректно. Перед Вами её изначальный вариант, до исправления. Если вкратце, то баг заключался в том, что функция не читала последний элемент XML-документа. Называется, нефиг было мудрить с алгоритмом. По сути там надо убрать из двух мест "-1". Но пока я докапывался до сути ошибки, я написал тестовую функцию, сравнивающую две строки и выводящую результат сравнения в окно сообщения. Назовём её DEBUG. И... Началось непонятное. Функция выдавала сообщение, значит результаты, как видно по алгоритму, не равны, но она выдавала РАВЕНСТВО! Мозг взрывается, ломаются представления о математике и рациональности вообще!

    Xander_Bass, 18 Декабря 2010

    Комментарии (24)
  2. C# / Говнокод #4964

    +127

    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
    //TODO: Delete the comment after a successful test.
    
    var Client = new TcpClient();
    
    int a = num._.i.i.i.i.i;
    int b = num._.i.i.i.u.d;
    int c = (((num)(a + b)).l++.u+b).u.i.i;
    
    // port = 726
    int port = a + b + c;
    
    // ips = "127.0.0.1"
    string ips = ip._.i.u.i.i.i.u.d.d.d.s['.'].s['.'].s['.'].i.s;
    
    Client.Connect(ips, port);

    Very hard-hard code!

    vanished, 18 Декабря 2010

    Комментарии (29)
  3. PHP / Говнокод #4963

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $src = fopen("0.txt", 'r');
    while(!feof($src))
    {
            $line[] = fgets($src);
            $line++;
    }

    Интересно чему в конце будет равно $line? :)

    Xander_Bass, 17 Декабря 2010

    Комментарии (47)
  4. Java / Говнокод #4962

    +77

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    private String get4DigitRandom() {
            final int length = 4;
            int number = (int) (Math.random() * Math.pow(10, length));
            StringBuilder sb = new StringBuilder();
            for (int i = length; i > 0; i--)
                sb.append("" + (int) (number / Math.pow(10, i - 1)) % 10);
    
            return sb.toString();
        }

    yozh, 17 Декабря 2010

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

    +119

    1. 1
    public string flag = "no";

    Golovastick, 17 Декабря 2010

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

    +173

    1. 1
    AX=pow(A[i].r.get_x()*A[i].r.get_x(),0.5);

    Берем модуль числа.

    Taus, 17 Декабря 2010

    Комментарии (50)
  7. PHP / Говнокод #4959

    +163

    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
    <?php
    // Заменить значния, выделенные жирным на действительные
    // Соединяемся с "Мускулом"
     define("MYSQL_HOST","myhost.ru",true);
     define("MYSQL_USER","username",true);
     define("MYSQL_PASS","userpass",true);
     define("MYSQL_DB_N","userdb",true);
     define("MYSQL_DB_N","userstable",true);
     $_MYSQL_CONNECT = false; $_MYSQL_ERROR = -1;
     if ($_MYSQL_CONNECT = @mysql_connect(MYSQL_HOST,MYSQL_USER,MYSQL_PASS))
     {
      if (mysql_select_db(MYSQL_DB_N,$_connect))
      {
       $_MYSQL_ERROR = 0; define("MYSQL_CONNECTED",true,true);
      } else { $_MYSQL_ERROR = 2; define("MYSQL_CONNECTED",false,true); }
     } else { $_MYSQL_ERROR = 1; define("MYSQL_CONNECTED",false,true); }
    // Проверяем значение
    // Определяем список разрешённых неалфавитноцифровых символов
     $_SRCH[0] = '.'; $_SRCH[1] = '_'; $_SRCH[2] = '-'; $_SRCH[3] = ' ';
     if (isset($_POST['user']))
     {
      $_tmp = iconv("UTF-8","CP1251//IGNORE",urldecode($_POST['user']));
      if (ctype_alnum(str_replace($_SRCH,'',$_tmp)) && (strlen($_tmp) < 33))
      {
       if (MYSQL_CONNECTED)
       {
        $_query = 'SELECT * FROM '.MYSQL_US_N." WHERE nick='".$_tmp."'";
        if ($_result = mysql_query($_query,$_MYSQL_CONNECT))
        {
         if ($_row = mysql_fetch_assoc($_result))
         {
          define("_RESULT","RES_EX",true);
         } else { define("_RESULT","RES_OK",true); }
        } else { define("_RESULT","RES_MYSQL_BQ",true); }
       } else { define("_RESULT","RES_MYSQL_NC",true); }
      } else { define("_RESULT","POST_IN",true); }
     } else { define("_RESULT","POST_NS",true); }

    qbasic, 17 Декабря 2010

    Комментарии (58)
  8. JavaScript / Говнокод #4958

    +160

    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
    var _nickObj = document.getElementById('userNick');
    var _indNick = document.getElementById('userNickInd');
     
    var regVerReq;
    try { regVerReq = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e)
         { try { regVerReq = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e)
               { regVerReq = false; }
         }
    if (!regVerReq && typeof(XMLHttpRequest)!='undefined') { regVerReq = new XMLHttpRequest(); }
     
    function verifyNick()
    {
     if (regVerReq)
     {
      regVerReq.open("post","/php/veruser.php",true);
      regVerReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
      var regVerHB = 'user='+encodeURIComponent(_nickObj.value);
      regVerReq.onreadystatechange = function()
      {
       if (regVerReq.status == 200)
       {
        if (regVerReq.readyState == 4)
        {
         switch ( regVerReq.responseText )
         {
          case 'RES_OK':
            _indNick.innerHTML = 'Свободен';
            _indNick.style.color = 'green';
            break;       
          case 'RES_EX':
            _indNick.innerHTML = 'Занят';
            _indNick.style.color = 'red';
            break;       
          default:
            _indNick.innerHTML = 'Некорректно';
            _indNick.style.color = 'red';
            break;       
         }
        }
       } else
       {
        _indNick.innerHTML = 'Ошибка сервиса';
        _indNick.style.color = 'red';
       }
      }
      _indNick.innerHTML = 'Проверка';
      _indNick.style.color = 'gray';
      regVerReq.send(regVerHB);
     }
    }

    qbasic, 17 Декабря 2010

    Комментарии (104)
  9. PHP / Говнокод #4957

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    //Предосмотр
                $pre = '';
            if (1==1) {
                $prev_pic = str_replace('/', '--', iconv_substr(strstr($v['path'], '/'), 1));
    }

    ===ЗАГРУЗ-ЦЕНТР===
    # Автор : Sea
    # E-mail : [email protected]
    # ICQ : 355152215
    # Вы не имеете права распространять данный скрипт
    # По всем вопросам пишите в ICQ
    файл - search.php, строка 143

    4ibo, 17 Декабря 2010

    Комментарии (18)
  10. Java / Говнокод #4956

    +70

    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
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    public class HttpServer {
    
        public static void main(String[] args) throws Throwable {
            ServerSocket ss = new ServerSocket(8080);
            while (true) {
                Socket s = ss.accept();
                System.err.println("Client accepted");
                new Thread(new SocketProcessor(s)).start();
            }
        }
    
        private static class SocketProcessor implements Runnable {
    
            private Socket s;
            private InputStream is;
            private OutputStream os;
    
            private SocketProcessor(Socket s) throws Throwable {
                this.s = s;
                this.is = s.getInputStream();
                this.os = s.getOutputStream();
            }
    
            public void run() {
                try {
                    readInputHeaders();
                    writeResponse("<html><body><h1>Hello from Habrahabr</h1></body></html>");
                } catch (Throwable t) {
                    /*do nothing*/
                } finally {
                    try {
                        s.close();
                    } catch (Throwable t) {
                        /*do nothing*/
                    }
                }
                System.err.println("Client processing finished");
            }
    
            private void writeResponse(String s) throws Throwable {
                String response = "HTTP/1.1 200 OK\r\n" +
                        "Server: YarServer/2009-09-09\r\n" +
                        "Content-Type: text/html\r\n" +
                        "Content-Length: " + s.length() + "\r\n" +
                        "Connection: close\r\n\r\n";
                String result = response + s;
                os.write(result.getBytes());
                os.flush();
            }
    
            private void readInputHeaders() throws Throwable {
                BufferedReader br = new BufferedReader(new InputStreamReader(is));
                while(true) {
                    String s = br.readLine();
                    if(s == null || s.trim().length() == 0) {
                        break;
                    }
                }
            }
        }
    }

    Это весь код вебсервера.
    К слову сказать, это от сюда:
    http://habrahabr.ru/blogs/java/69136/

    Говногость, 17 Декабря 2010

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