1. PHP / Говнокод #16568

    +153

    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
    if(!CModule::IncludeModule("iblock")) return; 
    $arFilter = array(
    	"IBLOCK_ID" => intval($arParams["IBLOCK_ID"]),
        "SECTION_CODE" => "",
    	"PROPERTY_OWNER"=>CUser::GetId(),
    );
    $arSelect = Array("ID", "NAME", "PROPERTY_arrived", "PROPERTY_IDTRACK", "PROPERTY_OWNER");
    $res = CIBlockElement::GetList(Array(), $arFilter, false, Array(), $arSelect);
    
    $arResult = array();
    while($ob = $res->GetNextElement())
    {
     $arFields = $ob->GetFields();
     $data = array("TRACK"=>$arFields);
     
     $arSelectHistroty = array("property_date","property_status_str","property_place","name");
     $arFilterHistroty = array("IBLOCK_ID" =>$arParams["IBLOCK_ID_HISTORY"],"SECTION_CODE" => "","NAME"=>$arFields[ID]);
     $resHistory = CIBlockElement::GetList(Array(), $arFilterHistroty, false, Array(), $arSelectHistroty);
     
     while($history = $resHistory->GetNextElement()){
    	$history = $history->GetFields();
    	$data["HISTORY"][] = $history;
     }
     
    
     $arResult["ITEMS"][] = $data;
     
    };

    заведомо известно что в $arFields[ID] передается 1301
    строка 17, если name маленькими буквами то ответ не правильный, т.е возвращает элементы с [NAME] => 1294.
    но если NAME большими буквами, то ответ правильный: ****"SECTION_CODE" => "","NAME"=>1301); < часть ответа.
    Ладно бы ничего не возвращал,...но с ошибкой..

    Guron, 20 Августа 2014

    Комментарии (0)
  2. Си / Говнокод #16567

    +140

    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
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    99. 99
    //block.exe
    //divide information by bloks
    #include<fstream> 
    #include <string>  
    #include <windows.h>
    #include <ctime>   // time
    #include<iostream>
    using namespace std;
    int main()
    {
     FreeConsole();
    
       //dati programe zapustitsia
    
    
    char mask[255];
    
    
    char maski1[255],  maski2[255], maski3[255], maski4[255], maski5[255], maski6[255];
    char maski7[255],  maski8[255],  maski9[255], maski10[255], maski11[255],  maski12[255], maski13[255];
    
    //  [SKIPPED]
    char maski250[255],  maski251[255],  maski252 [255],  maski253[255],  maski254[255],  maski255[255]; 
    char maski256[255];
    
    char maski82[255], maski83[255],maski84[255],maski85[255], maski86[255], maski87[255];
    
    string str2;
    
    ifstream failpozovatelia("fail.txt");
               while (!failpozovatelia.eof())
               {
                failpozovatelia>>mask;
                cout<<mask<<endl;
            ifstream rt(mask);
    
            while (!rt.eof())
               {
    
           rt>>maski1>>maski2>>maski3>>maski4>>maski5>>maski6>>maski7>>maski8>>maski9>>maski10;
         rt>>maski11>>maski12>>maski13>>maski14>>maski15>>maski16>>maski17>>maski18>>maski19>>maski20>>maski21;
         rt>>maski22>>maski23>>maski24>>maski25>>maski26>>maski27>>maski28>>maski29>>maski30>>maski31;
         rt>>maski32>>maski33>>maski34>>maski35>>maski36>>maski37>>maski38>>maski39>>maski40>>maski41>>maski42;
    
    // SKIPPED
    
      cout<<maski1<<maski2<<maski3<<maski4<<maski5<<maski6<<maski7<<maski8<<maski9<<maski10;
         cout<<maski11<<maski12<<maski13<<maski14<<maski15<<maski16<<maski17<<maski18<<maski19<<maski20<<maski21;
         cout<<maski22<<maski23<<maski24<<maski25<<maski26<<maski27<<maski28<<maski29<<maski30<<maski31;
         cout<<maski32<<maski33<<maski34<<maski35<<maski36<<maski37<<maski38<<maski39<<maski40<<maski41<<maski42;
     
    // SKIPPED
    
     ofstream blockfaila("block.txt",ios::out);
     {
         
               blockfaila<<maski1<<maski2<<maski3<<maski4<<maski5<<maski6<<maski7<<maski8<<maski9<<maski10;
          blockfaila<<maski11<<maski12<<maski13<<maski14<<maski15<<maski16<<maski17<<maski18<<maski19<<maski20<<maski21;
          blockfaila<<maski22<<maski23<<maski24<<maski25<<maski26<<maski27<<maski28<<maski29<<maski30<<maski31;
          blockfaila<<maski32<<maski33<<maski34<<maski35<<maski36<<maski37<<maski38<<maski39<<maski40<<maski41<<maski42;
          blockfaila<<maski43<<maski44<<maski45<<maski46<<maski47<<maski48<<maski49<<maski50<<maski51<<maski52;
      
    // SKIPPED
    
     }
       Sleep(128);
    
      blockfaila.close();
    
    
    //wait other opration while done.
    a:
         ifstream nextblock("nextblock.txt");
        {
    
        nextblock>>str2;
        }
    
         string sub3 = "*";
      unsigned int pos2 = str2.find(sub3,0);
      cout << " You have enter " << str2 << endl;
    
        if(pos2 != string::npos)
        {
        {
           Sleep(128);
    
    
        }  
    
           
         else
        {goto a;
        }
    
                        }
                       }
    
    return 0;}

    12 это 35 это 7876...
    126321 124 351895321 84 42 21 11 6 3 2 1 52 26 13 7 421 8+16=32 32 16 8 4 2 1
    00100 1 0 10 100 4+16+64=84 0 0 1 1 0 10 0 0 0 1 0 1000 0 0 0 0 0 0
    821 32 168 4 2 1
    обратно если длины нехватает береш двух значнае, все рабоботает, пересчитай, если не сжимается минусуешь минус 10 и пробуешь сжать снова сжать.

    TarasB, 19 Августа 2014

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

    +143

    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
    Монады как коллбеки
    
    На джаваскриптовой конференции, о которой я писал в прошлом посте, в процессе обсуждения 
    ФП неизбежно встала тема монад.
    
    Мне было интересно, насколько легко можно объяснить монады «на пальцах». Возможно, не в 
    той степени, чтобы человек смог сразу с ними программировать, но в той степени, чтобы понимать,
     что они делают и зачем нужны.
    
    И у меня возникла идея объяснить монады без типов. Мне кажется, главную сложность при изучении 
    монад вызывают именно типы (а точнее, конструкторы типов и классы конструкторов типов), т.к. многие 
    приходят в Haskell из языков с менее выразительной системой типов.
    
    В то же время, монады могут существовать и в динамических языках. А если из монад убрать типы, 
    то останется лишь то, как они работают во время исполнения — и там все довольно прозрачно.
    
    Вычислительная сущность монад — это continuation passing style, или коллбеки. Любая программа 
    на node.js написана в этом стиле.
    
    Левый аргумент >>= — вычисление, а правый — коллбек. Коллбек принимает результат вычисления 
    и совершает какие-то дальнейшие вычисления
    
    Эта аналогия особенно точно выполняется для монад Identity, IO, Maybe/Either. Каждая отдельная 
    монада определяет, к чему конкретно будет применен коллбек.
    
    Но посмотрим, например, на монаду [] (список). Если руководствоваться только лишь представлением 
    о монаде как о вызове коллбеков, то самый простой способ определить списочную монаду — это a >>= k = map k a (что неверно).
    
    Аналогия с коллбеками слишком «императивна» и не улавливает тонкость — структуру самой монады. 
    Чтобы эту структуру наглядно показать, как раз и нужны типы.

    kegdan, 19 Августа 2014

    Комментарии (8)
  4. Perl / Говнокод #16565

    −159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    my @args = (
    	one => 1,
    	two => 2,
    	three => 3,
    );
    
    croak(q/'hashes' only/) if (@args & 1);
    
    my $args = join ';', map { join '=', @args[$_, $_ + 1] } grep { !($_ & 1) } 0 .. $#args;

    Осилил, блин...

    Elvenfighter, 19 Августа 2014

    Комментарии (4)
  5. JavaScript / Говнокод #16563

    +159

    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
    $(function () {
        $('#Who').click(whoAre);
    });
    
    function whoAre() {
        var who = document.getElementById('whoAreyou');
        var value = who.style.display;
        var aspnetRoles = document.getElementById('aspnetRoles');
        
        if (value == "none") {
            who.style.display = "block";
                aspnetRoles[0].value = "Агент";
                aspnetRoles[1].value = "Арендодатель";
                aspnetRoles[0].text = "Агент";
                aspnetRoles[1].text = "Арендодатель";
        } else {
            who.style.display = "none";
            
            aspnetRoles[0].value = "Moderator";
            aspnetRoles[1].value = "Moderator";
            aspnetRoles[0].text = "Moderator";
            aspnetRoles[1].text = "Moderator";
        }
        
    }

    меняет элементы, option

    Emir, 19 Августа 2014

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

    +135

    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
    try
    {
    	HttpWebRequest httpWebReq = (HttpWebRequest)WebRequest.Create(this.OURURL);
    	httpWebReq.Timeout = 2000;
    	httpWebReq.Method = "POST";
    
    	string Response = ResponseStreamReader.ReadToEnd();
    	
    	// bla-bla-bla ...
    
    	httpWebReq.GetResponse().Close();
    	httpWebReq = null;
    	Response = null;
    }

    Smekalisty, 19 Августа 2014

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

    +137

    1. 1
    readonly string NEWLINE = "\r\n";

    Smekalisty, 19 Августа 2014

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

    +134

    1. 1
    2. 2
    3. 3
    class UnathorizedDevice : ArgumentException { public UnathorizedDevice() : base() { } }
    
    class LocalException : ArgumentException { public LocalException(string message) : base(message) { } }

    Говно или не говно? Мне кажется первое

    Smekalisty, 19 Августа 2014

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

    +133

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    rem Check if Windows XP or Windows 7
    rem XP: C:\Documents and Settings (or language specific folder)
    rem 7: C:\Users
    
    set oprsystem=%appdata:~3,5%
    if %oprsystem%==Users (
      set ops=win7
    ) else (
      set ops=winxp
    )

    Batch
    http://members.ferrara.linux.it/freddy77/encfs.html

    galeksandrp, 18 Августа 2014

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

    +128

    1. 1
    2. 2
    3. 3
    4. 4
    ng-include="'views/partials/header.html'"
    - class="navbar navbar-static-fixed-top nav"></div>
    + /*class="navbar navbar-static-fixed-top nav"*/></div>
     <ui-view id="main" class="container" id="mainContainer"></ui-view>

    GIT commit diff for Angular template

    armengabriel, 18 Августа 2014

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