dddilian

Stream of Letters

Feb 13th, 2020
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function streamLetters(input) {
  2.     let foundC = false;
  3.     let foundO = false;
  4.     let foundN = false;
  5.     let word = '';
  6.     let word2 = '';
  7.     let vhod = input.shift();
  8.  
  9.     while (vhod != "End") {
  10.  
  11.         if ((vhod.charCodeAt(0) >= 65 && vhod.charCodeAt(0) <= 90) || (vhod.charCodeAt(0) >= 97 && vhod.charCodeAt(0) <= 122)) { //първо проверяваме дали е буква от латинската азбука - голяма или малка
  12.             if (vhod == 'c' && foundC != true) { //проверка, дали вече сме я срещали
  13.                 foundC = true;
  14.             } else if (vhod == 'o' && foundO != true) {//проверка, дали вече сме я срещали
  15.                 foundO = true;
  16.             } else if (vhod == 'n' && foundN != true) {//проверка, дали вече сме я срещали
  17.                 foundN = true;
  18.  
  19.             } else if (vhod == 'c' && foundC == true) {//ако вече сме срещали кодова буква, този път я добавяме към думата
  20.                 word += vhod;
  21.             } else if (vhod == 'o' && foundO == true) {//ако вече сме срещали кодова буква, този път я добавяме към думата
  22.                 word += vhod;
  23.             } else if (vhod == 'n' && foundN == true) {//ако вече сме срещали кодова буква, този път я добавяме към думата
  24.                 word += vhod;
  25.             } else {
  26.                 word += vhod; //тук добавяме всички останали букви
  27.             }
  28.         } else {  //ако входната буква е била някакъв друг символ
  29.             vhod = input.shift(); //вкарваме нова буква
  30.             continue; //и прескачаме тази итерация на цикъла, за да влезем отново горе
  31.         }
  32.  
  33.         if (foundC == true && foundO == true && foundN == true) { //ако сме срещнали всяка една от трите кодови букви
  34.             word += ' '; //добавяме интервал на текущата дума
  35.             word2 += word; //крайната дума ДОБАВЯ към себе си стойността на текущата
  36.             word = ''; //зачистваме текущата дума, за да почнем да я съставяме отначало
  37.  
  38.             foundC = false; //зачистваме и трите флага
  39.             foundO = false;
  40.             foundN = false;
  41.         }
  42.         vhod = input.shift(); //вкарваме пореден символ
  43.     }
  44.  
  45.     console.log(word2)
  46. }
  47.  
  48. streamLetters(['H', 'n', 'e', 'l', 'l', 'o', 'o', 'c', 't', 'c', 'h', 'o', 'e', 'r', 'e', 'n', 'e', 'End']);
  49. streamLetters(['o', 'S', '%', 'o', 'l', '^', 'v', 'e', 'c', 'n', '&', 'm', 'e', 'c', 'o', 'n', 'End']);
Add Comment
Please, Sign In to add comment