Browse Source

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

master
Krio 4 years ago
parent
commit
a3fa55d67d
  1. 15
      labs/lab10/desc.json
  2. 12
      labs/lab10/main.js

15
labs/lab10/desc.json

@ -1,14 +1,21 @@
{ {
"number": 10, "number": 10,
"task": "", "task": "Создайте функцию, которая принимает положительное целое число (одно из base2, base8 или base16), преобразует целое число в заданное основание и возвращает строку с использованием рекурсии.",
"vars": [ "vars": [
[ [
{ {
"name": "", "name": "n",
"desc": "", "desc": "Число в двоичной системе",
"data": "" "data": ""
} }
],
[
{
"name": "n",
"desc": "Число в двоичной системе",
"data": "999"
}
] ]
], ],
"complete": false "complete": true
} }

12
labs/lab10/main.js

@ -3,5 +3,15 @@
function main(formName) { function main(formName) {
let result = document.getElementById("result"); let result = document.getElementById("result");
result.textContent = "Результат: неопределенно"; let n = document.forms[formName].elements[0].value;
if ( !/^[01]+$/.test(n) ) {
result.textContent = "Ошибка: n должно содежать только нули и единицы!";
return;
}
result.textContent = "Результат: " + binToDecimal(Number(n));
} }
function binToDecimal(n) {
return n == 0 ? 0 : n % 10 + 2 * binToDecimal(Math.trunc(n / 10));
}
Loading…
Cancel
Save