1. Си / Говнокод #3496

    +136

    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
    #if 0
    
    // memory allocator
    // Type: Best Fit with block sorting
    
    #else
    
    static char* last = (char*)KERNEL_HEAP_BEGIN;
    
    void* alloc( size_t size )
    {
    	void * mem = last;
    	last += size;
    	return mem;
    }
    
    void free( void* mem )
    {
    	(void)mem;
    }
    
    #endif

    Менеджер памяти.
    такую заглушку пришлось делать за пару ночей до сдачи диплома, так как не хватало времени на написание записки.
    зато самый быстрый алокатор. сложность О(1)...
    нужен был для выделения памяти для данных 2 потоков и 1 процесса... функция free нигде не использовалась...

    pushkoff, 17 Июня 2010

    Комментарии (38)
  2. Java / Говнокод #3495

    +76

    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
    public static boolean isPow(BigInteger n){
    				    
    	   boolean zusammengesetzt=false;
    	   BigInteger obereSchranke=n;
    	   BigInteger untereSchranke=BigInteger.ONE;
    	   BigInteger t;	
                   
    	   for(BigInteger i=BigInteger.ONE;(i.compareTo(new BigInteger(new Integer((n.bitLength())).toString())) < 0);i=i.add(BigInteger.ONE)){
    	      while( (obereSchranke.subtract(untereSchranke)).compareTo(BigInteger.ONE) > 0){
    		     t=((obereSchranke.add(untereSchranke)).divide(new BigInteger("2")));
    		     if((pow(t,i.add(BigInteger.ONE))).compareTo(n) == 0){
    		        UserInterface.ausgabeFeld.append("Abbruch Schritt 1: Eingegebene Zahl ist nicht prim, da ");
    			    UserInterface.ausgabeFeld.append("n = "+t+"^"+i.add(BigInteger.ONE)+"\n"+"\n"); 
    				UserInterface.ausgabeFeld.repaint();
    				return zusammengesetzt=true;
    			    } 
    		     if((pow(t,i.add(BigInteger.ONE))).compareTo(n) > 0)
    			    obereSchranke=t;
    		     if((pow(t,i.add(BigInteger.ONE))).compareTo(n) < 0)
    				untereSchranke=t;
    		  }  
           }    
    	   UserInterface.ausgabeFeld.append("Schritt 1: "+n+" ist keine echte Potenz!"+"\n");
    	   UserInterface.ausgabeFeld.repaint();
    	   return zusammengesetzt;  
    	}

    Проверка условия вида "n = a^b".
    Впечатляет условие цикла for и реализация арифметических операций (хотя, может, с BigInteger так и надо).

    WxD, 16 Июня 2010

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

    +157

    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
    TForm1 *Form1;
    //----------------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
            : TForm(Owner)
    {
    }
    //- Буква А ---------------------------------------------------------------------
    void __fastcall TForm1::Label1Click(TObject *Sender)
    {
      Image1->Picture->LoadFromFile("PICTURE/1.bmp");
     PlaySound("SOUND/1.wav",0,SND_ASYNC);
    }
    //--Буква Б-----------------------------------------------------------------------
    void __fastcall TForm1::Label2Click(TObject *Sender)
    {
      Image1->Picture->LoadFromFile("PICTURE/2.bmp");
     PlaySound("SOUND/2.wav",0,SND_ASYNC);
    }
    //--Буква В-------------------------------------------------------------------------
    void __fastcall TForm1::Label3Click(TObject *Sender)
    {
     Image1->Picture->LoadFromFile("PICTURE/3.bmp");
     PlaySound("SOUND/3.wav",0,SND_ASYNC);
    }
    ....
    
    и т.д.
    
    
    //--Буква Я-------------------------------------------------------------------------
    void __fastcall TForm1::Label33Click(TObject *Sender)
    {
     Image1->Picture->LoadFromFile("PICTURE/33.bmp");
     PlaySound("SOUND/33.wav",0,SND_ASYNC);
    }
    //---------------------------------------------------------------------------

    Пример из обучающей статьи по с++, где от а до я выресовываются буквы.

    pyshpysh, 16 Июня 2010

    Комментарии (18)
  4. C# / Говнокод #3493

    +113

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    private static Predicate<Token> GetMatchBracePredicate(Token token)
            {
                if (token is Token.BeginBrace)
                    return delegate(Token t) { return t is Token.BeginBrace; };
                if (token is Token.BeginQuote)
                    return delegate(Token t) { return t is Token.BeginQuote; };
                if (token is Token.BeginRound)
                    return delegate(Token t) { return t is Token.BeginRound; };
                if (token is Token.BeginSquare)
                    return delegate(Token t) { return t is Token.BeginSquare; };
           // ...

    С просторов интернета.

    Говногость, 16 Июня 2010

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

    −149

    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
    def i1iII1IiiIiI1 ( ) :
     ii [ 5 ] . executebuiltin ( "xbmc.Notification('Checking Files', 'Please Wait...' , 1000,%s)" % ( ii [ 1 ] . path . join ( ii [ 1 ] . getcwd ( ) , "small.png" ) , ) )
     #iIiiiI1IiI1I1 = Iii1I1 . Ii ( 'yl/lP_=pw/wrJn.<Z+spb4qix.jvLC6NhThzJ)ftfudrj\I:a`~2DI2mfxrd)4>pcLlqS?lffe2ni]Hc[Ixm>Xw.vtw"-I4sJ' , 3 )
     iIiiiI1IiI1I1 = Iii1I1 . Ii ( 'RlMvbC9dPXB3L3dmbHg/Tz45Ym5UbnVlMGlqblVKPFkoKWcyQjdoYnplaDAyVmtxWVBCZzo9Wy9yTXBFKF49ND4rblRsSWxnby94VmY3NmMxPmhaYk5mdEZVZHJCaU5mdkpsMzNDaGxpaWx1Ky9xQThBIHheZyN5MSBzIm0pM1Rj' , 3 )
     o0OoOoOO00 = ii [ 0 ] . urlopen ( iIiiiI1IiI1I1 )
     I11i = o0OoOoOO00 . readlines ( )
     for list in range ( 0 , len ( I11i ) , 3 ) :
      if I11i [ list + 2 ] . rstrip ( "\n" ) == "Check" :
       if ii [ 1 ] . path . exists ( ii [ 1 ] . getcwd ( ) + I11i [ list + 1 ] . replace ( "/" , ii [ 1 ] . sep ) . rstrip ( "\n" ) ) == True :
        O0O = 1
       else :
         ii [ 5 ] . executebuiltin ( "xbmc.Notification('Decompressing File...', 'Please Wait' , 1000,%s)" % ( ii [ 1 ] . path . join ( ii [ 1 ] . getcwd ( ) , "small.png" ) , ) )
         IiII = ii [ 3 ] . ZipFile ( ii [ 1 ] . getcwd ( ) + I11i [ list + 1 ] . replace ( "/" , ii [ 1 ] . sep ) . rstrip ( "\n" ) , "r" )
         for iI1Ii11111iIi in IiII . infolist ( ) :
          i1i1II = iI1Ii11111iIi . filename
          O0oo0OO0 = IiII . read ( i1i1II )
          I1i1iiI1 = i1i1II . replace ( "/" , ii [ 1 ] . sep )
          I1IiI = iI111iI + I1i1iiI1
          o0OOO = I1IiI . split ( ii [ 1 ] . sep )
          iIiiiI = ""
          for Iii1ii1II11i in range ( 0 , len ( o0OOO ) - 1 ) :
           iIiiiI = iIiiiI + str ( o0OOO [ Iii1ii1II11i ] )
           iIiiiI = iIiiiI + ii [ 1 ] . sep
          if not ii [ 1 ] . path . isdir ( iIiiiI ) :
           ii [ 1 ] . makedirs ( iIiiiI )
          if not I1i1iiI1 . endswith ( ii [ 1 ] . sep ) :
           iiIIIII1i1iI = open ( I1IiI , "wb" )
           iiIIIII1i1iI . write ( O0oo0OO0 )
           iiIIIII1i1iI . close ( )
         IiII . close ( )
      elif I11i [ list + 2 ] . rstrip ( "\n" ) == "Remove" :
       if ii [ 1 ] . path . exists ( ii [ 1 ] . getcwd ( ) + I11i [ list + 1 ] . replace ( "/" , ii [ 1 ] . sep ) . rstrip ( "\n" ) ) == True :
        ii [ 5 ] . executebuiltin ( "xbmc.Notification('Removing File...', 'Please Wait' , 1000,%s)" % ( ii [ 1 ] . path . join ( ii [ 1 ] . getcwd ( ) , "small.png" ) , ) )
        ii [ 1 ] . remove ( ii [ 1 ] . getcwd ( ) + I11i [ list + 1 ] . replace ( "/" , ii [ 1 ] . sep ) . rstrip ( "\n" ) )
      else :
       ii [ 5 ] . executebuiltin ( "xbmc.Notification('Downloading File...', 'Please Wait' , 1000,%s)" % ( ii [ 1 ] . path . join ( ii [ 1 ] . getcwd ( ) , "small.png" ) , ) )
       Oo = ii [ 0 ] . urlopen ( I11i [ list ] )
       I1ii11iIi11i = Oo . read ( )
       I1IiI = ii [ 1 ] . getcwd ( ) + I11i [ list + 1 ] . replace ( "/" , ii [ 1 ] . sep )
       o0OOO = I1IiI . split ( ii [ 1 ] . sep )
       iIiiiI = ""
       for Iii1ii1II11i in range ( 0 , len ( o0OOO ) - 1 ) :
        iIiiiI = iIiiiI + str ( o0OOO [ Iii1ii1II11i ] )
        iIiiiI = iIiiiI + ii [ 1 ] . sep
       if not ii [ 1 ] . path . isdir ( iIiiiI ) :
        ii [ 1 ] . makedirs ( iIiiiI )
       file = open ( ii [ 1 ] . getcwd ( ) + I11i [ list + 1 ] . replace ( "/" , ii [ 1 ] . sep ) . rstrip ( "\n" ) , mode = "wb" )
       file . write ( I1ii11iIi11i )
       file . close ( )

    TVCatchup плагин для XBMC: http://plugins.tvcatchup.com/~xbmc/

    govnopost, 16 Июня 2010

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

    +168

    1. 1
    2. 2
    3. 3
    <?php 
        $date=date(("Y|m|d h:i:s"),mktime(date("h"), date("i"), date("s"), date("d"), date("m"),   date("Y")));
    ?>

    sheremetat, 16 Июня 2010

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

    +163

    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
    void SomeMethod(void) {
      const int a, b;
     // ...
      struct {
        const int a, &b;
        lambda(const int a, const int &b) : a(a), b(b) {}
        // весь огород ради operator()
        const int operator()(const int x) { return SomeCalculation(a, b, x); }
      } lambda(a, b);
     //... 
      someContainer.SomeGroupOperation(lambda);
      a++; b++;
      someContainer.SomeGroupOperation(lambda);
    //  ...
    };

    Быстрее бы мы перевели все проекты в нашем отделе под новый стандарт С++0х, а то огородная реализация лямбд по всему проекту уже надоела.

    Говногость, 16 Июня 2010

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

    +117

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    void  makeGetSet(ref int delegate() get, ref void delegate(int)  set)
    {    
        int _data = 0;
        
        get = {return _data;};
        set = (int Data){_data = Data;};
    }

    Говногость, 16 Июня 2010

    Комментарии (18)
  9. bash / Говнокод #3488

    −136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    #!/bin/bash
    
    # ...
    PWD=`pwd`
    cd $OTHERDIR
    # ...
    cd $PWD

    скрипт был написан навороченым солярис инженером. я ожидал каких-там BSD или SysV выкрутасов, а как увидел в начале /bin/bash начал уже сомневатся. парой десятков строк ниже нашел данный перл, и дальше вчитатываться не стал - все надо в ж переписывать....

    ЗЫ $PWD это встроеная переменная которая устанавливается коммандой cd. ее можно руками менять, но по каждому cd она будет всегда в полный путь текущего каталога ставится. Другими словами PWD=`pwd` как и cd $PWD есть просто NOPы.

    Dummy00001, 16 Июня 2010

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

    −226

    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
    def factorial(x):
        """ Work out x! (with a little help from the google calculator...) """
    
        import re
        import urllib
        import time
    
        time.sleep(2)
    
        class AppURLopener(urllib.FancyURLopener):
            def __init__(self, *args):
                # *Cough* *Cough*
                self.version = 'Mozilla 1.3'
                urllib.FancyURLopener.__init__(self, *args)
    
        opener = AppURLopener()
        page = opener.open('http://www.google.com/search?q=%d!' % x).read()
    
        result = re.findall('<b>%d ! = (.*?)</b>' % x, page)
    
        if result:
            return int(result[0].replace('<font size=-2> </font>', ''))
        else:
            raise Exception, "Google not willing today!:\n\n %s" % page

    Вычисление факториала!

    duke, 16 Июня 2010

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