1. Список говнокодов пользователя ololenok

    Всего: 1

  2. JavaScript / Говнокод #19863

    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
    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
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="utf-8">
      <title>Task 8_1</title>
      <script type="text/javascript">
      function charRemover(item) {
      var charsMoreThanTwoTimes = "";
      var charsMoreThanTwoTimes2 = "";
      var tmpString="";
      var result = "";
      var almostResult = "";
      var nextWordBeginning = 0;
      for (var a = 0; a < item.length; a++) {
               
       if ((a == nextWordBeginning+1)&&(nextWordBeginning > 0)) {tmpString="";}
       if ((a!=item.length-1)&&((item[a]!=' ') && (item[a]!=',') && (item[a]!='.') && (item[a]!=';') && (item[a]!=':') && (item[a]!='!') && (item[a]!='?')))
       {
         tmpString = tmpString + item[a];
       }        
         
        else if ((a == item.length -1 ) && ((item[a]!=' ') && (item[a]!=',') && (item[a]!='.') && (item[a]!=';') && (item[a]!=':') && (item[a]!='!') && (item[a]!='?')))
         {
         tmpString = tmpString + item[a];
    
        for (var j = 0; j < tmpString.length; j++)
          {
              var counter = 0;
              for (var k = 0; k < tmpString.length; k++)
              {
                  if (tmpString[k] == tmpString[j]) {counter++; }
              }
              if (counter == 1) {almostResult = almostResult + tmpString[j];}
              if (counter > 1) { charsMoreThanTwoTimes = charsMoreThanTwoTimes + tmpString[j];}
          }
        } 
         
      else if ((a != item.length-1)&&((item[a]==' ') || (item[a]==',') || (item[a]=='.') || (item[a]==';') || (item[a]==':') || (item[a]=='!'))){     
         for (var j = 0; j < tmpString.length; j++)
          {
              var counter = 0;
              for (var k = 0; k < tmpString.length; k++)
              {
                  if (tmpString[k] == tmpString[j]) {counter++;}
              }
              if (counter == 1) {almostResult = almostResult + tmpString[j];}
              if (counter > 1) { charsMoreThanTwoTimes = charsMoreThanTwoTimes + tmpString[j];}          
          }
          almostResult = almostResult + item[a];
         nextWordBeginning = a;
        }
       }
      counter = 0;
    
      //пройдемся еще раз и удалим символы, которые встречаются более одного раза
      for (var i = 0; i < almostResult.length; i++)
      {
        var shoundCharToBeRemoved = false;      
         for (var j = 0 ; j < charsMoreThanTwoTimes.length; j++)
         {
             if (almostResult[i] == charsMoreThanTwoTimes[j]) {shoundCharToBeRemoved = true;}
         }
         if (shoundCharToBeRemoved == true) {}
         else {result = result + almostResult[i];}
      }
        return result;
      }
            
      var sourceString = "У попа была собака";   
      var destString = charRemover(sourceString); 
      </script>
    </head>
    <body>
        <script type="text/javascript">
            document.write(destString);
        </script>
    </body>
    </html>

    Только что начал изучать JavaScript. Знаю, что говнокод, так что не судите строго !

    Сама задача: Нanucaть функцuю, нa вxoд кoтoрoй nрuxoдuт cтрoкa, cocтoящaя uз неcкoлькux cлoв. cлoвa
    рaзделены nрoбельнымu cuмвoлaмu (nрoбел, тaбуляцuя) u знaкaмu nреnuнaнuя (?!:;,.). Нужнo
    вернуть cтрoку, в кoтoрoй будут удaлены вcе cuмвoлы, noвтoряющuеcя xoть в oднoм uз cлoв бoлее
    oднoro рaзa.

    ololenok, 22 Апреля 2016

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