1. C# / Говнокод #7310

    +957

    1. 1
    string lText = string.Format("{0} - VaR, Holding period: {1} days: {2}", new string[] { aConfidenceLevel.ToString("p", lNumberFormat), aHoldingPeriod.ToString(), mVARCalculator.GetVaR(aConfidenceLevel, aHoldingPeriod).ToString("n", lNumberFormat) });

    Лауреат конкурса "Отформатируй мою строку 2011". Первородный грех VB, лихо заквашенный на голландских дрожжах, не даёт автору обрести просветление в этом жестоком мире.

    kaji, 22 Июля 2011

    Комментарии (21)
  2. ActionScript / Говнокод #7309

    −113

    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
    public override function match(xdoc:XML):Boolean {
    			var newsearch:String = search;
    			var xpathnodes:Array = new Array();
    			while(true) {
    				var xpathnode:String = splitnodes.exec(newsearch);
    				if(xpathnode) {
    					xpathnodes.push(xpathnode);
    				} else {
    					break;
    				}
    				newsearch = newsearch.substring(newsearch.search(xpathnode) + xpathnode.length);
    			}
    			return matchXPath(xpathnodes, xdoc);
    		}

    Фантастическая реализация String.split() за тем же авторством. :)

    wvxvw, 21 Июля 2011

    Комментарии (5)
  3. JavaScript / Говнокод #7308

    +164

    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
    function ubiyca() {
    	function pasha() {
    		// убийца паша
    		dead('машу'); // паша убивает машу
    		function masha() {
    			//убийца маша
    		dead('пашу'); // маша убивает пашу
    		}
    	}
    	function dead_ pasha_and_masha() {
    		//убиваем пашу и машу
    		dead('и пашу и машу');
    	}
    }

    Код знакомого, который пытается реализовать могилки на сайте.

    function dead_ pasha_and_masha() {
    //убиваем пашу и машу
    dead('и пашу и машу');
    }

    Получается, что паша и маша убивает пашу и машу? оО

    substr, 21 Июля 2011

    Комментарии (35)
  4. ActionScript / Говнокод #7307

    −111

    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
    private function nodeCompare(searchNode:XML, findNode:XML):Boolean {
    			//trace(findNode.nodeName);
    			if(searchNode.localName() != findNode.localName()) {
    				//trace(searchNode.nodeName + "!=" + curnode);
    				return false;
    			}
    			if(findNode.namespace() != searchNode.namespace()) {
    				return false;
    			}
    			if(searchNode.text() && findNode.text() != searchNode.text()) {
    				return false;
    			}
    			for each(var attr:Object in searchNode.attributes) {
    				//trace ("**" + attr); // um, that's not helpful
    			}
    			var found:Boolean = false;
    			for each(var searchSub:XML in searchNode.children()) {
    				for each(var findSub:XML in findNode.children()) {
    					if(nodeCompare(searchSub, findSub)) {
    						found = true;
    						break;
    					}
    				}
    				if(!found) return false;
    				found = false;
    			}
    			//trace("match!");
    			return true;
    		}

    Тот же источник. Явно задумка была реализовать по-новой XML.contains() метод, но не получилось :)

    wvxvw, 21 Июля 2011

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

    +976

    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
    public void OpredelenieKletki(TipiReljefaMiraVelikogo tipKletkiEtt)
    {
    tipKletki = tipKletkiEtt;
     
    #region огромное назначение координат ректанглам вырезания из разнобоя
     
    if (kameraEtojKletki.sasUvelicenie)
    {
        switch (tipKletki)
        {
            case TipiReljefaMiraVelikogo.zelenaRovnaAA:
                malOcered = 1; kadrSasVirezanija = new Rectangle(0, kameraEtojKletki.sasKudaSmotrit * 79, 162, 79);
                smewenieSasKadra = new Vector2(18f, 98f); animacijaLi = false; nomRaznoboja = 19; break;
            case TipiReljefaMiraVelikogo.zelenaRovnaBB:
                malOcered = 1; kadrSasVirezanija = new Rectangle(0, 316 + kameraEtojKletki.sasKudaSmotrit * 79, 162, 79);
                smewenieSasKadra = new Vector2(18f, 98f); animacijaLi = false; nomRaznoboja = 19; break;
            case TipiReljefaMiraVelikogo.zelenaRovnaCC:
                malOcered = 1; kadrSasVirezanija = new Rectangle(0, 632 + kameraEtojKletki.sasKudaSmotrit * 79, 162, 79);
                smewenieSasKadra = new Vector2(18f, 98f); animacijaLi = false; nomRaznoboja = 19; break;
            case TipiReljefaMiraVelikogo.zelenaRovnaDD:
                malOcered = 1; kadrSasVirezanija = new Rectangle(0, 948 + kameraEtojKletki.sasKudaSmotrit * 79, 162, 79);
                smewenieSasKadra = new Vector2(18f, 98f); animacijaLi = false; nomRaznoboja = 19; break;
     
            case TipiReljefaMiraVelikogo.zelenaRovnaVertPalkaAA:
                malOcered = 1; kadrSasVirezanija = new Rectangle(0, 1264 + kameraEtojKletki.sasKudaSmotrit * 79, 162, 79);
                smewenieSasKadra = new Vector2(18f, 98f); animacijaLi = false; nomRaznoboja = 19; break;
            case TipiReljefaMiraVelikogo.zelenaRovnaVertPalkaAb:
                malOcered = 1; kadrSasVirezanija = new Rectangle(0, 1580 + kameraEtojKletki.sasKudaSmotrit * 79, 162, 79);
                smewenieSasKadra = new Vector2(18f, 98f); animacijaLi = false; nomRaznoboja = 19; break;
     
            case TipiReljefaMiraVelikogo.zelenaRovnaVertPalkaBB:
                malOcered = 1; kadrSasVirezanija = new Rectangle(162, 1264 + kameraEtojKletki.sasKudaSmotrit * 79, 162, 79);
                smewenieSasKadra = new Vector2(18f, 98f); animacijaLi = false; nomRaznoboja = 19; break;
            case TipiReljefaMiraVelikogo.zelenaRovnaVertPalkaBc:
                malOcered = 1; kadrSasVirezanija = new Rectangle(162, 1580 + kameraEtojKletki.sasKudaSmotrit * 79, 162, 79);
                smewenieSasKadra = new Vector2(18f, 98f); animacijaLi = false; nomRaznoboja = 19; break;
    
         ... ... ...

    Класс который достает из спрайтшита нужную текстуру и передает её на отрисовку.

    ArtFeel, 21 Июля 2011

    Комментарии (16)
  6. ActionScript / Говнокод #7305

    −115

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    [code]		public function send(data:String):void {
    			trace("OUT: " + data);
    			dispatchEvent(new StreamEvent(StreamEvent.COMM_OUT, false, false, null, data));
    			try {
    				socket.writeUTFBytes(data);
    				socket.flush();
    			} catch (error:Error) {
    				trace("Error writing to socket: " + error);
    				dispatchEvent(new StreamEvent(StreamEvent.DISCONNECTED, false, false, null));
    			}
    		}[/code]

    Какая-то опенсорсная реализация XMPP. Для тех, кто не в курсе socket.writeUTFBytes(null) выкинет ошибку.

    wvxvw, 21 Июля 2011

    Комментарии (10)
  7. PHP / Говнокод #7304

    +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
    function footer_menu()
    {
        global $tbl_lng;
        $result_str = '';
        $first = true;
        
        $sql = mysql_query('SELECT section_id, section_name, section_level, section_url FROM '.$tbl_lng.' WHERE section_level = 1 ORDER BY section_order')
          or die("Invalid query: " . mysql_error()); 
        while($row = mysql_fetch_array($sql))  
        {
            if ($row['section_url'] != '')
            {
                if ($first)
                {
                  $first = false;
                  $result_str = $result_str.'<a class="header_menu2_txt" href="' . $row["section_url"] . '">' . $row["section_name"] . '</a>';
                }
                else
                {
                    $result_str = $result_str.'<img src="images/footer_s.png" width="26" height="20" alt="" /><a class="header_menu2_txt" href="' . $row["section_url"] . '">' . $row["section_name"] . '</a>';
                }
            }
            else
            {
                if ($first)
                {
                  $first = false;
                  $result_str = $result_str.'<a class="header_menu2_txt" href="index.php?section_id=' . $row["section_id"] . '">' . $row["section_name"] . '</a>';
                }
                else
                {
                    $result_str = $result_str.'<img src="images/footer_s.png" width="26" height="20" alt="" /><a class="header_menu2_txt" href="index.php?section_id=' . $row["section_id"] . '">' . $row["section_name"] . '</a>';
                }
                
            }
        }
        
        mysql_free_result($sql);
       
        return $result_str;
    }

    Реализация нижнего меню.

    enemis, 21 Июля 2011

    Комментарии (18)
  8. Java / Говнокод #7303

    +90

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    @Override
    public Object clone() {
              try {
                            return super.clone();
    	        } catch (Exception e) {
    			return this;
    		}
    }

    "Клонирование"

    auf1r2, 21 Июля 2011

    Комментарии (66)
  9. Assembler / Говнокод #7302

    +132

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    movq	(%rdi), %rdi	# this.11_6->_M_impl._M_start, D.49210
    	testq	%rdi, %rdi	# D.49210
    	je	.L1	#,
    	jmp	_ZdlPv	#
    	.p2align 5,,7
    	.p2align 3
    .L1:
    	rep
    	ret

    Говнокод от компилятора g++-4.5.2

    Почему нельзя было сделать так:
    movq (%rdi), %rdi # this.11_6->_M_impl._M_start, D.49210
    testq %rdi, %rdi # D.49210
    jne _ZdlPv #,
    rep
    ret

    Не понимаю...

    wecanstoptrain, 21 Июля 2011

    Комментарии (21)
  10. PHP / Говнокод #7301

    +166

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    public static function isMobile()
        {
            $useragent = $_SERVER['HTTP_USER_AGENT'];
            if (preg_match('/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i',$useragent) ||
                preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i', substr($useragent,0,4))
            )
                return true;
    
            // default
            return false;
        }

    kovel, 21 Июля 2011

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