Арифметические, логические операторы, операторы сравнения в JavaScript.
Цель работы
Изучить возможности ввода и вывода данных; особенности использования арифметических, логических операторов, операторов сравнения, операторов условного перехода.
Задания
Задание 1
Опробовать работу с модальными окнами alert, prompt, confirm. Разработать свой диалог с использованием этих команд. Пример
диалога:
1) вывести приветствие в окне alert “Вас приветствует учебный центр”;
2) затем в окне prompt вывести сообщение «Введите имя», а в окне alert вывести сообщение «Добро пожаловать на наши курсы, имя»;
3) в окне confirm вывести сообщение "Хотите стать Web-дизайнером?" с альтернативными ответами в окнах alert, если true, то "Учите стили CSS и JavaScript!", если false то "Упускаете время!".
1) вывести приветствие в окне alert “Вас приветствует учебный центр”;
2) затем в окне prompt вывести сообщение «Введите имя», а в окне alert вывести сообщение «Добро пожаловать на наши курсы, имя»;
3) в окне confirm вывести сообщение "Хотите стать Web-дизайнером?" с альтернативными ответами в окнах alert, если true, то "Учите стили CSS и JavaScript!", если false то "Упускаете время!".
Решение
Java Script
alert("Вас приветствует учебный центр")
alert ("Добро пожаловать на наши курсы, " + (prompt ('Введите имя', 'Имя') || 'Имя'))
let answer = confirm("Хотите стать Web-дизайнером?")
if(answer)
alert("Учите стили CSS и JavaScript!")
else
alert("Упускаете время!")
Задание 2
Использование оператора + с числовыми и строковыми переменными.
1) Сложить два любых числа (например, 10 и 5). Результат вывести на страницу;
2) Сложить две строки (например, “10” и “5”). Результат вывести на страницу;
3) Сложить число и строку (например, 22 и “5”). Результат вывести на страницу;
4) Сложить строку и число (например, “22” и 5). Результат вывести на страницу;
5) Вывод – "Результатом сложения строки и числа всегда будет … " – вывести в окно.
1) Сложить два любых числа (например, 10 и 5). Результат вывести на страницу;
2) Сложить две строки (например, “10” и “5”). Результат вывести на страницу;
3) Сложить число и строку (например, 22 и “5”). Результат вывести на страницу;
4) Сложить строку и число (например, “22” и 5). Результат вывести на страницу;
5) Вывод – "Результатом сложения строки и числа всегда будет … " – вывести в окно.
Решение
Java Script
document.write("1) 10 + 5 = " + (10 + 5))
document.write("2) '10' + '5' = " + ("10" + "5"))
document.write("3) 22 + '5' = " + (22 + "5"))
document.write("4) '22' + 5 = " + ("22" + 5))
document.write("Вывод: результатом сложения строки и числа всегда будет строка.")
Задание 3
Найти значение 2-х любых арифметических выражений, записанных на JS с использованием арифметических операций, например: (35y-25x)/5+232 и (8*y/x+5*x/y – 43)*6
Значения x и y задать произвольно, но подобрать такие, чтоб значение одного выражения было намного больше второго. Найти остаток от деления значения одного выражения на значение другого. Вывести результаты на страницу, а также в отдельное окно.
Значения x и y задать произвольно, но подобрать такие, чтоб значение одного выражения было намного больше второго. Найти остаток от деления значения одного выражения на значение другого. Вывести результаты на страницу, а также в отдельное окно.
Решение
Java Script
let x = 1, y = 12
let firstExpr = ((35*y) - (25*x) / (5 + 232))
let secondExpr = ((8*y / x) + (5*x / y) - 43)*6
let result = Math.round(secondExpr) % Math.round(firstExpr)
alert("Результат первого выражения равен " + Math.round(firstExpr))
alert("Результат второго выражения равен " + Math.round(secondExpr))
alert("Остаток от деления второго выражения на первое равен " + result)
document.write("Результат первого выражения " + Math.round(firstExpr))
document.write("Результат второго выражения " + Math.round(secondExpr))
document.write("Остаток от деления второго выражения на первое " + result)
Задание 4
Продемонстрировать использование операторов сравнения (==, !=, >, >=, <, <=) и логических операторов (!, &&, ||).
Введите любое число. Если оно меньше 20 или больше 40 и не равно 15 и делится без остатка на 5, то вывести сообщение «Правильное начение», иначе «Не правильное значение».
Придумайте свой пример с логическими операторами.
Придумайте свой пример с логическими операторами.
Решение
Java Script
let x = prompt('Введите число: ', '0')
if(x) {
if(((x < 20) || (x > 40)) && ((x % 5) == 0) && (x != 15))
alert("Правильное значение")
else
alert("Не правильное значение")
}
else
alert("В поле необходимо что-то ввести!")
let y = prompt('Введите число, квадрат которого больше 144: ', '0')
if(y) {
if((y * y) > 144)
alert("Правильно " + (y * y) + " > 144")
else
alert("Не правильно " + (y * y) + " <= 144")
}
else
alert("В поле необходимо что-то ввести!")
Задание 5
Конструкция if..elseif..else.
Ввести 2 числа с клавиатуры. Сравнить их и вывести сообщение на страницу, например “А больше Б”, используя конструкцию if..elseif..else.
Написать свой пример с использованием альтернативного синтаксиса конструкции if..else -
(условие) ? команды1 : команды2.
Ввести 2 числа с клавиатуры. Сравнить их и вывести сообщение на страницу, например “А больше Б”, используя конструкцию if..elseif..else.
Написать свой пример с использованием альтернативного синтаксиса конструкции if..else -
(условие) ? команды1 : команды2.
Решение
Java Script
let x = prompt('Введите первое число: ', '0')
let y = prompt('Введите второе число: ', '0')
// чтобы все правильно работало
// преобразуем полученные строки в числа
x = Number.parseInt(x)
y = Number.parseInt(y)
if(x > y)
alert(x + " > " + y)
else if(x < y)
alert(x + " < " + y)
else
alert(x + " = " + y)
let mark = prompt('Что вы получили за экзамен по ОИТ?', '0')
mark = Number.parseInt(mark);
(mark < 1 || mark > 10) ? alert("Введите корректную оценку!") : ( (mark > 3) ? alert("Поздравляю, у Вас зачет!") : alert("К сожалению, у Вас незачёт!"))
Задание 6
Определить, какой сегодня день недели (использовать конструкцию switch case).
Решение
Java Script
let answer = +prompt('Какой сегодня день:', '1')
let currentDay = answer % 7
switch(currentDay){
case 1: alert("Понедельник"); break
case 2: alert("Вторник"); break
case 3: alert("Среда"); break
case 4: alert("Четверг"); break
case 5: alert("Пятница"); break
case 6: alert("Суббота"); break
case 0: alert("Воскресенье"); break
default: alert("Некорректный день!"); break
}
Задание 7*
Придумать пример, демонстрирующий обработку исключений с использованием конструкции try … catch.
Решение
Java Script
alert("Эта программа покажет работу конструкции try...catch!")
const x = 12
alert("Определим константную переменную 'x' = " + x)
let y = (x*x + 2) / (12 - 1) * 5 * x
alert("Рассчитаем значение данного выражения:"
+ "\n(x^2 + 2) / (12 - 1) * 5 * x = " + Math.round(y))
alert("Попробуем присвоить 'x' другое значение и пересчитать выражение.")
try {
x = 131 // ошибка
// последующие строчки в этом блоке не сработают
// потому что пытаясь переопределить константу
// мы получим ошибку и программа дальше не будет выполняться
alert("x = " + x)
y = (x*x + 2) / (12 - 1)*5*x
alert("(x^2 + 2) / (12 - 1)*5*x = " + Math.round(y))
}
catch (error) {
alert("Попытались переопределить константу, тем самым вызвав ошибку.\n"
+ "Текст ошибки -> " + error)
}
finally{
alert("Вывод: каждый раз, когда мы будем переопределять константу, "
+ "программа будет выдавать ошибку и прекращать свое выполнение, будьте осторожнее!")
}