Browse Source

Добавлена работа 5

master
Krio 4 years ago
parent
commit
6d36dde1d9
  1. 28
      labs/lab5/desc.json
  2. 31
      labs/lab5/main.js

28
labs/lab5/desc.json

@ -0,0 +1,28 @@
{
"number": "5",
"task": "Повторяющийся квадратный корень из числа - это количество раз, которое необходимо применить к функции извлечения квадратного корня, чтобы число было строго меньше 2. Для заданного целого числа вернуть повторяющийся квадратный корень. Вернуть «недействительно», если оно отрицательное.",
"vars": [
[
{
"name": "n",
"desc": "Исходное число",
"data": ""
}
],
[
{
"name": "n",
"desc": "Исходное число",
"data": "8"
}
],
[
{
"name": "n",
"desc": "Исходное число",
"data": "-5"
}
]
],
"complete": true
}

31
labs/lab5/main.js

@ -0,0 +1,31 @@
"use strict";
function main(formName) {
let result = document.getElementById("result");
let n = document.forms[formName].elements[0].value;
if (isNotNumber(n)) {
result.textContent = "Ошибка: n не является числом!";
return;
}
result.textContent = "Результат: " + countRoots(n);
}
function countRoots(n) {
if (n < 0) {
return undefined;
}
let result = 0;
while (n >= 2) {
n = Math.sqrt(n);
result++;
}
return result;
}
function isNotNumber(val) {
return val.replace(/\s/g, '').length === 0 || isNaN(val);
}
Loading…
Cancel
Save