Timkor

numOfWords

Jan 16th, 2021 (edited)
878
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. let a = prompt("Введіть рядок");
  2. let allwds = 1; // скорочення не покращують читання коду, якщо вони не загальноприйняті.
  3. for (let i = 0; i < a.length; i++) {
  4.     if ( a.charCodeAt(i) === 32) {
  5.         allwds += 1;
  6.     }
  7. }
  8. console.log("Кількість слів у рядку - " + allwds);
  9.  
  10. /*
  11. правді не погано для початку, ваш код виконує підрахунок пробілів, і припускаючи, що між словами буде лише по одному пробілу, і не буде ніяких інших роздільників, і строка не починається та не закінчується пробілами, і рядок складається з мінімум одного слова - видасть коректну відповідь.  Але якщо хочете круто похардкорити (не плутати з хардкодити) то в ідеалі можна зробити таке:
  12. врахувати, що роздільник це будь який символ який не є літерою. (літерами можна вважати лише латинські, або як зручно)
  13. врахувати те, що роздільники можуть створювати послідовності : ab...c   d/*-=+ef тут с4 лова: ab, c, d, ef
  14. врхувати те, що рядок може починатися або закінчуватися роздільниками
  15. врахувати, що рядок може не містити слів, або роздільників
  16.  
  17. МОже здатися, що це вкрай важко - і це дійсно буде не просто аж поки не вийде, а потім вже ви не зможете згадати, що саме здавалося важким.  Можливо якщо почитати попередні ревью так код інших студентів:
  18.  
  19. https://pastebin.com/sEeBqJsJ
  20. https://pastebin.com/z3asKt6G
  21.  
  22.   - то буде легше.
  23.  
  24. Можливо також допоможе частково рішення наступної задачи (слово максимальної довжини) , код за посиланням https://pastebin.com/fkm7aLqQ
  25.  
  26. Гарного коду!
  27. */
RAW Paste Data