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

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

    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
    /**
     * Peetushna
     * Node.js 10
     * node index.js > report.csv
     */
    
    const { get } = require("axios");
    const { load } = require("cheerio");
    
    Promise.resolve().then(async () => {
      const responses = reqGen(1, 25000);
      const peetushna = /питушня/g;
      for await (const resp of responses) {
        if (resp.status != 200) break;
        const wordCount = resp.data.match(peetushna);
        const count = wordCount ? wordCount.length : 0;
        const html = load(resp.data);
        const lang = html('a[rel="chapter"]')
          .text()
          .replace("Си", "C");
        console.log(`"${lang}", ${count}`);
      }
    });
    
    async function* reqGen(first, max) {
      while (first <= max) {
        try {
          const resp = await get("http://govnokod.ru/" + first++);
          yield resp;
        } catch (e) {
          //
        }
      }
    }

    mazhuravlev, 27 Апреля 2018

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

    +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
    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
    #include "stdafx.h"
    #include <fstream>
    #include <iostream>
    using namespace std;
    int isMax(char mask[], int num, char in[]);        //Функция проверки символа
    int main(int argc, char* argv[])
    {
        if (argc == 1) {
            cout << "Use PasswordGenerator [Mask] [quantity of passwwords] [Path to file]\n";        //Проверка входных параметров
            return 1;
        }
        ofstream out;            //Выходной файл
        out.open(argv[3]);        //Открываем файл с именем которое ввел пользователь
        int len = 0;                    //Длина пароля
        char mask[1024] = "hll";       //Маска пароля
        char buff[1024] = { 0 };        //Буфер под пароль
        double quant = 0;                //Количество паролей в выходном файле
        strcpy_s(mask, argv[1]);        //копируем маску введённую пользователем
        len = strlen(mask);                //Узнаем длину
        for (int ii = 0; ii < len; ii++) {
            if ((mask[ii]= 'l') && (mask[ii]= 'h')&& (mask[ii]= 'n')) {           //Проверка маски на корректность
                cout << "Mask can be l h n\n";                                        //Маска может содержать только: l маленькие латинские буквы; h большие латинские буквы; n цифры
                    return 2;
            }
        }
        quant = atoi(argv[2]);                      //Запоминаем количество комбинаций
        if (quant == 0) {                           //Если пользователь ввел "0"
            quant = 1;                                //То считаем все возможные комбинации
            for (int ii = 0; ii < len; ii++) {         
                switch (mask[ii])
                {
                case 'l': quant *= 26; break;       //26 - количество возможных букв
                case 'h': quant *= 26; break;
                case 'n': quant *= 10; break;       //10 - количество возможных цифр
                default:
                    break;
                }
            }
        }
        int ii = 0;        //Нужная переменная
        for (ii = 0; ii < len; ii++) {               //Тут создается стартовая комбинация
    
            switch (mask[ii])                        //Например для nnllh будет 00aaA
            {
            case 'l': buff[ii] = 'a'; break;
            case 'h': buff[ii] = 'A'; break;
            case 'n': buff[ii] = '0'; break;
                default:
                    break;
            }
        }
        ii++;
        buff[ii] = '\0';                            //Добавляем маркер конца строки
        double flagc = quant / 10;                  //Константа для поиска процента завершения
        double flag = flagc;                        //Переменная процента завершения
        int per = 1;                                //Множитель процента
        for ( ii = 0; ii < quant; ii++) {                                   //Основной цикл
            out << buff << endl;                                            //Сохраняем пароль в файл
            if (ii >= flag) {                        //Если программа завершила 10%
                cout << per * 10 << "%\n";           //Выводим проценты
                per++;
                flag += flagc;
            }
            for (int ii = len - 1; ii >= 0; ii--) {                        //начинаем посимвольный перебор с конца строки
                if (isMax(mask, i, buff) == 1) {                           //Если встречаем последний возможный символ в данной позиции, то меняем его на стартовый
                    switch (mask[ii])
                   {
                    case 'l': if (buff[ii] == 'z')buff[ii] = 'a'; break;
                    case 'h': if (buff[ii] == 'Z')buff[ii] = 'A'; break;
                    case 'n': if (buff[ii] == '9')buff[ii] = '0'; break;
                  default:
                        break;
                    }
                    continue;    //Переход в следующую итерацию цикла
                }
                buff[ii] +=1;     //Сама инкрементация пароля
                break;            //Конец внутреннего цикла
            }
    }
        return 0;
    }
    int isMax(char mask[], int num, char in[]){
        switch (mask[num])
        {
    case 'l': if (in[num] == 'z')return 1; else return 0;            //Если символ последний, то возвращаем "1", в противном случае "0"
        case 'h': if (in[num] == 'Z')return 1; else return 0;
        case 'n': if (in[num] == '9')return 1; else return 0;
        default:
            break;
        }
    }

    Простой генератор паролей на C++
    https://codeby.net/forum/threads/prostoj-generator-parolej-na-c.61639/

    lolka, 11 Апреля 2018

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

    0

    1. 1
    2. 2
    3. 3
    while($us > 1){
        $us--;
    }

    На одном из сайтов, который мне нужно потдерживать.

    Prorok, 04 Апреля 2018

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $sPreviewFile = $_SERVER["DOCUMENT_ROOT"].BX_PERSONAL_ROOT."/tmp/templates/__bx_preview/footer.php";
    if($_GET['bx_template_preview_mode'] == 'Y' && $USER->CanDoOperation('edit_other_settings') && file_exists($sPreviewFile))
    	include_once($sPreviewFile);
    else {
            require $GLOBALS["BX_ICON"];
    	eval("?>$content<?");
    }
    ?>

    Где-то в битриксе.

    Prorok, 03 Апреля 2018

    Комментарии (6)
  6. PHP / Говнокод #24016

    −6

    1. 1
    2. 2
    primary(this, "в рот ебись');
    // Php говно мамонта и когда я его вижу хочется въебать в монитор кулаком чтоб развалился нахуй и выебался нахуй в рот. Уже давно есть nodejs в котором писать приятнее и возможностей больше, так что сосите нахуй разработчику на nodejs платят столько же блять 300К в месяц заебись да? Короче выбор нахуй есть! А дрочеры пошли нахуй с этого сайта, тут место обсуждения современных технологий

    fuckercoder, 27 Марта 2018

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

    −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
    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
    var processedHtml = new HtmlAgilityPack.HtmlDocument
                {
                    OptionOutputAsXml = true
                };
                processedHtml.LoadHtml(sbb);
                var doc = processedHtml.DocumentNode;
                
                foreach (var link in doc.SelectNodes("//a[@href]"))
                {
                    string hrefValue = link.GetAttributeValue("href", string.Empty);
                    if (!hrefValue.ToUpper().Contains("GOOGLE")
                        && hrefValue.Contains("/url?q=")
                        && hrefValue.ToUpper().Contains("HTTP"))
                        
                    {
                        int index = hrefValue.IndexOf("&");
                        if (index > 0)
                        {
                            hrefValue = hrefValue.Substring(0, index);
                            lstTitles.Items.Add(hrefValue.Replace("/url?q=", string.Empty));
                            string output = Regex.Replace(link.InnerText, ""\\.?", string.Empty);
                            Log.Items.Add("Found new url");
                            requested_urls.Add(hrefValue.Replace("/url?q=", string.Empty));
    
                            
                        }
                    }
                }
                //  Log.DataSource = requested_urls; 
              //  Analyze();
    
                UpdateLog();
                f2.Show();
                Analyze();
    
            }

    ya govnokoder ili net>?

    govnokoder22811, 17 Марта 2018

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

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    bool MyClass::operator==(int elem){
        if (list.isExist(elem)){
            list.remove(elem);
            return true; // Операция завершена успешно
        }
        return false; // Элемент elem не найден в списке
    }

    (C) https://www.linux.org.ru/forum/development/14063699?cid=14063991

    Вырвано из контекста (треда), но считаю данная кучка должна лежать здесь.

    Elvenfighter, 05 Марта 2018

    Комментарии (6)
  9. JavaScript / Говнокод #23858

    −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
    var i, j;
    
    loop1:
    for (i = 0; i < 3; i++) {      //The first for statement is labeled "loop1"
       loop2:
       for (j = 0; j < 3; j++) {   //The second for statement is labeled "loop2"
          if (i === 1 && j === 1) {
             continue loop1;
          }
          console.log('i = ' + i + ', j = ' + j);
       }
    }

    Метки в js. Баян?
    https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/label

    vistefan, 03 Марта 2018

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

    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
    class PriceCache {
    public:
      FlightStorage(const std::size_t count) {
        for (std::size_t i = 0; i < count; ++i) {
          flights.emplace_back(FlightCache::get(i));
          prices.emplace_back(&flights.back(), Price::getFor(flights.back()));
        }
      }
    
    private:
      std::vector<Flight> flights;
      std::vector<const Flight *, double> prices;
    };

    "случайные сегфолты при обращении к PriceCache::prices"

    Elvenfighter, 28 Февраля 2018

    Комментарии (6)
  11. Swift / Говнокод #23691

    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
    public class DialogBuilder: NSObject {
    
        private var style: UIAlertControllerStyle
        private var titleColor: UIColor?
    
        /**
         * initial DialogBuilder with UIAlertControllerStyle and  for title color
         */
        public init(style: UIAlertControllerStyle = .alert, titlecolor : UIColor?) {
            self.style = style
            if(titlecolor != nil)
            {self.titleColor = titlecolor}
        }
        /**
         * initial DialogBuilder with UIAlertControllerStyle
         */
        public init(style: UIAlertControllerStyle = .alert) {
            self.style = style
        }
    
        ...
    }

    wwweshka, 31 Января 2018

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