Добрый вечер. Подскажите, пожалуйста, я новичок и пытаюсь написать алгоритм преобразования арабских чисел в римские. Единственное, что пришло в голову: преобразовать последовательно тысячи, сотни, десятки и единицы (подразумевается, что больше четырехзначных чисел не будет). Реализовал следующим образом:
function convertToRoman(num) {
var romNum = '';
var numLength = num + '';
while (num !== 0) {
if (numLength.length == 4) {
romNum += 'M' * (num / 1000);
num = num % 1000;
} else if (numLength.length == 3) {
if ((num / 500) == 1) {
romNum += 'D';
num = num - 500;
} else {
romNum += 'C' * (num / 100);
num = num % 100;
}
} else if (numLength.length == 2) {
if ((num / 50) == 1) {
romNum += 'L';
num = num - 50;
} else {
romNum += 'X' * (num / 10);
num = num % 10;
}
} else {
if ((num / 5) == 1) {
romNum += 'V';
num = num - 5;
} else {
romNum += 'I' * num;
num = 0;
}
}
}
return romNum;
}
convertToRoman(36);
Но, код не работает, цикл почему-то получается бесконечным. Помогите, пожалуйста, понять почему?
Вы забыли вызвать функцию guessingНужно добавить строчку
Подскажите пожалуйста, есть ли библиотека подобная Cheerio только что бы работала на клиенте?
В функцию на обработку поступает текст, к примеру вот такой: