JavaScript · Синтаксис · Початковий рівень
Умовні оператори
Практичні вправи з умовними операторами JavaScript: порівняння чисел, перевірка діапазонів, робота з строками, паролями, відсотками та базовою логікою if, else if, else.
Короткий вступ до теми та пояснення перед вправами (вправи нижче):
Порівняння значень і комбінування умов
#Поширені патерни з умовами
#Вправи:
Перевірка знака числа.
#Напишіть програму, яка приймає число та виводить, додатне воно, від’ємне чи дорівнює нулю.
let number = 5;
Рішення
let number = 5;
if (number > 0) {
console.log("Число додатне");
} else if (number < 0) {
console.log("Число від’ємне");
} else {
console.log("Число дорівнює нулю");
}
// або так можна: спочатку підготувати повідомлення, а потім один раз вивести його
let number = 5;
let result;
if (number > 0) {
result = "Число додатне";
} else if (number < 0) {
result = "Число від’ємне";
} else {
result = "Число дорівнює нулю";
}
console.log(result);
Вікова категорія.
#Програма приймає вік користувача та виводить: "Дитина" (до 12), "Підліток" (13–17), "Дорослий" (18 і старше).
let age = 16;
Рішення
let age = 16;
if (age <= 12) {
console.log("Дитина");
} else if (age <= 17) {
console.log("Підліток");
} else {
console.log("Дорослий");
}
// другий варіант: межі можна записати явно
let age = 14;
if (age < 13) {
console.log("Дитина");
} else if (age >= 13 && age <= 17) {
console.log("Підліток");
} else {
console.log("Дорослий");
}
Більше з двох чисел.
#Користувач вводить два числа. Виведіть більше з них. Якщо вони рівні — виведіть повідомлення "Числа рівні".
let a = 10; let b = 7;
Рішення
let a = 10;
let b = 7;
if (a > b) {
console.log("Більше число:", a);
} else if (b > a) {
console.log("Більше число:", b);
} else {
console.log("Числа рівні");
}
// або так можна, через змінну result
let a = 10;
let b = 5;
let result;
if (a === b) {
result = "Числа рівні";
} else if (a > b) {
result = `Більше число: ${a}`;
} else {
result = `Більше число: ${b}`;
}
console.log(result);
Температура: холодно, тепло, спекотно.
#Програма приймає температуру та виводить: "Холодно" (менше 10), "Тепло" (10–24), "Спекотно" (25 і більше).
let temp = 20;
Рішення
let temp = 20;
if (temp < 10) {
console.log("Холодно");
} else if (temp <= 24) {
console.log("Тепло");
} else {
console.log("Спекотно");
}
Перевірка парності числа.
#Користувач вводить число. Перевірте, чи є воно парним.
let num = 5;
Рішення
let num = 5;
if (num % 2 === 0) {
console.log("Число парне");
} else {
console.log("Число непарне");
}
// або так можна: зберегти перевірку в окрему змінну
let num = 8;
let isEven = num % 2 === 0;
if (isEven) {
console.log("Число парне");
} else {
console.log("Число непарне");
}
Перевірка довжини пароля.
#Користувач вводить пароль. Якщо довжина пароля менша за 6 символів — виведіть "Пароль занадто короткий", інакше — "Пароль прийнято".
let password = "javascript";
Рішення
let password = "javascript";
if (password.length < 6) {
console.log("Пароль занадто короткий");
} else {
console.log("Пароль прийнято");
}
Оцінка за шкалою A-F.
#Користувач вводить оцінку від 0 до 100. Виведіть: A (90–100), B (80–89), C (70–79), D (60–69), F (менше 60).
let score = 85;
Рішення
let score = 85;
if (score >= 90) {
console.log("A");
} else if (score >= 80) {
console.log("B");
} else if (score >= 70) {
console.log("C");
} else if (score >= 60) {
console.log("D");
} else {
console.log("F");
}
// або так можна: йти від менших меж до більших
let score = 85;
if (score < 60) {
console.log("F");
} else if (score < 70) {
console.log("D");
} else if (score < 80) {
console.log("C");
} else if (score < 90) {
console.log("B");
} else {
console.log("A");
}
Кратність двох чисел.
#Користувач вводить два числа. Перевірте, чи кратне перше число другому.
let a = 10; let b = 7;
Рішення
let a = 10;
let b = 7;
if (b === 0) {
console.log("На нуль ділити не можна");
} else if (a % b === 0) {
console.log("Перше число кратне другому");
} else {
console.log("Перше число не кратне другому");
}
Округлення в діапазоні 0-100.
#Користувач вводить число. Якщо воно більше 100 або менше 0 — виведіть "Тільки від 0 до 100", інакше округліть його до 2 знаків після крапки.
let num = 5;
Рішення
let num = 5;
if ((num < 0) || (num > 100)) {
console.log("Тільки від 0 до 100");
} else {
console.log(Number(num.toFixed(2)));
}
// або так можна: перевірку діапазону зберегти у змінну
let num = 42.678;
let inRange = num >= 0 && num <= 100;
if (inRange) {
console.log(Number(num.toFixed(2)));
} else {
console.log("Тільки від 0 до 100");
}
Довгий чи короткий рядок.
#Користувач вводить рядок. Якщо довжина рядка більша за 10 символів — виведіть "Довгий рядок", інакше — "Короткий рядок".
let text = "JavaScript course";
Рішення
let text = "JavaScript course";
if (text.length > 10) {
console.log("Довгий рядок");
} else {
console.log("Короткий рядок");
}
// або так можна через змінну message
let text = "JavaScript";
let message;
if (text.length > 10) {
message = "Довгий рядок";
} else {
message = "Короткий рядок";
}
console.log(message);
Відсоток від числа.
#Користувач вводить a і b. Порахуйте скільки відсотків a від b. Формула відсотків: (a/b)*100.
let a = 10; let b = 7;
Рішення
let a = 10;
let b = 7;
if (b === 0) {
console.log("На нуль ділити не можна! І частини від 0 немає.");
} else {
let result = a / b * 100;
result = Number(result.toFixed(2));
console.log(String(result) + "%");
}
Округлення до потрібного знака.
#Користувач вводить число, наприклад 5.2564494 і вводить до якого знака після коми (крапки) його округлити. Зробіть обчислення.
let num = 5; let rounding = 2;
Рішення
let num = 5;
let rounding = 2;
if (rounding < 0) {
console.log("Значення для кількості знаків після крапки не може бути меншим за 0.");
} else {
console.log(Number(num.toFixed(rounding)));
}
Перетворення рядка в number.
#Користувач вводить число рядком. Перевірте, чи є в рядку крапка, і в будь-якому випадку перетворіть значення в тип number за допомогою Number().
let num = "";
Рішення
let num = "5.25";
if (num.includes(".")) {
console.log("У рядку є крапка");
} else {
console.log("Крапки немає");
}
num = Number(num);
console.log(num);
Ділення без помилки нуля.
#Потрібно поділити a на b. Якщо b дорівнює 0, то виведіть повідомлення, що на 0 ділити не можна. А якщо все ОК, то порахуйте!
let a = 10; let b = 7;
Рішення
let a = 10;
let b = 7;
if (b === 0) {
console.log("На нуль ділити не можна! Навіть якщо дуже хочеться!");
} else {
console.log("Результат:", a / b);
}
Анкета імені та прізвища.
#Користувач вводить Ім’я і потім окремо Прізвище. Давайте спробуємо зробити так, щоб якщо він введе все правильно, то ми об’єднаємо його Ім’я та Прізвище в один рядок (як один новий об’єкт) і виведемо в термінал. А якщо він помилиться і введе в поле "Ім’я" анкети одразу і своє Ім’я і Прізвище, то ми виведемо повідомлення, що: "Уважно заповнюйте анкету!! Це був останній бланк ахахах)))" і програма завершиться. Підказки: 1) Там буде пробіл у рядку, якщо він введе все одразу. 2) Спочатку перевіряйте помилковий варіант, так буде простіше і правильніше.
let name = "Alex"; let last_name = "Smith";
Рішення
let name = "Alex";
let lastName = "Smith";
if (name.includes(" ")) {
console.log("Уважно заповнюйте анкету!! Це був останній бланк ахахах)))");
} else {
let fullName = name + " " + lastName;
console.log(fullName);
}