HW2.js 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. // assign: evaluation
  2. // Исследуйте код, найдите выражения в нём.Расставьте скобки так, что бы код не изменил своего поведения(работал так же как и сейчас).Объясните как и в каком порядке вычисляются выражения и подвыражения.
  3. let a = 5; // не выражение; присваивание значения 5 переменной a
  4. let b, c; // не выражение; объявление переменных b,c
  5. (b = (a * 5)); // выражение; умножение переменной a на 5, после этого происходит присваивание результата переменной b
  6. (b = (c = (b / 2))); // выражение; происходит вычисление значения b/2, после этого полученный результат присваивается переменной c, после этого переменной b присваивается значение переменной c
  7. // Number: age:
  8. // С помощью prompt спросить у пользователя его возраст и подсчитать год рождения.Год рождения вывести с помощью alert.
  9. const age = +prompt('Укажите в поле, сколько вам полных лет (цифрами):', 'лет')
  10. const currentYear = 2022
  11. const bornYear = 2022 - age
  12. const bornYearAlert = 'Вы родились в ' + bornYear + ' году'
  13. alert(bornYearAlert)
  14. // Number: temperature
  15. // С помощью prompt спросить у пользователя температуру в градусах Цельсия и перевести их в Фаренгейты и / или наоборот.
  16. const yourTemperature = +prompt('Укажите любое значение температуры (цифрами)')
  17. const unitTemperature = prompt('Введите единицу измерения: Цельсий/Фаренгейт')
  18. let k
  19. if (unitTemperature === 'Цельсий') {
  20. k = 0
  21. } else if (unitTemperature === 'Фаренгейт') {
  22. k = 1
  23. } else {
  24. alert('Вы ввели неправильну единицу измерения. Перепроверьте написание!')
  25. }
  26. const yourTemperatureConvertKelvin = (1.8 * yourTemperature * (k + 1) + 32).toFixed(2)
  27. const yourTemperatureConvertCelsiy = ((yourTemperature - 32) / 1.8 * k).toFixed(2)
  28. const yourTemperatureConvertKelvinAlert = 'Указанная Вами температура соответствует: ' + yourTemperatureConvertKelvin + ' в градусах Фаренгейта'
  29. const yourTemperatureConvertCelsiyAlert = 'Указанная Вами температура соответствует: ' + yourTemperatureConvertCelsiy + ' в градусах Цельсия'
  30. if (unitTemperature === 'Цельсий') {
  31. alert(yourTemperatureConvertKelvinAlert)
  32. } else if (unitTemperature === 'Фаренгейт') {
  33. alert(yourTemperatureConvertCelsiyAlert)
  34. } else { location.reload() }
  35. // Number: divide
  36. // Сделайте калькулятор для расчета деления нацело двух чисел.Используйте Math.floor или альтернативы.
  37. const numOne = +prompt('Введите первое число (делимое):')
  38. const numTwo = +prompt('Введите второе число (делитель):')
  39. const division = Math.floor(numOne / numTwo)
  40. const rest = numOne % numTwo
  41. alert('При делениии ' + numOne + ' на ' + numTwo + ' нацело получаем ' + division + ' (и в остаче: ' + rest + ')')
  42. // Number: currency
  43. // Напишите код, который вычисляет обмен валют по курсу, заданному с помощью константы const rate = КУРС ВАЛЮТЫ Считайте значение в одной валюте с помощью prompt, после чего умножите/поделите это число на rate. Выведите результат используя alert. Ограничьте количество знаков после запятой двумя (нас не волнуют дробные части центов/копеек)
  44. const rate = 36.5686 //uah/usd
  45. const rateEuro = 36.0804 //uah/euro
  46. const currency = prompt('Какую валюту хотите обменять на гривну?', 'USD/EURO')
  47. let n
  48. if (currency === 'USD') {
  49. n = rate
  50. } else if (currency === 'EURO') {
  51. n = rateEuro
  52. } else {
  53. alert('Другие валюты не меняем')
  54. }
  55. const summ = +prompt('Введите cумму для обмена')
  56. const changed = (summ * n).toFixed(2)
  57. if (currency === 'USD') {
  58. alert('Курс обмена ' + rate + ' грн/доллар')
  59. alert('Вы получите ' + changed + ' гривен')
  60. } else if (currency === 'EURO') {
  61. alert('Курс обмена ' + rateEuro + ' грн/евро')
  62. alert('Вы получите ' + changed + ' гривен')
  63. } else {
  64. alert('Другие валюты не меняем')
  65. }
  66. // Number: RGB
  67. // С помощью prompt организуйте ввод трех констант red, green, blue в десятичной системе.Создайте из них CSS - цвет в формате #RRGGBB используя шестнадцатиричную систему счисления.Значения меньше 16ти пока можно не учитывать.
  68. const red = +prompt('Введите целое число 16 ... 255 для красного цвета')
  69. const green = +prompt('Введите целое число 16 ... 255 для зеленого цвета')
  70. const blue = +prompt('Введите целое число 16 ... 255 для синего цвета')
  71. const cssColor = alert('Указанный Вами цвет для CSS: #' + red.toString(16).toUpperCase() + green.toString(16).toUpperCase() + blue.toString(16).toUpperCase())
  72. // Number: flats
  73. // Сделайте калькулятор, который позволит вам исходя из информации о количества этажей в доме и количества квартир на этаже находить подъезд и этаж определенной квартиры по её номеру.Например для 9этажного дома по 4 квартиры на этаж 81 квартира находится на 3м этаже третьего подъезда.
  74. const numberOfFloor = +prompt('Введите количество этажей в доме:')
  75. const numberOfFlat = +prompt('Введите количество квартир на этаже:')
  76. const flatNumber = +prompt('Введите номер квартиры, которую нунжно найти:')
  77. const searchingPadik = Math.ceil(flatNumber / (numberOfFloor * numberOfFlat))
  78. const searchingFloor = Math.ceil(flatNumber / numberOfFlat - numberOfFloor * (searchingPadik - 1))
  79. // const searchingFloor = Math.ceil(flatNumber % (numberOfFloor * numberOfFlat) / numberOfFlat) //альтернативній вариант поиска этажа через остаток от деления
  80. alert('Искомая квартира находится в ' + searchingPadik + ' подъезде на ' + searchingFloor + ' этаже')