sctipt.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. let homework = prompt('Enter tack name').trim().toLowerCase();
  2. if (homework == 'number: odd') {
  3. // Number: odd
  4. // С помощью prompt узнайте число, введенное пользователем. С помощью if проверьте что число корректно
  5. // преобразовано из строки. В случае ошибки выведите сообщение Выведите четное число или нет, используя if.
  6. const enteredNumber = +prompt('Enter a number');
  7. if (!isNaN(enteredNumber)) {
  8. alert('This number is ' + (enteredNumber % 2 ? 'odd' : 'even'));
  9. } else {
  10. alert('You entered not a number');
  11. }
  12. } else if (homework == 'string: lexics') {
  13. // String: lexics
  14. // Спросите у пользователя текст, и проверьте его на наличие некорректного слова или нескольких некорректных
  15. // слов. Используйте метод indexOf (или includes) строки
  16. const str = prompt('Enter a text');
  17. if (str.indexOf('bad word') != -1) {
  18. alert("Your text includes 'bad word'");
  19. } else {
  20. alert("Your text doesn`t insludes 'bad word'");
  21. }
  22. } else if (homework == 'boolean') {
  23. // Boolean
  24. // Напишите код, который спрашивает те или иные вопросы с ответом "да"/"нет" с помощью confirm, и
  25. // сохраняет ответы в переменных.
  26. let mcDonaldsAnswer = confirm('Do you like McDonald`s?');
  27. let fishAnswer = confirm('Do you eat fish?');
  28. let cookAmswer = confirm('Do you like cook?');
  29. if (mcDonaldsAnswer) {
  30. mcDonaldsAnswer = 'Yes';
  31. } else {
  32. mcDonaldsAnswer = 'No';
  33. }
  34. if (fishAnswer) {
  35. fishAnswer = 'Yes';
  36. } else {
  37. fishAnswer = 'No';
  38. }
  39. if (cookAmswer) {
  40. cookAmswer = 'Yes';
  41. } else {
  42. cookAmswer = 'No';
  43. }
  44. alert(`Your answers:\n
  45. 1.Do you like McDonalds? ${mcDonaldsAnswer}\n
  46. 2. Do you eat fish? ${fishAnswer}\n
  47. 3. Do you like cook? ${cookAmswer}`);
  48. } else if (homework == 'boolean: if') {
  49. // Boolean: if
  50. // Расширьте предыдущее задание условиями по полученным переменным условиями (if else). Например, если
  51. // вы спрашиваете пол пользователя с помощью confirm, то по условию сделайте alert("Вы женщина") и
  52. // alert("Вы мужчина")
  53. const sexAnswer = confirm('Are you a woman?');
  54. if (sexAnswer) {
  55. alert('You are a woman');
  56. } else if (!sexAnswer) {
  57. alert('You are a man');
  58. }
  59. } if (homework == 'comparison: sizes') {
  60. // Comparison: sizes
  61. // Сделайте перевод перевод из нашей системы размеров в американскую или любую на выбор. Используйте prompt,
  62. // условия сравнения и alert.
  63. const ukrSystem = prompt('Which size clothes do you wear?');
  64. if (ukrSystem == 40) {
  65. alert('You wear 6 size in american system');
  66. } else if (ukrSystem == 42) {
  67. alert('You wear 8 size in american system');
  68. } else if (ukrSystem == 44) {
  69. alert('You wear 10 size in american system');
  70. } else if (ukrSystem == 46) {
  71. alert('You wear 12 size in american system');
  72. } else if (ukrSystem == 48) {
  73. alert('You wear 14 size in american system');
  74. } else if (ukrSystem == 50) {
  75. alert('You wear 16 size in american system');
  76. } else if (ukrSystem == 52) {
  77. alert('You wear 18 size in american system');
  78. } else if (ukrSystem == 54) {
  79. alert('You wear 20 size in american system');
  80. }
  81. } else if (homework == 'ternary') {
  82. // Ternary
  83. // Спросите у пользователя пол (confirm). Выведите с помощью alert "Вы мужчина" или "Вы женщина".
  84. // Используйте тернарный оператор.
  85. alert(confirm('Are you a woman?') ? 'You are a woman' : 'You are a man');
  86. } else if (homework == 'prompt: or') {
  87. // Prompt: or
  88. // Для задания Number: age используя ИЛИ || вывести сообщение об ошибке (alert) если пользователь не введет
  89. // возраст или нажмет отмену (т. е. prompt выдаст пустую строку или null, интерпретируемую как false).
  90. const age = prompt('How old are you?');
  91. !(age === '' || isNaN(age) || age === null) || alert('error');
  92. } else if (homework == 'confirm: or this days') {
  93. // Confirm: or this days
  94. // C помощью этого же трюка (использование ИЛИ для запуска альтернативы) сделайте капризного робота,
  95. // который в confirm спрашивает "шопинг?", а в случае отказа - выводить alert "ты - бяка".
  96. const shopping = confirm('Shopping?') || alert('ты-бяка');
  97. } else if (homework == 'confirm: if this days') {
  98. // Confirm: if this days
  99. // Сделать тоже самое с помощью if.
  100. const thisDays = confirm('This days?');
  101. if (!thisDays) {
  102. alert('ERROR');
  103. }
  104. } else if (homework == 'default: or') {
  105. // Default: or
  106. // Попросите пользователя ввести ФИО в три разныe переменныe. Используя ИЛИ || добавьте строки по
  107. // умолчанию, которые будут сохраняться во внутренних переменных если пользователь ввел пустую строку
  108. // или нажал "Отмена". Например, если вы на шаге ввода Фамилии нажмете Escape, фамилия будет "Иванов"
  109. const userName = prompt('What is your name?')?.trim() || 'Ivan';
  110. const userSurname = prompt('What is your surname?')?.trim() || 'Ivanov';
  111. const userMiddleName = prompt('What is your middle name?')?.trim() || 'Ivanovich';
  112. const fullName = userSurname + ' ' + userName + ' ' + userMiddleName;
  113. alert(fullName);
  114. } else if (homework == 'default: if') {
  115. // Default: if
  116. // Сделайте тоже самое с помощью if и else
  117. let userName = prompt('What is your name?')?.trim();
  118. let userSurname = prompt('What is your surname?')?.trim();
  119. let userMiddleName = prompt('What is your middle name?')?.trim();
  120. if (!userName) {
  121. userName = 'Ivan';
  122. }
  123. if (!userSurname) {
  124. userSurname = 'Ivanov';
  125. }
  126. if (!userMiddleName) {
  127. userMiddleName = 'Ivanovich';
  128. }
  129. let fullName = userSurname + ' ' + userName + ' ' + userMiddleName;
  130. alert(fullName);
  131. } else if (homework == 'login and password') {
  132. // Login and password
  133. // Напишите код, который спрашивает логин, проверяет его на верность, в случае если логин верен, просит
  134. // ввести пароль и проверяет его. В случае несовпадения логина или пароля выводить alert с текстом ошибки.
  135. // В случае успешного логина - alert с поздравлением. Правильные логин: admin и пароль: qwerty. Используйте
  136. // вложенные if и else.
  137. const correctData = {
  138. login: 'admin',
  139. password: 'qwerty',
  140. }
  141. let login = prompt('Enter your login');
  142. if (login === correctData.login) {
  143. let password = prompt('Enter your password');
  144. if (password === correctData.password) {
  145. alert('Congratulations! You entered correct login and password');
  146. } else {
  147. alert('Error! You entered wrong password');
  148. }
  149. } else {
  150. alert('You entered wrong login');
  151. }
  152. } else if (homework == 'currency exchange') {
  153. // Currency exchange
  154. // Попросите пользователя ввести валюту (например, usd, eur, другие валюты добавить по вкусу)
  155. // с помощью prompt.
  156. // Также поинтересуйтесь купить или продать он желает (используйте confirm).
  157. // С помощью нескольких if и тернарного оператора внутри каждого из if задайте переменную rate,
  158. // определяющую курс конкретной валюты на покупку или продажу. Обратите внимание на место объявления
  159. // переменной rate - она должна быть доступна в коде после всех этих if.
  160. // Попросите пользователя ввести сумму на обмен
  161. // Посчитайте и выведите результат путем умножения или деления на rate
  162. // Дайте возможность пользователю вводить названия валют в любом регистре (UsD, eUR). Для этого в if
  163. // используйте toUpperCase (или toLowerCase)
  164. let rate;
  165. let selectedCurrency = prompt('Enter the desired currency from the following: USD, EUR, PLN')?.trim();
  166. let isPurchase = confirm('Do you want to purchase the currency? If you want to sell, choose "cancel"');
  167. if (selectedCurrency.toLowerCase() == 'usd') {
  168. rate = isPurchase ? 40.37 : 40.25;
  169. } else if (selectedCurrency.toLowerCase() == 'eur') {
  170. rate = isPurchase ? 39.20 : 38.90;
  171. } else if (selectedCurrency.toLowerCase() == 'pln') {
  172. rate = isPurchase ? 8.36 : 8.16;
  173. }
  174. let amountInForeignCurrency = +prompt('Enter amount which you want to exchange');
  175. let amountInHryvnia = amountInForeignCurrency * rate;
  176. alert((isPurchase ? 'You need to sell ' : 'You will get ') + amountInHryvnia + ' hryvnia');
  177. } else if (homework == 'scissors') {
  178. // Scissors
  179. // Сделайте игру "камень-ножницы-бумага". Пользователь вводит свой вариант через prompt, программа
  180. // генерирует свой вариант через Math.random() и выводит через alert. Следующий alert выводит имя победителя
  181. // или "ничья"
  182. let userChoice = prompt('Choose: rock/paper/scissors')?.trim().toLowerCase();
  183. let randomNumber = Math.floor(Math.random() * 3) + 1;
  184. let computerChoice;
  185. if (randomNumber == 1) {
  186. computerChoice = 'rock';
  187. } else if (randomNumber == 2) {
  188. computerChoice = 'scissors';
  189. } else if (randomNumber == 3) {
  190. computerChoice = 'paper';
  191. }
  192. alert('Computer\'s choice is ' + computerChoice);
  193. const isUserWon = userChoice == 'rock' && computerChoice == 'scissors'
  194. || userChoice == 'scissors' && computerChoice == 'paper' || userChoice == 'paper' && computerChoice == 'rock';
  195. const isDraw = userChoice == computerChoice;
  196. if (isUserWon) {
  197. alert('Congratulations! You won');
  198. } else if (isDraw) {
  199. alert('Draw');
  200. } else {
  201. alert('You are loser');
  202. }
  203. }