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

    +165

    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
    // Color and text
    // -- Безупречный
    if (nScore >= 90)
    {
    var strText = "Отличный пароль! Главное не забыть его :) ";
    var strColor = "#0ca908";
    }
    // -- Очень хороший
    else if (nScore >= 80)
    {
    var strText = "Очень хороший";
    vstrColor = "#7ff67c";
    }
    // -- Хороший
    else if (nScore >= 70)
    {
    var strText = "Хороший";
    var strColor = "#1740ef";
    }
    // -- Давольно нормальный
    else if (nScore >= 60)
    {
    var strText = "Достаточно неплохо";
    var strColor = "#5a74e3";
    }
    // -- Нормальный
    else if (nScore >= 50)
    {
    var strText = "Нормально";
    var strColor = "#e3cb00";
    }
    // -- Слабый
    else if (nScore >= 25)
    {
    var strText = "Слабенько";
    var strColor = "#e7d61a";
    }
    // -- Очень плохой
    else
    {
    var strText = "Ужас. (qwerty и то лучше :) ) ";
    var strColor = "#e71a1a";
    }

    else if (nScore >= 25)
    {
    var strText = "Слабенько";
    var strColor = "#e7d61a"; // -- Слабенько?WTF???????
    }

    Взято с блога великого кодера darkoff.ru

    Запостил: BlincAttack, 25 Июля 2010

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

    • показать все, что скрытоТ.е написав 90 раз одну и ту же букву, по мнению автора, - это отличный пароль ?
      Ответить
      • я лично тут не вижу определения переменной nScore, - мб она получается из функции какой-то, которая выделяет последовательности символов, чот типа такого примера:
        afafafafafafafaf -> af x8 => nScore = 8;
        afeytd as to as jrge -> as x2, +12 => nScore = 14;

        вообщем: nScore - это не обязательно длинна строки ;-)
        Ответить
        • Тогда логика автора мне не понятна :3
          Ответить
          • логика:
            - юзверь вводить Строку (пароль)
            - некая функция анализирует пароль, по какому-то алгоритму, и выдаёт Оценку: nScore
            - тут представлена градация оценки пароля (отличный, хороший, плохой т.п.), и цвет текста, которым будет написана эта надпись

            как такового гавнокода тут не видно....
            - разве что излишние оценки:
            "Отлично",
            "почти отлично",
            "почти почти отлично",
            "чуть лучше чем довольно хорошо",
            "довольно хорошо",
            "чуть хуже чем довольно хорошо",
            "хорошо", ....

            ну и цвет, который аффтор выделил коментом: это цвет децкой неожиданности, аффтор этим хотел сказать, что "пароль - гавно!" =Ъ
            Ответить
            • Хотелось бы взглянуть на алгоритм :-D
              Ответить
              • BlincAttack ссылку дал же:
                http://darkoff.ru/2010/06/проверка-сложности-пароля-на-javascript/
                Ответить
      • Где здесь вообще написано про связь nScore и длины строки?
        Ответить
    • http://darkoff.ru/2010/06/%D0%BF%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0% BA%D0%B0-%D1%81%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1% 81%D1%82%D0%B8-%D0%BF%D0%B0%D1%80%D0%BE%D0%BB%D1%8F-%D0%BD%D0%B0-javascript/

      вот оригинал, посмотрите чему равна переменная=)
      Ответить
      • Бу-га-га :))) Смайлы в исходнике :)
        А с цветами прикол лично мне не понятен. От балды?
        Ответить
      • ИМХО какая-то тупая логика - я б энтропию попытался определить
        и помимо этого сжал бы его каким-нибудь простым RLE
        да и вообще - там можно упростить логику - сделав массив с весами
        и не писать таких говеных условий
        // -- Letters are all lower case
        if (nUpperCount == 0 && nLowerCount != 0)
        nScore += 10;
        // -- Letters are upper case and lower case
        else if (nUpperCount != 0 && nLowerCount != 0)
        nScore += 20;
        Ответить
        • +1 к массиву с весами для условий.
          А вот с энтропией хз. "qwertyyy" и "q1e%tYYY" будут иметь равную энтропию, ведь так?
          Ответить
          • ну вообще-то я имел ввиду энтропию, с разными вероятностями, (существуют ведь разные виды энтропии. есть навороченые - вероятность с учетом предыдущего символа 2-х,3-х)..
            а-ля хаффман-сжатие с разными весами...

            у гугла вроде js-проверка выполняется через аякс и логика лежит на серваке

            хотелось бы увидеть нормальную проверку
            а то гуглил и нашел практически идентичиный пример, только с другими весами xD ))
            http://megasoft.3dn.ru/forum/28-1309-1
            Ответить
    • кто такой дуракофф? очередной вебкил?
      Ответить
      • Прямо в точку, это очередной вебкилл ^_^
        Ответить
        • Пожалуй самый жирный высер товарища дуракоффа -- "Нам нужен Delphi компилятор!".
          Ответить
          • Видимо, его чмырили в детстве:

            MessageBox(0,'Введи хп, козел','Ошибка в ДНК!',MB_OK + MB_ICONERROR);
            Ответить
            • >>>'Введи хп, козел'
              точно очередной

              Delphi-кодинг - подумал что Быдло-кодинг )))
              честное программерское
              Ответить
    • количество оценок намекает на способ, "холодно-горячо" ))
      Ответить
    • На дельфях писаный каканый автором "билдер" был эпичнее - #3750.
      Функции для чтения и записи текста в фаил на Delphi 
      Вот написал на делфи функции SaveToFile() и LoadFromFile().

      И вообще высеры в дельфевом разделе доставляют

      А этот алгорифм оценки сложности бородатъ.
      Ответить

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