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

    +97

    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
    SetLength(s,N);
      SetLength(Y,N);
      SetLength(U,N);
      SetLength(Z,N);
      SetLength(E,N);
      for i:=0 to N do  //какбэ на выход за границы даже не смотрим, не в этом суть
        begin
          SetLength(S[i],M);
          SetLength(Y[i],M);
          SetLength(U[i],M);
          SetLength(Z[i],M);
          SetLength(E[i],M);
        end;

    Переделывал чужой консольный проект под форму, не сразу понял, что происходит.
    Так вот, Вы, наверное, думаете, что знаете, как задавать размер динамического массива? Нет, нихрена вы не знаете.

    SkuII, 29 Мая 2012

    Комментарии (33)
  2. Куча / Говнокод #10404

    +125

    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
    (defun question-2 ()
      (let ((b '(1 2 3))
            (a '(1 2 3 4))
            (com (make-hash-table :test #'equal)))
        (labels ((put-sorted (x)
                   (let ((key
                          (sort
                           (flatten
                            (copy-tree x)) #'<)))
                     (if (gethash key com)
                         (incf (gethash key com))
                         (setf (gethash key com) 1)))))
          (values (remove-if
           #'(lambda (x)
               (prog ((results
                      (do ((x x (cdr x)) (r))
                          (nil)
                        (setf r (append (cadar x) r))
                        (when (null (cdr x))
                          (return r)))))
                 (dolist (y a)
                   (when (not (member y results))
                     (go remove-it)))
                 (put-sorted results)
                 (go keep-it)
                 remove-it (return t)
                 keep-it nil))
           (all-functions b (cartesian-product a))) com))))

    Ну, чем бы еще порадовать. Вот, родилось во время проверки домашних заданий :)

    wvxvw, 29 Мая 2012

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

    −136

    1. 1
    СОСИТЕ МОЙ ХУЙ, УБЛЮДКИ!!!

    uiopqwertyasd, 29 Мая 2012

    Комментарии (1)
  4. PHP / Говнокод #10402

    +62

    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
    for($i=0; $i<strlen($input); $i++)
        {
          $ip=$input{$i};
          $op='';
             
          if ($intag)
          {
              if ($ip=="=") $op="=3D";
              else $op= $ip;
          }
          else
          {
              if ($ip=="\"") $op='"';//'
              else if ($ip=="&") $op="&";
              else if ($ip=="'") $op="'";
              else $op= $ip;
          }
    
    
          if ((strlen($line)+strlen($op))>=$line_max)
          {
              $output.=$line.'='.$eol;
              //if ($intag) $output.=$line.'='.$eol;
              //else  $output.=$line.$eol;
              $line='';
          }
          $line.=$op;
    
          if($ip=='<')
              $intag=true;
          else if ($ip=='>')
              $intag=false;
        }

    Заголовки у письма отфильтрованы... Всё «путём» катимся дальше...

    nethak, 29 Мая 2012

    Комментарии (26)
  5. PHP / Говнокод #10401

    +67

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    preg_match('/(\d+)-(\d+)-(\d+)/i', date('d-m-Y'), $match);
    ob_start();
    echo (($match[1] == 30 || $match[1] == 31)?'01':(($match[2] <= 10)?'0':'').''.(++$match[1])).'.'; 
    echo ((!$match[2][1])?'0':''); 
    echo (($match[1] == 30 || $match[1] == 31)?++$match[2]:$match[2]); 
    echo '.'.$match[3];
    $rdate = ob_get_contents();
    ob_end_clean();

    Досталось в наследство...
    По алгоритму $rdate должна содержать текущее число следующего месяца в формате date('d.m.Y'). Мало того, что способ означивания переменной чрезвычайно необычен, код оформлен безобразно, так оно еще и не работает!
    На 29.05.2012 выдает "030.6.2012"

    domaster, 29 Мая 2012

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

    −83

    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
    + (void) playMovieWithResourceFile: (NSString *) file
    {
        const char *source = [ file cStringUsingEncoding: [NSString defaultCStringEncoding] ];
        size_t length = strlen( source );
        
        char *str = malloc( sizeof( char) * (length + 1)  );
        memcpy( str, source, sizeof (char) * (length + 1) );
        
        char *type = strstr( str, "."); 
        *type = 0;
        type++; //< now we have extension in type, and name in str cStrings
        
        NSAutoreleasePool *pool = [NSAutoreleasePool new];
        NSString *sName, *sType;
    	
        sName = [ NSString stringWithUTF8String: str ];
        sType = [ NSString stringWithUTF8String: type];
        [self playMovieWithName: sName Type: sType];
        
        // free str, but do not free type - it is a part of str
        free( str );
        
        [pool release];    
    }

    Вроде бы серьезный проект cocos2d-extensions https://github.com/cocos2d/cocos2d-iphone-extensions
    Отрезаем расширение у файла :)

    Или я что-то не понимаю…

    pilot34, 29 Мая 2012

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

    +75

    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
    if (ereg("^/products/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $dn_page = "/products/";
    }
    
    if (ereg("^/products/([-a-z0-9_\.]+)/$",$dn,$m)){
        $block_alias = $m[1];
        $dn_page = "/products/";
    }
    
    if (ereg("^/articles/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $dn_page = "/articles/";
    }
    
    if (ereg("^/news/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $dn_page = "/news/";
    }
    
    if (ereg("^/products/([0-9]+)/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $product_id = $m[2];
        $dn_page = "/products_detail/";
    }
    
    if (ereg("^/products/([-a-z0-9_\.]+)/([-a-z0-9_\.]+)/$",$dn,$m)){
        $block_alias = $m[1];
        $product_alias = $m[2];
        $dn_page = "/products_detail/";
    }
    // дальше начинается ад, не для слабонервных

    Я не буду показывать остальной код и рассказывать, что html в php пихать не красиво, ведь все мы индивидуальны и пишем как хотим. =)
    Кроме всего прочего, человек видимо очень стар и использует давно устаревшую функцию ereg, которая в версии 5.3.0 не имеет силы.
    На эту тему можно пофилософствовать и развести холивар, но мы же разумные люди и те кто пишет комментарии высшие программисты,
    ибо их слово это закон. По крайней мере вы так думаете)

    oooZinka, 29 Мая 2012

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

    −40

    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
    /*
    	 * This GtkIMHtml has the maximum number of smileys allowed, so don't
    	 * add any more.  We do this for performance reasons, because smileys
    	 * are apparently pretty inefficient.  Hopefully we can remove this
    	 * restriction when we're using a better HTML widget.
    	 */
    	unescaped = purple_unescape_html(smiley);
    	numsmileys_thismsg = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(imhtml), "gtkimhtml_numsmileys_thismsg"));
    	if (numsmileys_thismsg >= 30) {
    		gtk_text_buffer_insert(imhtml->text_buffer, iter, unescaped, -1);
    		g_free(unescaped);
    		return;
    	}
    	numsmileys_total = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(imhtml), "gtkimhtml_numsmileys_total"));
    	if (numsmileys_total >= 300) {
    		gtk_text_buffer_insert(imhtml->text_buffer, iter, unescaped, -1);
    		g_free(unescaped);
    		return;
    	}

    Вот такой прикол от Pidgin. Больше 30 смайлов в сообщении и 300 в диалоге - низя. Захардкодили, ибо стыдно, что тормозит. А оно действительно тормозит.

    g0rky, 29 Мая 2012

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

    +102

    1. 1
    return (m.Id == Id) ? (true) : (false);

    походу платят за символы

    MegaZver, 29 Мая 2012

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

    +72

    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
    public AllianceEntity getByMember(BigInteger dcgId) {
            for (AllianceEntity alliance : getAll()) {
                if (String.valueOf(alliance.getAdminDcgId()).equals(String.valueOf(dcgId))) {
                    return alliance;
                }
                for (BigInteger memberDcgId : alliance.getMembersAsList()) {
                    if (String.valueOf(memberDcgId).equals(String.valueOf(dcgId))) {
                        return alliance;
                    }
                }
                for (BigInteger officerDcgId : alliance.getOfficersAsList()) {
                    if (String.valueOf(officerDcgId).equals(String.valueOf(dcgId))) {
                        return alliance;
                    }
                }
            }
            return null;
        }

    все айдишники BigInteger..

    iliakot, 29 Мая 2012

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