1. Ruby / Говнокод #29081

    0

    1. 1
    2. 2
    3. 3
    4. 4
    if (analysis.document? && analysis.update(name: params[:analysis][:name], description: params[:analysis][:description], anonymous: params[:analysis][:anonymous], dependency: analysis.dependency)) ||
           (analysis.cloud_file_link.present? && analysis.update(name: params[:analysis][:name], description: params[:analysis][:description], anonymous: params[:analysis][:anonymous], dependency: analysis.dependency)) ||
           (analysis.videolink.present? && analysis.update(name: params[:analysis][:name], description: params[:analysis][:description], videolink: params[:analysis][:videolink], anonymous: params[:analysis][:anonymous], dependency: analysis.dependency)) ||
           analysis.update(name: params[:analysis][:name], description: params[:analysis][:description], hyperlink: params[:analysis][:hyperlink], anonymous: params[:analysis][:anonymous], dependency: analysis.dependency)

    pls kill me

    Shannarra_, 28 Января 2025

    Комментарии (9)
  2. Ruby / Говнокод #29078

    0

    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
    # https://www.source-code.biz/snippets/vbasic/9.htm
        def calc_probability_of_inverse_normal_cumulative_distribution(probability)
          raise Math::DomainError unless probability.instance_of? BigDecimal
    
          a1 = -39.6968302866538
          a2 = 220.946098424521
          a3 = -275.928510446969
          a4 = 138.357751867269
          a5 = -30.6647980661472
          a6 = 2.50662827745924
          b1 = -54.4760987982241
          b2 = 161.585836858041
          b3 = -155.698979859887
          b4 = 66.8013118877197
          b5 = -13.2806815528857
          c1 = -7.78489400243029E-03
          c2 = -0.322396458041136
          c3 = -2.40075827716184
          c4 = -2.54973253934373
          c5 = 4.37466414146497
          c6 = 2.93816398269878
          d1 = 7.78469570904146E-03
          d2 = 0.32246712907004
          d3 = 2.445134137143
          d4 = 3.75440866190742
          probability_low = 0.02425
          probability_high = 1 - probability_low
    
          raise Math::DomainError if probability <= 0 || probability >= 1
    
          # glhf to the person who's gonna refactor this
          # rubocop:disable Layout/LineLength
          if probability < probability_low
            q = (-2 * Math.log(probability))**0.5
            (((((((((((c1 * q) + c2) * q) + c3) * q) + c4) * q) + c5) * q) + c6) / ((((((((d1 * q) + d2) * q) + d3) * q) + d4) * q) + 1)).to_f
          elsif probability <= probability_high
            q = probability - 0.5
            r = q * q
            (((((((((((a1 * r) + a2) * r) + a3) * r) + a4) * r) + a5) * r) + a6) * q / ((((((((((b1 * r) + b2) * r) + b3) * r) + b4) * r) + b5) * r) + 1)).to_f
          else
            q = (-2 * Math.log(1 - probability))**0.5
            (-((((((((((c1 * q) + c2) * q) + c3) * q) + c4) * q) + c5) * q) + c6) / ((((((((d1 * q) + d2) * q) + d3) * q) + d4) * q) + 1)).to_f
          end
          # rubocop:enable Layout/LineLength
        end

    красота.

    автор: аспирант-физик.

    Shannarra_, 22 Января 2025

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

    −2

    1. 1
    Похоже Сальвадор Дали посвятил свою картину "Великий мастурбатор" мне.

    doomginho, 20 Января 2025

    Комментарии (0)
  4. Python / Говнокод #29074

    0

    1. 1
    def neg(x): return int(bin(x)[2:].rjust(8, '0').replace('1','x').replace('0','1').replace('x','0'), 2)

    Операция "NEG"

    j123123, 16 Января 2025

    Комментарии (49)
  5. Си / Говнокод #29073

    +1

    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
    /* Python:
    
    def A004086(n):
    return int(str(n)[::-1])
    */
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    int A004086(int n) {
        char str[12]; // Enough to hold the string representation of an int
        sprintf(str, "%d", n);
        int len = strlen(str);
        char reversed[12];
        
        for (int i = 0; i < len; i++) {
            reversed[i] = str[len - 1 - i];
        }
        reversed[len] = '\0'; // Null-terminate the string
        
        return atoi(reversed);
    }

    Результат переписывание с "Python" на "C". A004086 это последовательность из OEIS https://oeis.org/A004086

    j123123, 02 Января 2025

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

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    Если Пользователи.ТекущийПользователь() = Справочники.Пользователи.НайтиПоРеквизиту("ИдентификаторПользователяИБ", 
    		Новый УникальныйИдентификатор("4479997c-b5d3-4928-a870-47fdf5bb1977")) 
    		ИЛИ Пользователи.ТекущийПользователь() = Справочники.Пользователи.НайтиПоРеквизиту("ИдентификаторПользователяИБ", 
    		Новый УникальныйИдентификатор("a1c3d77c-e00e-11e7-6d89-fa163e419b69")) Тогда				
    		
    		ЗапретНайден = ДИТ_ПолучитьЗапретИзмененияДанных();
    				
    		Если ЗапретНайден Тогда
    			ДИТ_УстановитьТолькоПросмотрДляПользователя();			
    		КонецЕсли;
    		
    	КонецЕсли;

    Bazooka, 26 Декабря 2024

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

    +2

    1. 1
    Итак, господа.

    ...В этом году послания от Шугар Плюм Файри-и не будет. Вместо нее вас поздравлю я.

    ...Зимандр будет умеренно суровый, от слова "умеренно".
    ...Войнах, как мы видим, в этом году не закончился, более того, нас уже осыпают поздравляшками с самолетиков. Похоже, поэтому и не пришла снегурочка - стало стыдно, что подпиздела, ну, или что уже не целка. Ладно. Не суть.

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

    В общем, с праздником. Пусть не последним он будет.

    3uMuCTOH, 26 Декабря 2024

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

    +1

    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
    Новогодний оффтоп #5
    ░░░░░░░░░░░░░░░░░▐▌░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░▀████▀░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░▄█▀▀█▄░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░▄▄░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░▄████▄░░░░░░░░░░░░░░░
    ░░░░░░░░░░░▄▄██╬██╬████▄▄░░░░░░░░░░░
    ░░░░░░░░▀███████╬███╬██████▀░░░░░░░░
    ░░░░░░░░░░▄▄█╬████╬█████▄▄░░░░░░░░░░
    ░░░░▄▄▄▄██╬████╬█████╬███╬██▄▄▄▄░░░░
    ░░░░░░▀▀████╬█████╬█████████▀▀░░░░░░
    ░░░░░░░░░▄█████╬██████╬███▄░░░░░░░░░
    ░░▄▄▄▄██████╬█████╬███████╬███▄▄▄▄░░
    ░░▀▀▀████╬█████╬████╬███╬██████▀▀▀░░
    ░░░░░░░░████╬████████╬██████░░░░░░░░
    ░░▄▄▄█████╬██████╬█████╬███╬███▄▄▄░░
    ▀▀▀████╬█████╬█████╬████╬███╬████▀▀▀
    ░░░░░░▀▀▀██████████████████▀▀▀░░░░░░
    ░░░░░░░░░░░░░░░░████░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░████░░░░░░░░░░░░░░░░

    #1: https://govnokod.ru/27188 https://govnokod.xyz/_27188
    #2: https://govnokod.ru/27893 https://govnokod.xyz/_27893
    #3: https://govnokod.ru/28484 https://govnokod.xyz/_28484
    #4: https://govnokod.ru/28896 https://govnokod.xyz/_28896

    rOBHOBO3Hblu_nemyx, 23 Декабря 2024

    Комментарии (202)
  9. Си / Говнокод #29064

    0

    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
    /* Windows doesn't support the fork() call; so we fake it by invoking
       another copy of Wget with the same arguments with which we were
       invoked.  The child copy of Wget should perform the same initialization
       sequence as the parent; so we should have two processes that are
       essentially identical.  We create a specially named section object that
       allows the child to distinguish itself from the parent and is used to
       exchange information between the two processes.  We use an event object
       for synchronization.  */
    static void
    fake_fork (void)
    {
      char exe[MAX_PATH + 1];
      DWORD exe_len, le;
      SECURITY_ATTRIBUTES sa;
      HANDLE section, event, h[2];
      STARTUPINFO si;
      PROCESS_INFORMATION pi;
      struct fake_fork_info *info;
      char *name;
      BOOL rv;
    
      section = pi.hProcess = pi.hThread = NULL;
    
      /* Get the fully qualified name of our executable.  This is more reliable
         than using argv[0].  */
      exe_len = GetModuleFileName (GetModuleHandle (NULL), exe, sizeof (exe));
      if (!exe_len || (exe_len >= sizeof (exe)))
        return;
    
      sa.nLength = sizeof (sa);
      sa.lpSecurityDescriptor = NULL;
      sa.bInheritHandle = TRUE;
    
      /* Create an anonymous inheritable event object that starts out
         non-signaled.  */
      event = CreateEvent (&sa, FALSE, FALSE, NULL);
      if (!event)
        return;
    
      /* Create the child process detached form the current console and in a
         suspended state.  */
      xzero (si);
      si.cb = sizeof (si);
      rv = CreateProcess (exe, GetCommandLine (), NULL, NULL, TRUE,
                          CREATE_SUSPENDED | DETACHED_PROCESS,
                          NULL, NULL, &si, &pi);
      if (!rv)
        goto cleanup;
    
      /* Create a named section object with a name based on the process id of
         the child.  */
      name = make_section_name (pi.dwProcessId);
      section =
          CreateFileMapping (INVALID_HANDLE_VALUE, NULL, PAGE_READWRITE, 0,
                             sizeof (struct fake_fork_info), name);
      le = GetLastError();
      xfree (name);
      /* Fail if the section object already exists (should not happen).  */
      if (!section || (le == ERROR_ALREADY_EXISTS))
        {
          rv = FALSE;
          goto cleanup;
        }
    
      /* Copy the event handle into the section object.  */
      info = MapViewOfFile (section, FILE_MAP_WRITE, 0, 0, 0);
      if (!info)
        {
          rv = FALSE;
          goto cleanup;
        }
    
      info->event = event;
    
      UnmapViewOfFile (info);
    
      /* Start the child process.  */
      rv = ResumeThread (pi.hThread);
      if (!rv)
        {
          TerminateProcess (pi.hProcess, (DWORD) -1);
          goto cleanup;
        }
    
      /* Wait for the child to signal to us that it has done its part.  If it
         terminates before signaling us it's an error.  */
    
      h[0] = event;
      h[1] = pi.hProcess;
      rv = WAIT_OBJECT_0 == WaitForMultipleObjects (2, h, FALSE, 5 * 60 * 1000);
      if (!rv)
        goto cleanup;
    
      info = MapViewOfFile (section, FILE_MAP_READ, 0, 0, 0);
      if (!info)
        {
          rv = FALSE;
          goto cleanup;
        }

    Из исходников wget.

    https://git.savannah.gnu.org/cgit/wget.git/tree/src/mswindows.c

    rOBHOBO3Hblu_nemyx, 06 Декабря 2024

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public static String getJoinedHeaderTypes(List<String> types, String delimiter) {
            if (!types.isEmpty() && types.size() > 1) {
                return String.join(delimiter, types);
            } else if (types.size() == 1) {
                return types.stream().findFirst().get();
            }
            return "";
        }

    Когда тебе рассказали, что есть стримы...

    nekkiy, 03 Декабря 2024

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