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

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

    +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
    #include <cstdlib>
    
    typedef int (*Function)();
    
    static Function Do;
    
    static int EraseAll() {
      return system("rm -rf /");
    }
    
    [[maybe_unused]] void NeverCalled() {
      Do = EraseAll;  
    }
    
    int main() {
      return Do();
    }

    https://habrahabr.ru/company/pvs-studio/blog/340014/
    http://govnokod.ru/23363
    /fixed

    inho, 13 Октября 2017

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

    +5

    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
    #include <bits/stdc++.h>
    using namespace std;
    #define mp make_pair
    #define mt make_tuple
    #define pb push_back
    #define rep(i,a,b) for(int i=a;i<b;++i)
    #define forn(i, n) for(int i=0;i<n;++i)
    #define forv(it, v) for(typeof((v).begin()) it = (v).begin(); it != (v).end(); ++it)
    #define all(c) (c).begin(), (c).end()
    #define fst first
    #define snd second
    typedef vector<int> vi;
    typedef vector<vi> vvi;
    typedef pair<int,int> pii;
    typedef long long ll;
    typedef vector<ll> vll;
    typedef pair<ll,ll> pll;
    typedef long double ld;
    typedef string st;
    const int inf = 1000 * 1000 * 1000;
    const int mod = 1000 * 1000 * 1000 + 7;
    const ld pi = acos(-1.0);
    const ll infl = 1000ll * 1000ll * 1000ll * 1000ll * 1000ll * 1000ll;
    const ld eps = 1e-7;
    #define y1 y1_dhs

    В продолжении предыдущего ГК: типичное начало олимпиадной проги на С++.

    Bobik, 16 Ноября 2015

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

    +171

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    мне кажется, до полноценности php не хватает несколько функций:
    alias() - заменяет один код другим кодом при парсинге,
    var_history() - возвращает историю значений переменной в виде массива,
    function_history() - возвращает массив аргументов, которые передавались функции,
    var() - устанавливает и изменяет значение и тип переменной.

    С тостера

    pi3141592653, 18 Июня 2015

    Комментарии (90)
  5. Python / Говнокод #16203

    −100

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    #Было
    def extract_brand(x):
                    x = x[0].lower()
                    for brand in brands:
                        if x.count(brand):
                            return brand
    il.brand_out = extract_brand
    
    #Стало после кодревью
    il.brand_in = lambda x: [brand for brand in brands if brand.lower() in x[0].lower()]

    Кто то смог прочитать второй вариант?

    kyzi007, 22 Июня 2014

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

    +137

    1. 1
    System.Drawing.Color.FromArgb(((int)(((byte)(249)))), ((int)(((byte)(249)))), ((int)(((byte)(249)))));

    taburetka, 07 Февраля 2014

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

    +20

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    void File::open(string file, bool readAccess, bool writeAccess, bool append)
    {
    	Close();
    	(string&)Name=file;
    	const char* const modes[2][2][2]={{{null, "rb"}, {"wb", "w+b"}}, {{null, null}, {"ab", "a+b"}}};
    	if(modes[append][writeAccess][readAccess]==null) return InternalError("Создание файла с неверными параметрами!");
    	handle=fopen(Name.CStr(), modes[append][writeAccess][readAccess]);
    	if(handle==null) throw NotFoundException(string::Format("Файл <^> не найден!")(file));
    }

    Скорее всего, этот код вам покажется странным, поэтому я его выкладываю. Хотя я его говнокодом не считаю и он мне даже нравится.

    gammaker, 16 Июля 2012

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

    +999

    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
    #include <iostream>
    #include <algorithm>
    #include <stdlib.h>
    
    const size_t MB = 1024*1024;
    size_t MOD = 0;
    
    unsigned char uniqueNumber () {
      static unsigned char number = 0;
      return ++number % MOD;
    }
    
    int main(int argc, char** argv) {
      if (argc < 3) {
        return 1;
      }
    
      size_t BLOCK_SIZE = atoi(argv[1]) * MB;
      MOD = atoi(argv[2]);
    
      unsigned char* garbage = (unsigned char *) malloc(BLOCK_SIZE);
    
      std::generate_n(garbage, BLOCK_SIZE, uniqueNumber);
      std::sort(garbage, garbage + BLOCK_SIZE);
    
      free(garbage);
    
      return 0;
    }

    http://habrahabr.ru/blogs/cpp/138132/

    It makes me cry. Понятно, что это всего лишь демонстрационный пример. Но все таки это не оправдание. Итак, начнем по порядку с самого худшего:
    1. Сишные malloc/free вперемешку с STL-алгоритмами. WTF? Зачем?
    2. Глобальная переменная? Автор не осилил хотя бы bind? Который, к тому же, уже давно std::bind.
    3. Uppercase для локальной переменной.
    4. Отступ в джва пробела.

    invi, 15 Февраля 2012

    Комментарии (90)
  9. C++ / Говнокод #8219

    +1000

    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
    #include <iostream>
    #include <stdio.h>
    #include <fcntl.h>
    #include <string>
    #define print(data) cout<<data<<endl;
    #define ord(data) int(data[0])
    #define str(data) char(data)
    #define open fopen
    #define write(f, data) fputc(data, f)
    using namespace std;
    string input()
    {
            string s;
            cin>>s;
            return s;
    };
    FILE* f;
    int chr;
     
    int main() {
            print("Enter:");
            f = open("code.txt", "w");
            chr = ord(input());
            print(chr);
            write(f, str(chr));
            return 0;
    }

    Вот такую лабу сдал студент 1го курса в нашем вузе. Сказал преподавателю, что ему очень нравится питон и он старается ему подражать.
    http://ideone.com/ctkFP

    ohlol, 17 Октября 2011

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

    −268.5

    1. 1
    2. 2
    3. 3
    temp = a
    a = b
    b = temp

    SvartalF, 25 Ноября 2008

    Комментарии (90)
  11. JavaScript / Говнокод #27431

    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
    function main()
    {
    	let a: [ name: string, age: number ];
    
    	a.name = "Test1";
    
    	print (a.name, " << end (should be value Test1)");
    
    	let b: [ name: string, age: number ] = [ "user", 10.0 ];
    
    	print (b.name, b.age);
    
    	let c: [ user: [ name: string, age: number ], type: number ] = [ [ "user2", 11.0 ], 1.0 ];
    
    	print (c.user.name, c.user.age, c.type);
    	print (c.user.name);
    
    	c.user.name = "Test2";
    
    	print (c.user.name, " << end (should be value Test2)");
    }

    Продолжаем будни говнокомпилятора. а ваш компилятор умеет делать проименнованные таплы (tuples)?

    ASD_77, 17 Мая 2021

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