# Блок заданий "Задание, Java Script, Node JS:" (3) 3. На javascript, без использования математических функций, проверить, является ли целое число квадратом. Входным параметром у нас является целое число. Поскольку javascript является языком с динамической типизацией данных нам для начала надо реализовать проверку входных данных: для этого необходимо написать соответствующую функцию: ```javascript function isInt (value) { // Функция проверки целочисленного типа if (typeof(value) == 'number') { return parseInt(value) == value; } else { return false; } } ``` Далее, мы применяем проверку уже в нашей основной функции и в случае провала проверки выдаём ошибку. Алгоритм проверки заключается в следующем: мы перебираем все квадраты в цикле, пока следующий квадрат не будет либо больше, либо равен нашему входному параметру. Если квадрат в цикле равен входному параметру, то возвращаем true (является квадратом), если он больше входного параметра, то false (не является квадратом). ```javascript function isSqrt (value) { if (isInt(value)) { // Проверим тип let counter = 1; while (counter * counter <= value) { if (counter * counter == value) { return true; } counter++; } return false; } else { throw new Error("Wrong type of first argument: required integer"); } } ```