Задания
1) Создайте функцию, которая принимает в себя целое число минут и возвращает время в нужном формате строки. (Смотри пример). Обратите внимание на окончание слова "
час" - оно меняется в зависимости от цифры. Если вместо аргумента приходит не число, дробное или отрицательное число - функция возвращает строку "
Ошибка, проверьте данные"
Внимание! Давайте пока ограничимся максимум 600 минутами (10 часов). Так как проверки на большие числа будут раздувать код (33 часа, 31 час, 11 часов и тд).
Пример:
getTimeFromMinutes(150) => "Это 2 часа и 30 минут"
getTimeFromMinutes(50) => "Это 0 часов и 50 минут"
getTimeFromMinutes(0) => "Это 0 часов и 0 минут"
getTimeFromMinutes(-150) => "Ошибка, проверьте данные"
2) Напишите функцию, которая принимает в себя 4 числа и возвращает самое большее из них. Если один из аргументов не является числом или их меньше 4 - возвращается 0. Дробные числа разрешены.
Пример:
findMaxNumber(1, 5, 6.6, 11); => 11
findMaxNumber(1, 5, '6', '10'); => 0
Код
// Место для первой задачи
function getTimeFromMinutes() {
}
// Место для второй задачи
function findMaxNumber() {
}
Решения
1 задача:
Код
function getTimeFromMinutes(time) {
let hours = '';
if (time < 0 || typeof time !== 'number' || !Number.isInteger(time)) {
return 'Ошибка, проверьте данные';
}
if (time >= 60 && time < 120) {
hours += 'час';
} else if (time >= 120 && time < 300) {
hours += 'часа';
} else if (time < 60 || time >= 300 && time <= 600) {
hours += 'часов';
}
return `Это ${Math.floor(time/60)} ${hours} и ${time%60} минут`;
}
getTimeFromMinutes(150); // Это 2 часа и 30 минут
2 задача:
Код
function findMaxNumber(a, b, c, d) {
if (
typeof a !== "number" ||
typeof b !== "number" ||
typeof c !== "number" ||
typeof d !== "number" ||
arguments.length < 4
) {
return 0;
}
return Math.max(a, b, c, d);
}
findMaxNumber(1.5, 5, 6.6, 11); // 11
Всего комментариев: 2