1. JavaScript / Говнокод #2192

    +162.3

    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
    i = function () { // n = ['единственное число','множественное, 2-4','множественное число, остальное']
    	d = parseFloat(a[b].innerHTML); // каг-бэ число, которое нужно просклонять
    	if (!d) {
    		return n[2]
    	} else if (d % 1) {
    		return n[1]
    	} else if (/(11|12|13|14|5|6|7|8|9|0)$/.test(d)) { // Гениально, неправда ли?
    		return n[2]
    	} else if (/1$/.test(d)) {
    		return n[0]
    	} else if (/(2|3|4)$/.test(d)) {
    		return n[1]
    	}
    };

    Не зря говорят, математика - царица всех наук.

    Запостил: chu4, 28 Ноября 2009

    Комментарии (2) RSS

    • А чего говнокодистого то?
      Ответить
      • Каг-бэ юзать регэкспы везде и повсюду не тру. Они работают очень медленно.
        Немного элементарной арифметики и получаем решение, работающее до 2 раз быстрее. Да еще и кроссплатформено (Регэкспы ведь не везде нативно есть, а вот операции div и mod - родные для многих языков :-) ).
        Ответить

    Добавить комментарий