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

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

    +155

    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
    /* use <first> of a [std::pair] */
    template<typename _type_, typename _pred_>
    struct use_first {
    	use_first(_type_ val, _pred_ pred) { value = val; predicate = pred; }
    	
    	template<typename _first_type_, typename _second_type_>
    	bool operator()(const std::pair<_first_type_, _second_type_> &pr)
    	{
    		return predicate(pr.first, value);
    	}
    
    private:
    	_type_ value;
    	_pred_ predicate;
    };
    
    /* factory function: use it to init a [use_first] object */
    template<typename _type_, typename _pred_>
    use_first<_type_, _pred_> make_use_first(_type_ value, _pred_ pred)
    {
    	return use_first<_type_, _pred_>(value, pred);
    }
    
    /* usage of [use_first] */
    std::vector< std::pair<int, int> > lol;
    std::vector< std::pair<int, int> >::iterator = std::find_if(lol.begin(), lol.end(), make_use_first(0, std::equal_to()));

    собственно была проблема в том, что в контейнерах(например std::vector, std::deque) хранятся пары(std::pair) и зачастую нужно организовать какие-либо действия либо по первому(first), либо по второму(second) члену из std::pair.
    приведен код только для first, ибо код для second немного похож

    в итоге получилось сие поделие, а еще я люблю обмазаться несвежим....

    Govnoeb, 23 Ноября 2010

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

    +114

    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
    Ссылка ниже, там много всего, наиболее яркие моменты:
    1. 
    String Conn = (String)((NameValueCollection)Context.GetConfig("system.web/dsnstore"))["sql_site"];
    
    2. 
    qGetSum = new SqlCommand("select abs(ISNULL(sum(doc_bonus),0)) from vdoc where card_id = " + Session["card_id"] + " and dbo.Get_storno(doc_id) = 1", cGetSum);
    
    3. 
    SqlConnection cDiscount2 = new SqlConnection(Conn);
    SqlConnection cDiscount3 = new SqlConnection(Conn);
    
    4.
     log.Text = "Вы определены как:<br><b>" + Session["login"] + "<br><br></b>Бонус:<b>" + Session["bonus"] + "<br><br><a href=\"default.aspx?page=cardedit\">Личная карточка</a></b><br><br>";
    
    5. 
    Имена переменных: card_prefix, error_login_count, logoCMD, 
    
    6. 
    Session["access"] = 1;
    Session["access"] = -1;
    Session["access"] = -2;

    http://www.cyberforum.ru/asp-net/thread195915.html

    HIMen, 23 Ноября 2010

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

    +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
    if (!fwrite($file,"<?php //конфигурационный файл
    \$dbpt='$path';
    \$dbus='$user';
    \$dbps='$pswrd';
    \$dbdb='$dbname';
    \$dbpr='$dbtbpr';
    ?>")) 
    		{
    			echo '3';
    			exit;
    		}
    		fclose($file);
    		mysql_select_db($dbname);
    		if (!mysql_query("create table {$dbtbpr}settings(nm varchar(255),about text, title varchar(255),link varchar(255))"))
    		{
    			echo '4';
    			exit;
    		}
    		if (!mysql_query("create table {$dbtbpr}remembers(id int,hash text,cookie text,pass text"))
    		{
    			echo '4';
    			exit;
    		}

    qbasic, 19 Ноября 2010

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    if (mode == MASTER)
    	Dev_Mode = MASTER;
    else
    	Dev_Mode = SLAVE;

    Vanuan, 19 Ноября 2010

    Комментарии (3)
  6. VisualBasic / Говнокод #4639

    −101

    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
    Dim lcIsCheck As Boolean = False
    
            Dim lcImages As DS_ExportFIO.sdImageRow = Me.DS_ExportFIO1.sdImage.Rows(0)
    
            If lcImages!Photo Is DBNull.Value Then
    
                lcIsCheck = IIf(lcIsCheck, lcIsCheck, False)
    
            Else
    
                lcIsCheck = True
    
            End If
    
            If lcImages!PhotoIshodn Is DBNull.Value Then
    
                lcIsCheck = IIf(lcIsCheck, lcIsCheck, False)
    
            Else
    
                lcIsCheck = True
    
            End If
    
            If lcImages!Sign Is DBNull.Value Then
    
                lcIsCheck = IIf(lcIsCheck, lcIsCheck, False)
    
            Else
    
                lcIsCheck = True
    
            End If
    
            If lcImages!SignIshod Is DBNull.Value Then
    
                lcIsCheck = IIf(lcIsCheck, lcIsCheck, False)
    
            Else
    
                lcIsCheck = True
    
            End If
    
            Return lcIsCheck

    хм... даже не знаю, как окоментить =)

    HellMaster_HaiL, 15 Ноября 2010

    Комментарии (3)
  7. SQL / Говнокод #4613

    −191

    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
    SELECT * FROM l_table AS bl
    
    LEFT JOIN t_table AS bt
    
    ON (bl.ID = bt.ID)
    
    WHERE DZ IN
    
    (
    
    SELECT LEFT(GROUP_CONCAT(DZ ORDER BY DZ DESC), 19)
    
    FROM l_table GROUP BY UID
    
    )
    
    GROUP BY UID
    
    ORDER BY DZ DESC
    ;

    advvzlol, 13 Ноября 2010

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

    +161

    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
    $myPid = getmypid();
    $state = shell_exec("ps -o \"%p:%P:%c;\"");
    $psPid = false;
    $processes = array();
    $linesArr = explode(";", $state);
    foreach($linesArr as $line)
    {
        $pProp = explode(":", $line);
        $processes[trim($pProp[0])] = $pProp;
        if($pProp[1] == $myPid)
        {
            $psPid = $pProp[0];
        }
    }
    //checking pids of processes
    if($psPid !== false)
    {
        if(key_exists($psPid - 1,$processes) && preg_match("/micq/i",$processes[$psPid - 1][2]))
        {
            $sessionConfig->addPid($psPid - 1);
        }
        if(key_exists($psPid - 2,$processes) && preg_match("/tail/i",$processes[$psPid - 2][2]))
        {
            $sessionConfig->addPid($psPid - 2);
        }
    }

    Вот и этот код, про который я рассказывал в комментарии к #4609

    raorn, 13 Ноября 2010

    Комментарии (3)
  9. Куча / Говнокод #4549

    +136

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    <!--uSpoiler-->
    <div class="uSpoilerClosed" id="uSpoiler8deJ5b">
      <div class="uSpoilerButBl">
        <input type="button" class="uSpoilerButton" onclick="if($('#uSpoiler8deJ5b')[0]){if ($('.uSpoilerText',$('#uSpoiler8deJ5b'))[0].style.display=='none'){$('.uSpoilerText',$('#uSpoiler8deJ5b'))[0].style.display='';$('.uSpoilerButton',$('#uSpoiler8deJ5b')).val('Закрыть спойлер');$('#uSpoiler8deJ5b').attr('class','uSpoilerOpened');}else {$('.uSpoilerText',$('#uSpoiler8deJ5b'))[0].style.display='none';$('.uSpoilerButton',$('#uSpoiler8deJ5b')).val('Открыть спойлер');$('#uSpoiler8deJ5b').attr('class','uSpoilerClosed');}}" value="Открыть спойлер"/>
      </div>
      <div class="uSpoilerText" style="display:none;">
        <!--ust-->
          ... тут собственно текст спойлера ...
        <!--/ust-->
      </div>
    </div>
    <!--/uSpoiler-->

    В это превращается BB-код spoiler на укозовских сайтах. В оригинале это всё в одну строчку.

    telnet, 06 Ноября 2010

    Комментарии (3)
  10. Си / Говнокод #4548

    +144

    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
    main() {
        char * what = "\
            ........................................ ....________\
            ....................................,.-'\"...................``~.,\
            .............................,.-\"................................... \"-.,\
            .........................,/........................................ .......\":,\
            .....................,?................. .....................................,\
            .................../........................................ ...................,}\
            ................./........................................ ..............,:`^`..}\
            .............../........................................ ...........,:\"........./\
            ..............?.....__.................. .......................:.........../\
            ............./__.(.....\"~-,_..............................,:..... ...../\
            .........../(_....\"~,_........\"~,_.................. ..,:........_/\
            ..........{.._$;_......\"=,_.......\"-,_.......,.-~-,},.~\";/....}\
            ...........((.....*~_.......\"=-._......\";,,./`..../\"............../\
            ...,,,___.`~,......\"~.,................. ...`.....}............../\
            ............(....`=-,,.......`........................(..... .;_,,-\"\
            ............/.`~,......`-...................................../\
            .............`~.*-,.....................................|, ./.....,__\
            ,,_..........}.>-._...................................|.. ............`=~-,\
            .....`=~-,__......`,............................. ....\
            ...................`=~-,,.,...............................\
            ................................`:,,.... .......................`..............__\
            .....................................`=-,...................,%`>--==``\
            ........................................ _..........._,-%.......`\
            ...................................,";
    
        int c = 0; int i = 0;
        for(; i < strlen(what); i++) {
            switch(what[i]) {
                case '.': c++;break;
                case '_': c--;break;
                case '/': c *= 2; break;
                case ',': c /= 2; break;
                case '?': c <<= 1; break;
                case '"': c >>= 1; break;
                case ':': c = ~c; break;
                case '*': c = -c; break;
                case '`': c += 100500; break;
                case '{': c -= '{'; break;
                case '}': c += '}'; break;
                case '-': c /= 4; break;
                case '~': c <<= 4; break;
                case ';': c = c & -c; break;
                case '%': c = c & 0xFF; break;
                case '=': c = c; /* еба! */ break;
                case '^': c = c ^ -c; break;
                case '$': printf("BINGOOO!!!\n"); break;
            }
        }
    
        printf("FACEPALM RESULT: %i\n", c);

    BINGOOO!!!
    FACEPALM RESULT: 50301

    danilissimus, 06 Ноября 2010

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

    −158

    1. 1
    2. 2
    ParticleArray.push(new ParticleExplosion());
    var par:ParticleExplosion = ParticleArray[ParticleArray.length - 1];

    Запихнуть в массив, а потом сразу же выдернуть, чтобы с этим поработать ))

    NeonSelf, 05 Ноября 2010

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