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

    В номинации:
    За время:
  2. Куча / Говнокод #24738

    +1

    1. 1
    Где можно посмотреть исходники "PHP" как можно раньшей релизной версии?

    LinuxGovno, 10 Сентября 2018

    Комментарии (12)
  3. Python / Говнокод #24683

    −2

    1. 1
    2. 2
    3. 3
    4. 4
    def spam(low, up):
        for eggs in range(low, up+1):
            if str(eggs) in str(eggs**2):
                print(str(eggs) + " is in " + str(eggs**2) + ".")

    Проверяет, есть ли стринг числа n в стринге числа n**2.

    shite, 29 Августа 2018

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    Геном человека занимает 3.3 Gb	
    Геном рыбы "Protopterus aethiopicus" -- 130 Gb	
    
    Вопрос: откуда в рыбе столько говна?

    roskomgovno, 04 Августа 2018

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

    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
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text.RegularExpressions;
    
    
    /* The "Enter le ..." thing
    is left for Шindows compilers.
    Don't mind it. */
     namespace SoloLearn
     {
         public class Program
         {
             public static void Main(string[] args)
             {
                 int a = 0;
                 int b = 0; //Declare two numbers
                 string leChar; //Declare the character
                 int sum; //Declare the place where the result of the expression would be stored
                 Console.WriteLine("Enter le first number\n");
                 string c = a.ToString(); //Convert the 1st № to string
                 c = Console.ReadLine(); //Assign the 1st number
                 Console.WriteLine("Enter le character\n");
                 leChar = Console.ReadLine(); //Assign the char
                 Console.WriteLine("Enter le second number\n");
                 string d = b.ToString(); //Convert the 2nd № to string
                 d = Console.ReadLine(); //Assign the second number
                 a = System.Convert.ToInt16(c);
                 b = System.Convert.ToInt16(d);
                 sum = Calculate(a,leChar,b); //Calculate
                 Console.WriteLine("{0} {1} {2} is {3}", a, leChar, b, sum);
             }
             public static int Calculate(int x, string z, int y) {
                 int qwerty = 0;
                 switch(z) {
                     case "+": //Case of addition
                     qwerty = x + y;
                     break;
                     case "-": //Case of subtraction
                     qwerty = x - y;
                     break;
                     case "*": //Case of multiplication
                     qwerty = x * y;
                     break;
                     case "/": //Case of division
                     qwerty = x / y;
                     break;
                 }
                 return qwerty; //If smth = Calculate(parameters), var smth would have the content of this var © Your Captain Obvious
             }
         }
     }

    Выдавил из себя где-то месЕц назад. Как я умудрялся делать 2 переменные для просто стринговых версий существующих переменных только для того, чтобы прочитать инпут? Хорошо, что в сисярпе есть гарбаж коллектор. И да, названия переменных во второй функции - прекрасные (посмотрите: x, y, z, qwerty - не прекрасно ли?) говГо.

    shite, 03 Августа 2018

    Комментарии (12)
  6. Python / Говнокод #24536

    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
    #-*-coding:utf8;-*-
    
    combinators = {
       'I': lambda x: x if len(x) <= 1 else calc(x[1:]),
       'K': lambda x: x if len(x) <= 2 else calc((x[1],) + x[3:]),
       'W': lambda x: x if len(x) <= 2 else calc(x[1:3] + x[2:]),
       'S': lambda x: x if len(x) <= 3 else calc((x[1], x[3], (x[2], x[3])) + x[4:]),
       'B': lambda x: x if len(x) <= 3 else calc((x[1], (x[2], x[3])) + x[4:]),
       'C': lambda x: x if len(x) <= 3 else calc((x[1], x[3], x[2]) + x[4:]),
       'U': lambda x: x if len(x) <= 2 else calc((x[2], (x[1], x[1], x[2])) + x[3:]),
       'Y': lambda x: x if len(x) <= 1 else calc(('S',('K',('S','I','I')),('S',('S',('K','S'),'K'),('K',('S','I','I')))) + x[2:])
    }
    
    def calc(x):
        def f(x, top = False):
            if type(x) is not tuple or len(x) == 0:
                return x
            if top:
                while type(x[0]) is tuple:
                    x = x[0] + x[1:]
            else:
                if type(x[0]) is tuple:
                    return (calc(x[0]),) + f(x[1:])
            print(termrepr(x))
            input('Press Enter...')
            return combinators.get(x[0], lambda _: (x[0],) + f(x[1:]))(x)
    
        return f(x, True)
    
    def parse(s):
        def f(s, n):
            res = ()
            i = n
            while i < len(s):
                if s[i] == '(':
                    t, j = f(s, i + 1)
                    res += (t,)
                    i = j - 1
                elif s[i] == ')':
                    return (res, i + 1)
                else:
                    res += (s[i],)
                i += 1
            return (res, i)
            
        return f(s, 0)[0]
    
    def termrepr(x):
        if len(x) == 0:
            return ''
        if type(x[0]) is tuple:
            return '(' + termrepr(x[0]) + ')' + termrepr(x[1:])
        else:
            return x[0] + termrepr(x[1:])
    
    print('>> ', end = '')
    while True:
        print(termrepr(calc(parse(input()))))
        print('\n>> ', end = '')

    Я перепесал #24129:

    >> BUGURT
    BUGURT
    Press Enter...
    U(GU)RT
    Press Enter...
    R((GU)(GU)R)T
    Press Enter...
    GU(GU)R
    Press Enter...
    U(GU)R
    Press Enter...
    R((GU)(GU)R)
    Press Enter...
    GU(GU)R
    Press Enter...
    U(GU)R
    Press Enter...

    666_N33D135, 24 Июля 2018

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

    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
    #include <stdio.h>
    #include <stdlib.h>
    #include <inttypes.h>
    
    void test1(void)
    {
      printf("test1\n");
    }
    void test2(void)
    {
      printf("test2\n");
    }
    void test3(void)
    {
      printf("test3\n");
    }
    void test4(void)
    {
      printf("test4\n");
    }
    
    uint8_t func_dist[3] = {(uint8_t)((char *)test2-(char *)test1), (uint8_t)((char *)test3-(char *)test2), (uint8_t)((char *)test4-(char *)test3)};
    
    void callf(uint8_t fn)
    {
      size_t sum_dis = 0;
      for (uint8_t i = 0; i < fn; i++)
      {
        sum_dis += func_dist[i];
      }
      ( (void(*)(void)) ((char *)test1+sum_dis) )  ();
    }
    
    int main(void)
    {
      callf(0);
      callf(1);
      callf(2);
      callf(3);
      return EXIT_SUCCESS;
    }

    Зожатие указателей. Главное чтоб длины функций не превышали 255 и чтоб функции шли строго подряд, как они объявлены кода
    Как сделать чтобы это компилировалось сишкой?

    j123123, 10 Июля 2018

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

    +2

    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
    Если Найти(_оинв.Комментарий,"#инвентаризация гсм#")=0 Тогда
    		_оинв.Комментарий="#инвентаризация гсм#";
    		Если не Найти(_комментарий,"газ")=0 Тогда
    			_оинв.Комментарий=_оинв.Комментарий+" газ";
    		ИначеЕсли не Найти(_оинв.Склад.Наименование,"АГЗС")=0 Тогда
    			_оинв.Комментарий=_оинв.Комментарий+" газ";
    		КонецЕсли;
    		_оинв.Комментарий=_оинв.Комментарий+" "+_комментарий;
    	ИначеЕсли не Найти(_оинв.Склад.Наименование,"АГЗС")=0 Тогда
    		Если Найти(_комментарий,"газ")=0 Тогда
    			_оинв.Комментарий=_оинв.Комментарий+" газ";
    		ИначеЕсли не Найти(_комментарий," газ газ")=0 Тогда
    			_оинв.Комментарий=СтрЗаменить(_оинв.Комментарий," газ газ"," газ");
    		КонецЕсли;
    	КонецЕсли;

    Где "_оинв" это ДокументОбъект Инвентаризация

    MyNameIs, 29 Июня 2018

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <?php
    if (isset($_SERVER['HTTP_X_REAL_IP'])) {
        $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_REAL_IP'];
    } elseif (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
    } else {
        $_SERVER['REMOTE_ADDR'] = $_SERVER['REMOTE_ADDR'];
    }
    $ip = $_SERVER['REMOTE_ADDR'];

    Я уже молчу о том, что HTTP_X_FORWARDED_FOR может содержать уязвимые строки и в дальнейшем он никак не фильтрируется.
    Во вторых, нужно просто один раз нормально настроить сервер и получать данные от REMOTE_ADDR или HTTP_X_REAL_IP.

    Akdmeh, 31 Мая 2018

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

    −2

    1. 1
    echo $(printf '1\xff0.0.0.0:0\0\\gamedir\\valve' |nc -u ms.xash.su 27010 -w 1 | od -j6 -t x1 -An -w6 |sed -s 's/\ /\ 0x/g'|while read line; do printf '%d.%d.%d.%d' $(echo $line|cut -d ' ' -f1-4) ; echo \ $(( $(printf %d $(echo $line|cut -d ' ' -f5))*256 + $(printf %d $(echo $line|cut -d ' ' -f6)) )); done| while read line1; do printf \\xff\\xff\\xff\\xffinfo\ 48|nc -w 1 -u $line1 |sed -e s/\\\\/\\\ /g -e "s/\xff\xff\xff\xffinfo/_br_$line1/g" & done;sleep 2s;echo)|sed -e s/_br_/\\n/g

    Работаем с бинарными протоколами однострочно

    mittorn, 17 Мая 2018

    Комментарии (12)
  11. C++ / Говнокод #24232

    −1

    1. 1
    2. 2
    3. 3
    j123123, ты вообще пишешь полезный код или занимаешься 
    только тем, что постишь на говнокод советы космического масштаба
    и комической же глупости о том, как всё оптимизировать?

    dm_fomenok, 07 Мая 2018

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